| 1 | /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |
| 2 | |* *| |
| 3 | |* Global Instruction Selector for the X86 target *| |
| 4 | |* *| |
| 5 | |* Automatically generated file, do not edit! *| |
| 6 | |* *| |
| 7 | \*===----------------------------------------------------------------------===*/ |
| 8 | |
| 9 | #ifdef GET_GLOBALISEL_PREDICATE_BITSET |
| 10 | const unsigned MAX_SUBTARGET_PREDICATES = 152; |
| 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(X86InstructionSelector::*ComplexMatcherMemFn)(MachineOperand &) const; |
| 17 | typedef void(X86InstructionSelector::*CustomRendererFn)(MachineInstrBuilder &, const MachineInstr &, int) const; |
| 18 | const ExecInfoTy<PredicateBitset, ComplexMatcherMemFn, CustomRendererFn> ExecInfo; |
| 19 | static X86InstructionSelector::ComplexMatcherMemFn ComplexPredicateFns[]; |
| 20 | static X86InstructionSelector::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(1), |
| 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_s1, |
| 40 | GILLT_s8, |
| 41 | GILLT_s16, |
| 42 | GILLT_s32, |
| 43 | GILLT_s64, |
| 44 | GILLT_s80, |
| 45 | GILLT_s128, |
| 46 | GILLT_v2s1, |
| 47 | GILLT_v2s64, |
| 48 | GILLT_v4s1, |
| 49 | GILLT_v4s32, |
| 50 | GILLT_v4s64, |
| 51 | GILLT_v8s1, |
| 52 | GILLT_v8s16, |
| 53 | GILLT_v8s32, |
| 54 | GILLT_v8s64, |
| 55 | GILLT_v16s1, |
| 56 | GILLT_v16s8, |
| 57 | GILLT_v16s16, |
| 58 | GILLT_v16s32, |
| 59 | GILLT_v32s1, |
| 60 | GILLT_v32s8, |
| 61 | GILLT_v32s16, |
| 62 | GILLT_v64s1, |
| 63 | GILLT_v64s8, |
| 64 | }; |
| 65 | const static size_t NumTypeObjects = 25; |
| 66 | const static LLT TypeObjects[] = { |
| 67 | LLT::scalar(1), |
| 68 | LLT::scalar(8), |
| 69 | LLT::scalar(16), |
| 70 | LLT::scalar(32), |
| 71 | LLT::scalar(64), |
| 72 | LLT::scalar(80), |
| 73 | LLT::scalar(128), |
| 74 | LLT::vector(ElementCount::getFixed(2), 1), |
| 75 | LLT::vector(ElementCount::getFixed(2), 64), |
| 76 | LLT::vector(ElementCount::getFixed(4), 1), |
| 77 | LLT::vector(ElementCount::getFixed(4), 32), |
| 78 | LLT::vector(ElementCount::getFixed(4), 64), |
| 79 | LLT::vector(ElementCount::getFixed(8), 1), |
| 80 | LLT::vector(ElementCount::getFixed(8), 16), |
| 81 | LLT::vector(ElementCount::getFixed(8), 32), |
| 82 | LLT::vector(ElementCount::getFixed(8), 64), |
| 83 | LLT::vector(ElementCount::getFixed(16), 1), |
| 84 | LLT::vector(ElementCount::getFixed(16), 8), |
| 85 | LLT::vector(ElementCount::getFixed(16), 16), |
| 86 | LLT::vector(ElementCount::getFixed(16), 32), |
| 87 | LLT::vector(ElementCount::getFixed(32), 1), |
| 88 | LLT::vector(ElementCount::getFixed(32), 8), |
| 89 | LLT::vector(ElementCount::getFixed(32), 16), |
| 90 | LLT::vector(ElementCount::getFixed(64), 1), |
| 91 | LLT::vector(ElementCount::getFixed(64), 8), |
| 92 | }; |
| 93 | |
| 94 | // Bits for subtarget features that participate in instruction matching. |
| 95 | enum SubtargetFeatureBits : uint8_t { |
| 96 | Feature_TruePredicateBit = 63, |
| 97 | Feature_HasEGPRBit = 5, |
| 98 | Feature_NoEGPRBit = 4, |
| 99 | Feature_HasNDDBit = 6, |
| 100 | Feature_NoNDDBit = 27, |
| 101 | Feature_HasZUBit = 151, |
| 102 | Feature_HasCFBit = 30, |
| 103 | Feature_HasCMOVBit = 29, |
| 104 | Feature_NoCMOVBit = 137, |
| 105 | Feature_HasMMXBit = 109, |
| 106 | Feature_HasSSE1Bit = 49, |
| 107 | Feature_UseSSE1Bit = 56, |
| 108 | Feature_HasSSE2Bit = 48, |
| 109 | Feature_UseSSE2Bit = 57, |
| 110 | Feature_HasSSE3Bit = 40, |
| 111 | Feature_UseSSE3Bit = 66, |
| 112 | Feature_HasSSSE3Bit = 110, |
| 113 | Feature_UseSSSE3Bit = 67, |
| 114 | Feature_UseSSE41Bit = 64, |
| 115 | Feature_UseSSE42Bit = 71, |
| 116 | Feature_HasSSE4ABit = 81, |
| 117 | Feature_NoAVXBit = 77, |
| 118 | Feature_HasAVXBit = 58, |
| 119 | Feature_HasAVX2Bit = 52, |
| 120 | Feature_HasAVX1OnlyBit = 50, |
| 121 | Feature_HasEVEX512Bit = 144, |
| 122 | Feature_HasAVX10_2Bit = 108, |
| 123 | Feature_HasAVX10_2_512Bit = 107, |
| 124 | Feature_NoAVX10_2Bit = 70, |
| 125 | Feature_HasAVX512Bit = 94, |
| 126 | Feature_UseAVXBit = 54, |
| 127 | Feature_NoAVX512Bit = 45, |
| 128 | Feature_HasCDIBit = 98, |
| 129 | Feature_HasVPOPCNTDQBit = 102, |
| 130 | Feature_HasDQIBit = 96, |
| 131 | Feature_NoDQIBit = 68, |
| 132 | Feature_HasBWIBit = 97, |
| 133 | Feature_NoBWIBit = 65, |
| 134 | Feature_HasVLXBit = 95, |
| 135 | Feature_NoVLXBit = 44, |
| 136 | Feature_NoVLX_Or_NoBWIBit = 62, |
| 137 | Feature_HasVNNIBit = 104, |
| 138 | Feature_HasVP2INTERSECTBit = 106, |
| 139 | Feature_HasFP16Bit = 100, |
| 140 | Feature_HasAVXVNNIINT16Bit = 93, |
| 141 | Feature_HasAVXVNNIINT8Bit = 88, |
| 142 | Feature_HasAVXVNNIBit = 82, |
| 143 | Feature_NoVLX_Or_NoVNNIBit = 83, |
| 144 | Feature_HasBITALGBit = 105, |
| 145 | Feature_HasPOPCNTBit = 69, |
| 146 | Feature_HasAESBit = 74, |
| 147 | Feature_HasVAESBit = 76, |
| 148 | Feature_NoVLX_Or_NoVAESBit = 75, |
| 149 | Feature_HasFXSRBit = 41, |
| 150 | Feature_HasX87Bit = 39, |
| 151 | Feature_HasXSAVEBit = 126, |
| 152 | Feature_HasXSAVEOPTBit = 127, |
| 153 | Feature_HasXSAVECBit = 128, |
| 154 | Feature_HasXSAVESBit = 129, |
| 155 | Feature_HasPCLMULBit = 78, |
| 156 | Feature_NoVLX_Or_NoVPCLMULQDQBit = 79, |
| 157 | Feature_HasVPCLMULQDQBit = 80, |
| 158 | Feature_HasGFNIBit = 85, |
| 159 | Feature_HasFMABit = 42, |
| 160 | Feature_HasFMA4Bit = 46, |
| 161 | Feature_NoFMA4Bit = 43, |
| 162 | Feature_HasXOPBit = 47, |
| 163 | Feature_HasTBMBit = 26, |
| 164 | Feature_NoTBMBit = 142, |
| 165 | Feature_HasLWPBit = 12, |
| 166 | Feature_HasMOVBEBit = 3, |
| 167 | Feature_NoNDD_Or_NoMOVBEBit = 2, |
| 168 | Feature_HasRDRANDBit = 7, |
| 169 | Feature_HasF16CBit = 84, |
| 170 | Feature_HasFSGSBaseBit = 130, |
| 171 | Feature_HasLZCNTBit = 9, |
| 172 | Feature_HasBMIBit = 10, |
| 173 | Feature_HasBMI2Bit = 11, |
| 174 | Feature_NoBMI2Bit = 141, |
| 175 | Feature_HasVBMIBit = 99, |
| 176 | Feature_HasVBMI2Bit = 103, |
| 177 | Feature_HasIFMABit = 101, |
| 178 | Feature_HasAVXIFMABit = 86, |
| 179 | Feature_NoVLX_Or_NoIFMABit = 87, |
| 180 | Feature_HasRTMBit = 112, |
| 181 | Feature_HasSHABit = 73, |
| 182 | Feature_HasSHA512Bit = 90, |
| 183 | Feature_HasSM3Bit = 91, |
| 184 | Feature_HasRDSEEDBit = 8, |
| 185 | Feature_HasSSEPrefetchBit = 59, |
| 186 | Feature_HasPREFETCHIBit = 20, |
| 187 | Feature_HasPrefetchWBit = 111, |
| 188 | Feature_HasMWAITXBit = 140, |
| 189 | Feature_HasCLDEMOTEBit = 24, |
| 190 | Feature_HasMOVDIRIBit = 14, |
| 191 | Feature_HasMOVDIR64BBit = 15, |
| 192 | Feature_HasMOVRSBit = 25, |
| 193 | Feature_HasPTWRITEBit = 133, |
| 194 | Feature_FPStackf32Bit = 37, |
| 195 | Feature_FPStackf64Bit = 38, |
| 196 | Feature_HasSM4Bit = 92, |
| 197 | Feature_HasCLFLUSHBit = 60, |
| 198 | Feature_HasCLFLUSHOPTBit = 22, |
| 199 | Feature_HasCLWBBit = 23, |
| 200 | Feature_HasWBNOINVDBit = 125, |
| 201 | Feature_HasRDPIDBit = 132, |
| 202 | Feature_HasWAITPKGBit = 13, |
| 203 | Feature_HasINVPCIDBit = 131, |
| 204 | Feature_HasCX8Bit = 138, |
| 205 | Feature_HasCX16Bit = 139, |
| 206 | Feature_HasENQCMDBit = 16, |
| 207 | Feature_HasAMXFP16Bit = 117, |
| 208 | Feature_HasCMPCCXADDBit = 21, |
| 209 | Feature_HasAVXNECONVERTBit = 89, |
| 210 | Feature_HasKLBit = 113, |
| 211 | Feature_HasRAOINTBit = 123, |
| 212 | Feature_HasSERIALIZEBit = 17, |
| 213 | Feature_HasTSXLDTRKBit = 18, |
| 214 | Feature_HasAMXTILEBit = 114, |
| 215 | Feature_HasAMXBF16Bit = 116, |
| 216 | Feature_HasAMXINT8Bit = 115, |
| 217 | Feature_HasAMXCOMPLEXBit = 118, |
| 218 | Feature_HasAMXFP8Bit = 119, |
| 219 | Feature_HasAMXTRANSPOSEBit = 120, |
| 220 | Feature_HasAMXAVX512Bit = 121, |
| 221 | Feature_HasAMXTF32Bit = 122, |
| 222 | Feature_HasUINTRBit = 19, |
| 223 | Feature_HasUSERMSRBit = 124, |
| 224 | Feature_HasCRC32Bit = 72, |
| 225 | Feature_Not64BitModeBit = 0, |
| 226 | Feature_In64BitModeBit = 1, |
| 227 | Feature_IsLP64Bit = 135, |
| 228 | Feature_NotLP64Bit = 134, |
| 229 | Feature_NotWin64WithoutFPBit = 136, |
| 230 | Feature_IsPSBit = 146, |
| 231 | Feature_NotPSBit = 145, |
| 232 | Feature_KernelCodeBit = 147, |
| 233 | Feature_NearDataBit = 149, |
| 234 | Feature_IsNotPICBit = 148, |
| 235 | Feature_OptForSizeBit = 53, |
| 236 | Feature_OptForMinSizeBit = 51, |
| 237 | Feature_OptForSpeedBit = 143, |
| 238 | Feature_UseIncDecBit = 28, |
| 239 | Feature_NoSSE41_Or_OptForSizeBit = 55, |
| 240 | Feature_ImportCallOptimizationEnabledBit = 35, |
| 241 | Feature_ImportCallOptimizationDisabledBit = 33, |
| 242 | Feature_CallImmAddrBit = 150, |
| 243 | Feature_FavorMemIndirectCallBit = 31, |
| 244 | Feature_HasFastSHLDRotateBit = 36, |
| 245 | Feature_HasMFenceBit = 61, |
| 246 | Feature_UseIndirectThunkCallsBit = 34, |
| 247 | Feature_NotUseIndirectThunkCallsBit = 32, |
| 248 | }; |
| 249 | |
| 250 | PredicateBitset X86InstructionSelector:: |
| 251 | computeAvailableModuleFeatures(const X86Subtarget *Subtarget) const { |
| 252 | PredicateBitset Features{}; |
| 253 | if (true) |
| 254 | Features.set(Feature_TruePredicateBit); |
| 255 | if (Subtarget->hasEGPR()) |
| 256 | Features.set(Feature_HasEGPRBit); |
| 257 | if (!Subtarget->hasEGPR()) |
| 258 | Features.set(Feature_NoEGPRBit); |
| 259 | if (Subtarget->hasNDD()) |
| 260 | Features.set(Feature_HasNDDBit); |
| 261 | if (!Subtarget->hasNDD()) |
| 262 | Features.set(Feature_NoNDDBit); |
| 263 | if (Subtarget->hasZU()) |
| 264 | Features.set(Feature_HasZUBit); |
| 265 | if (Subtarget->hasCF()) |
| 266 | Features.set(Feature_HasCFBit); |
| 267 | if (Subtarget->canUseCMOV()) |
| 268 | Features.set(Feature_HasCMOVBit); |
| 269 | if (!Subtarget->canUseCMOV()) |
| 270 | Features.set(Feature_NoCMOVBit); |
| 271 | if (Subtarget->hasMMX()) |
| 272 | Features.set(Feature_HasMMXBit); |
| 273 | if (Subtarget->hasSSE1()) |
| 274 | Features.set(Feature_HasSSE1Bit); |
| 275 | if (Subtarget->hasSSE1() && !Subtarget->hasAVX()) |
| 276 | Features.set(Feature_UseSSE1Bit); |
| 277 | if (Subtarget->hasSSE2()) |
| 278 | Features.set(Feature_HasSSE2Bit); |
| 279 | if (Subtarget->hasSSE2() && !Subtarget->hasAVX()) |
| 280 | Features.set(Feature_UseSSE2Bit); |
| 281 | if (Subtarget->hasSSE3()) |
| 282 | Features.set(Feature_HasSSE3Bit); |
| 283 | if (Subtarget->hasSSE3() && !Subtarget->hasAVX()) |
| 284 | Features.set(Feature_UseSSE3Bit); |
| 285 | if (Subtarget->hasSSSE3()) |
| 286 | Features.set(Feature_HasSSSE3Bit); |
| 287 | if (Subtarget->hasSSSE3() && !Subtarget->hasAVX()) |
| 288 | Features.set(Feature_UseSSSE3Bit); |
| 289 | if (Subtarget->hasSSE41() && !Subtarget->hasAVX()) |
| 290 | Features.set(Feature_UseSSE41Bit); |
| 291 | if (Subtarget->hasSSE42() && !Subtarget->hasAVX()) |
| 292 | Features.set(Feature_UseSSE42Bit); |
| 293 | if (Subtarget->hasSSE4A()) |
| 294 | Features.set(Feature_HasSSE4ABit); |
| 295 | if (!Subtarget->hasAVX()) |
| 296 | Features.set(Feature_NoAVXBit); |
| 297 | if (Subtarget->hasAVX()) |
| 298 | Features.set(Feature_HasAVXBit); |
| 299 | if (Subtarget->hasAVX2()) |
| 300 | Features.set(Feature_HasAVX2Bit); |
| 301 | if (Subtarget->hasAVX() && !Subtarget->hasAVX2()) |
| 302 | Features.set(Feature_HasAVX1OnlyBit); |
| 303 | if (Subtarget->hasEVEX512()) |
| 304 | Features.set(Feature_HasEVEX512Bit); |
| 305 | if (Subtarget->hasAVX10_2()) |
| 306 | Features.set(Feature_HasAVX10_2Bit); |
| 307 | if (Subtarget->hasAVX10_2_512()) |
| 308 | Features.set(Feature_HasAVX10_2_512Bit); |
| 309 | if (!Subtarget->hasAVX10_2()) |
| 310 | Features.set(Feature_NoAVX10_2Bit); |
| 311 | if (Subtarget->hasAVX512()) |
| 312 | Features.set(Feature_HasAVX512Bit); |
| 313 | if (Subtarget->hasAVX() && !Subtarget->hasAVX512()) |
| 314 | Features.set(Feature_UseAVXBit); |
| 315 | if (!Subtarget->hasAVX512()) |
| 316 | Features.set(Feature_NoAVX512Bit); |
| 317 | if (Subtarget->hasCDI()) |
| 318 | Features.set(Feature_HasCDIBit); |
| 319 | if (Subtarget->hasVPOPCNTDQ()) |
| 320 | Features.set(Feature_HasVPOPCNTDQBit); |
| 321 | if (Subtarget->hasDQI()) |
| 322 | Features.set(Feature_HasDQIBit); |
| 323 | if (!Subtarget->hasDQI()) |
| 324 | Features.set(Feature_NoDQIBit); |
| 325 | if (Subtarget->hasBWI()) |
| 326 | Features.set(Feature_HasBWIBit); |
| 327 | if (!Subtarget->hasBWI()) |
| 328 | Features.set(Feature_NoBWIBit); |
| 329 | if (Subtarget->hasVLX()) |
| 330 | Features.set(Feature_HasVLXBit); |
| 331 | if (!Subtarget->hasVLX()) |
| 332 | Features.set(Feature_NoVLXBit); |
| 333 | if (!Subtarget->hasVLX() || !Subtarget->hasBWI()) |
| 334 | Features.set(Feature_NoVLX_Or_NoBWIBit); |
| 335 | if (Subtarget->hasVNNI()) |
| 336 | Features.set(Feature_HasVNNIBit); |
| 337 | if (Subtarget->hasVP2INTERSECT()) |
| 338 | Features.set(Feature_HasVP2INTERSECTBit); |
| 339 | if (Subtarget->hasFP16()) |
| 340 | Features.set(Feature_HasFP16Bit); |
| 341 | if (Subtarget->hasAVXVNNIINT16()) |
| 342 | Features.set(Feature_HasAVXVNNIINT16Bit); |
| 343 | if (Subtarget->hasAVXVNNIINT8()) |
| 344 | Features.set(Feature_HasAVXVNNIINT8Bit); |
| 345 | if (Subtarget->hasAVXVNNI()) |
| 346 | Features.set(Feature_HasAVXVNNIBit); |
| 347 | if (!Subtarget->hasVLX() || !Subtarget->hasVNNI()) |
| 348 | Features.set(Feature_NoVLX_Or_NoVNNIBit); |
| 349 | if (Subtarget->hasBITALG()) |
| 350 | Features.set(Feature_HasBITALGBit); |
| 351 | if (Subtarget->hasPOPCNT()) |
| 352 | Features.set(Feature_HasPOPCNTBit); |
| 353 | if (Subtarget->hasAES()) |
| 354 | Features.set(Feature_HasAESBit); |
| 355 | if (Subtarget->hasVAES()) |
| 356 | Features.set(Feature_HasVAESBit); |
| 357 | if (!Subtarget->hasVLX() || !Subtarget->hasVAES()) |
| 358 | Features.set(Feature_NoVLX_Or_NoVAESBit); |
| 359 | if (Subtarget->hasFXSR()) |
| 360 | Features.set(Feature_HasFXSRBit); |
| 361 | if (Subtarget->hasX87()) |
| 362 | Features.set(Feature_HasX87Bit); |
| 363 | if (Subtarget->hasXSAVE()) |
| 364 | Features.set(Feature_HasXSAVEBit); |
| 365 | if (Subtarget->hasXSAVEOPT()) |
| 366 | Features.set(Feature_HasXSAVEOPTBit); |
| 367 | if (Subtarget->hasXSAVEC()) |
| 368 | Features.set(Feature_HasXSAVECBit); |
| 369 | if (Subtarget->hasXSAVES()) |
| 370 | Features.set(Feature_HasXSAVESBit); |
| 371 | if (Subtarget->hasPCLMUL()) |
| 372 | Features.set(Feature_HasPCLMULBit); |
| 373 | if (!Subtarget->hasVLX() || !Subtarget->hasVPCLMULQDQ()) |
| 374 | Features.set(Feature_NoVLX_Or_NoVPCLMULQDQBit); |
| 375 | if (Subtarget->hasVPCLMULQDQ()) |
| 376 | Features.set(Feature_HasVPCLMULQDQBit); |
| 377 | if (Subtarget->hasGFNI()) |
| 378 | Features.set(Feature_HasGFNIBit); |
| 379 | if (Subtarget->hasFMA()) |
| 380 | Features.set(Feature_HasFMABit); |
| 381 | if (Subtarget->hasFMA4()) |
| 382 | Features.set(Feature_HasFMA4Bit); |
| 383 | if (!Subtarget->hasFMA4()) |
| 384 | Features.set(Feature_NoFMA4Bit); |
| 385 | if (Subtarget->hasXOP()) |
| 386 | Features.set(Feature_HasXOPBit); |
| 387 | if (Subtarget->hasTBM()) |
| 388 | Features.set(Feature_HasTBMBit); |
| 389 | if (!Subtarget->hasTBM()) |
| 390 | Features.set(Feature_NoTBMBit); |
| 391 | if (Subtarget->hasLWP()) |
| 392 | Features.set(Feature_HasLWPBit); |
| 393 | if (Subtarget->hasMOVBE()) |
| 394 | Features.set(Feature_HasMOVBEBit); |
| 395 | if (!Subtarget->hasNDD() || !Subtarget->hasMOVBE()) |
| 396 | Features.set(Feature_NoNDD_Or_NoMOVBEBit); |
| 397 | if (Subtarget->hasRDRAND()) |
| 398 | Features.set(Feature_HasRDRANDBit); |
| 399 | if (Subtarget->hasF16C()) |
| 400 | Features.set(Feature_HasF16CBit); |
| 401 | if (Subtarget->hasFSGSBase()) |
| 402 | Features.set(Feature_HasFSGSBaseBit); |
| 403 | if (Subtarget->hasLZCNT()) |
| 404 | Features.set(Feature_HasLZCNTBit); |
| 405 | if (Subtarget->hasBMI()) |
| 406 | Features.set(Feature_HasBMIBit); |
| 407 | if (Subtarget->hasBMI2()) |
| 408 | Features.set(Feature_HasBMI2Bit); |
| 409 | if (!Subtarget->hasBMI2()) |
| 410 | Features.set(Feature_NoBMI2Bit); |
| 411 | if (Subtarget->hasVBMI()) |
| 412 | Features.set(Feature_HasVBMIBit); |
| 413 | if (Subtarget->hasVBMI2()) |
| 414 | Features.set(Feature_HasVBMI2Bit); |
| 415 | if (Subtarget->hasIFMA()) |
| 416 | Features.set(Feature_HasIFMABit); |
| 417 | if (Subtarget->hasAVXIFMA()) |
| 418 | Features.set(Feature_HasAVXIFMABit); |
| 419 | if (!Subtarget->hasVLX() || !Subtarget->hasIFMA()) |
| 420 | Features.set(Feature_NoVLX_Or_NoIFMABit); |
| 421 | if (Subtarget->hasRTM()) |
| 422 | Features.set(Feature_HasRTMBit); |
| 423 | if (Subtarget->hasSHA()) |
| 424 | Features.set(Feature_HasSHABit); |
| 425 | if (Subtarget->hasSHA512()) |
| 426 | Features.set(Feature_HasSHA512Bit); |
| 427 | if (Subtarget->hasSM3()) |
| 428 | Features.set(Feature_HasSM3Bit); |
| 429 | if (Subtarget->hasRDSEED()) |
| 430 | Features.set(Feature_HasRDSEEDBit); |
| 431 | if (Subtarget->hasSSEPrefetch()) |
| 432 | Features.set(Feature_HasSSEPrefetchBit); |
| 433 | if (Subtarget->hasPREFETCHI()) |
| 434 | Features.set(Feature_HasPREFETCHIBit); |
| 435 | if (Subtarget->hasPrefetchW()) |
| 436 | Features.set(Feature_HasPrefetchWBit); |
| 437 | if (Subtarget->hasMWAITX()) |
| 438 | Features.set(Feature_HasMWAITXBit); |
| 439 | if (Subtarget->hasCLDEMOTE()) |
| 440 | Features.set(Feature_HasCLDEMOTEBit); |
| 441 | if (Subtarget->hasMOVDIRI()) |
| 442 | Features.set(Feature_HasMOVDIRIBit); |
| 443 | if (Subtarget->hasMOVDIR64B()) |
| 444 | Features.set(Feature_HasMOVDIR64BBit); |
| 445 | if (Subtarget->hasMOVRS()) |
| 446 | Features.set(Feature_HasMOVRSBit); |
| 447 | if (Subtarget->hasPTWRITE()) |
| 448 | Features.set(Feature_HasPTWRITEBit); |
| 449 | if (!Subtarget->hasSSE1()) |
| 450 | Features.set(Feature_FPStackf32Bit); |
| 451 | if (!Subtarget->hasSSE2()) |
| 452 | Features.set(Feature_FPStackf64Bit); |
| 453 | if (Subtarget->hasSM4()) |
| 454 | Features.set(Feature_HasSM4Bit); |
| 455 | if (Subtarget->hasCLFLUSH()) |
| 456 | Features.set(Feature_HasCLFLUSHBit); |
| 457 | if (Subtarget->hasCLFLUSHOPT()) |
| 458 | Features.set(Feature_HasCLFLUSHOPTBit); |
| 459 | if (Subtarget->hasCLWB()) |
| 460 | Features.set(Feature_HasCLWBBit); |
| 461 | if (Subtarget->hasWBNOINVD()) |
| 462 | Features.set(Feature_HasWBNOINVDBit); |
| 463 | if (Subtarget->hasRDPID()) |
| 464 | Features.set(Feature_HasRDPIDBit); |
| 465 | if (Subtarget->hasWAITPKG()) |
| 466 | Features.set(Feature_HasWAITPKGBit); |
| 467 | if (Subtarget->hasINVPCID()) |
| 468 | Features.set(Feature_HasINVPCIDBit); |
| 469 | if (Subtarget->hasCX8()) |
| 470 | Features.set(Feature_HasCX8Bit); |
| 471 | if (Subtarget->hasCX16()) |
| 472 | Features.set(Feature_HasCX16Bit); |
| 473 | if (Subtarget->hasENQCMD()) |
| 474 | Features.set(Feature_HasENQCMDBit); |
| 475 | if (Subtarget->hasAMXFP16()) |
| 476 | Features.set(Feature_HasAMXFP16Bit); |
| 477 | if (Subtarget->hasCMPCCXADD()) |
| 478 | Features.set(Feature_HasCMPCCXADDBit); |
| 479 | if (Subtarget->hasAVXNECONVERT()) |
| 480 | Features.set(Feature_HasAVXNECONVERTBit); |
| 481 | if (Subtarget->hasKL()) |
| 482 | Features.set(Feature_HasKLBit); |
| 483 | if (Subtarget->hasRAOINT()) |
| 484 | Features.set(Feature_HasRAOINTBit); |
| 485 | if (Subtarget->hasSERIALIZE()) |
| 486 | Features.set(Feature_HasSERIALIZEBit); |
| 487 | if (Subtarget->hasTSXLDTRK()) |
| 488 | Features.set(Feature_HasTSXLDTRKBit); |
| 489 | if (Subtarget->hasAMXTILE()) |
| 490 | Features.set(Feature_HasAMXTILEBit); |
| 491 | if (Subtarget->hasAMXBF16()) |
| 492 | Features.set(Feature_HasAMXBF16Bit); |
| 493 | if (Subtarget->hasAMXINT8()) |
| 494 | Features.set(Feature_HasAMXINT8Bit); |
| 495 | if (Subtarget->hasAMXCOMPLEX()) |
| 496 | Features.set(Feature_HasAMXCOMPLEXBit); |
| 497 | if (Subtarget->hasAMXFP8()) |
| 498 | Features.set(Feature_HasAMXFP8Bit); |
| 499 | if (Subtarget->hasAMXTRANSPOSE()) |
| 500 | Features.set(Feature_HasAMXTRANSPOSEBit); |
| 501 | if (Subtarget->hasAMXAVX512()) |
| 502 | Features.set(Feature_HasAMXAVX512Bit); |
| 503 | if (Subtarget->hasAMXTF32()) |
| 504 | Features.set(Feature_HasAMXTF32Bit); |
| 505 | if (Subtarget->hasUINTR()) |
| 506 | Features.set(Feature_HasUINTRBit); |
| 507 | if (Subtarget->hasUSERMSR()) |
| 508 | Features.set(Feature_HasUSERMSRBit); |
| 509 | if (Subtarget->hasCRC32()) |
| 510 | Features.set(Feature_HasCRC32Bit); |
| 511 | if (!Subtarget->is64Bit()) |
| 512 | Features.set(Feature_Not64BitModeBit); |
| 513 | if (Subtarget->is64Bit()) |
| 514 | Features.set(Feature_In64BitModeBit); |
| 515 | if (Subtarget->isTarget64BitLP64()) |
| 516 | Features.set(Feature_IsLP64Bit); |
| 517 | if (!Subtarget->isTarget64BitLP64()) |
| 518 | Features.set(Feature_NotLP64Bit); |
| 519 | if (Subtarget->isTargetPS()) |
| 520 | Features.set(Feature_IsPSBit); |
| 521 | if (!Subtarget->isTargetPS()) |
| 522 | Features.set(Feature_NotPSBit); |
| 523 | if (TM.getCodeModel() == CodeModel::Kernel) |
| 524 | Features.set(Feature_KernelCodeBit); |
| 525 | if (TM.getCodeModel() == CodeModel::Small ||TM.getCodeModel() == CodeModel::Kernel) |
| 526 | Features.set(Feature_NearDataBit); |
| 527 | if (!TM.isPositionIndependent()) |
| 528 | Features.set(Feature_IsNotPICBit); |
| 529 | if (Subtarget->isLegalToCallImmediateAddr()) |
| 530 | Features.set(Feature_CallImmAddrBit); |
| 531 | if (!Subtarget->slowTwoMemOps()) |
| 532 | Features.set(Feature_FavorMemIndirectCallBit); |
| 533 | if (Subtarget->hasFastSHLDRotate()) |
| 534 | Features.set(Feature_HasFastSHLDRotateBit); |
| 535 | if (Subtarget->hasMFence()) |
| 536 | Features.set(Feature_HasMFenceBit); |
| 537 | if (Subtarget->useIndirectThunkCalls()) |
| 538 | Features.set(Feature_UseIndirectThunkCallsBit); |
| 539 | if (!Subtarget->useIndirectThunkCalls()) |
| 540 | Features.set(Feature_NotUseIndirectThunkCallsBit); |
| 541 | return Features; |
| 542 | } |
| 543 | |
| 544 | void X86InstructionSelector::setupGeneratedPerFunctionState(MachineFunction &MF) { |
| 545 | AvailableFunctionFeatures = computeAvailableFunctionFeatures((const X86Subtarget *)&MF.getSubtarget(), &MF); |
| 546 | } |
| 547 | PredicateBitset X86InstructionSelector:: |
| 548 | computeAvailableFunctionFeatures(const X86Subtarget *Subtarget, const MachineFunction *MF) const { |
| 549 | PredicateBitset Features{}; |
| 550 | if (!Subtarget->isTargetWin64() ||Subtarget->getFrameLowering()->hasFP(*MF)) |
| 551 | Features.set(Feature_NotWin64WithoutFPBit); |
| 552 | if (shouldOptForSize(MF)) |
| 553 | Features.set(Feature_OptForSizeBit); |
| 554 | if (MF->getFunction().hasMinSize()) |
| 555 | Features.set(Feature_OptForMinSizeBit); |
| 556 | if (!shouldOptForSize(MF)) |
| 557 | Features.set(Feature_OptForSpeedBit); |
| 558 | if (!Subtarget->slowIncDec() || shouldOptForSize(MF)) |
| 559 | Features.set(Feature_UseIncDecBit); |
| 560 | if (shouldOptForSize(MF) || !Subtarget->hasSSE41()) |
| 561 | Features.set(Feature_NoSSE41_Or_OptForSizeBit); |
| 562 | if (MF->getFunction().getParent()->getModuleFlag("import-call-optimization" )) |
| 563 | Features.set(Feature_ImportCallOptimizationEnabledBit); |
| 564 | if (!MF->getFunction().getParent()->getModuleFlag("import-call-optimization" )) |
| 565 | Features.set(Feature_ImportCallOptimizationDisabledBit); |
| 566 | return Features; |
| 567 | } |
| 568 | |
| 569 | // Feature bitsets. |
| 570 | enum { |
| 571 | GIFBS_Invalid, |
| 572 | GIFBS_FPStackf32, |
| 573 | GIFBS_FPStackf64, |
| 574 | GIFBS_HasAVX, |
| 575 | GIFBS_HasAVX1Only, |
| 576 | GIFBS_HasAVX2, |
| 577 | GIFBS_HasAVX512, |
| 578 | GIFBS_HasAVXNECONVERT, |
| 579 | GIFBS_HasBITALG, |
| 580 | GIFBS_HasBMI, |
| 581 | GIFBS_HasBWI, |
| 582 | GIFBS_HasCDI, |
| 583 | GIFBS_HasCLDEMOTE, |
| 584 | GIFBS_HasCLFLUSH, |
| 585 | GIFBS_HasCLFLUSHOPT, |
| 586 | GIFBS_HasCLWB, |
| 587 | GIFBS_HasDQI, |
| 588 | GIFBS_HasFP16, |
| 589 | GIFBS_HasFXSR, |
| 590 | GIFBS_HasFastSHLDRotate, |
| 591 | GIFBS_HasKL, |
| 592 | GIFBS_HasLWP, |
| 593 | GIFBS_HasLZCNT, |
| 594 | GIFBS_HasMFence, |
| 595 | GIFBS_HasMMX, |
| 596 | GIFBS_HasMOVBE, |
| 597 | GIFBS_HasMOVRS, |
| 598 | GIFBS_HasMWAITX, |
| 599 | GIFBS_HasNDD, |
| 600 | GIFBS_HasPOPCNT, |
| 601 | GIFBS_HasPTWRITE, |
| 602 | GIFBS_HasPrefetchW, |
| 603 | GIFBS_HasRTM, |
| 604 | GIFBS_HasSERIALIZE, |
| 605 | GIFBS_HasSHA, |
| 606 | GIFBS_HasSHA512, |
| 607 | GIFBS_HasSM3, |
| 608 | GIFBS_HasSM4, |
| 609 | GIFBS_HasSSE1, |
| 610 | GIFBS_HasSSE2, |
| 611 | GIFBS_HasSSE3, |
| 612 | GIFBS_HasSSE4A, |
| 613 | GIFBS_HasSSEPrefetch, |
| 614 | GIFBS_HasTBM, |
| 615 | GIFBS_HasTSXLDTRK, |
| 616 | GIFBS_HasVBMI2, |
| 617 | GIFBS_HasVLX, |
| 618 | GIFBS_HasVPOPCNTDQ, |
| 619 | GIFBS_HasWAITPKG, |
| 620 | GIFBS_HasWBNOINVD, |
| 621 | GIFBS_HasX87, |
| 622 | GIFBS_HasXOP, |
| 623 | GIFBS_HasXSAVE, |
| 624 | GIFBS_HasXSAVEC, |
| 625 | GIFBS_HasXSAVEOPT, |
| 626 | GIFBS_HasXSAVES, |
| 627 | GIFBS_HasZU, |
| 628 | GIFBS_In64BitMode, |
| 629 | GIFBS_IsPS, |
| 630 | GIFBS_NoAVX, |
| 631 | GIFBS_NoDQI, |
| 632 | GIFBS_NoEGPR, |
| 633 | GIFBS_NoNDD, |
| 634 | GIFBS_NoNDD_Or_NoMOVBE, |
| 635 | GIFBS_Not64BitMode, |
| 636 | GIFBS_NotPS, |
| 637 | GIFBS_UseAVX, |
| 638 | GIFBS_UseIncDec, |
| 639 | GIFBS_UseSSE1, |
| 640 | GIFBS_UseSSE2, |
| 641 | GIFBS_UseSSE3, |
| 642 | GIFBS_UseSSE41, |
| 643 | GIFBS_UseSSSE3, |
| 644 | GIFBS_HasAES_HasAVX, |
| 645 | GIFBS_HasAES_NoAVX, |
| 646 | GIFBS_HasAMXBF16_In64BitMode, |
| 647 | GIFBS_HasAMXCOMPLEX_In64BitMode, |
| 648 | GIFBS_HasAMXFP16_In64BitMode, |
| 649 | GIFBS_HasAMXFP8_In64BitMode, |
| 650 | GIFBS_HasAMXINT8_In64BitMode, |
| 651 | GIFBS_HasAMXTF32_In64BitMode, |
| 652 | GIFBS_HasAMXTILE_In64BitMode, |
| 653 | GIFBS_HasAMXTRANSPOSE_In64BitMode, |
| 654 | GIFBS_HasAVX_In64BitMode, |
| 655 | GIFBS_HasAVX_NoBWI, |
| 656 | GIFBS_HasAVX_NoVLX, |
| 657 | GIFBS_HasAVX_NoVLX_Or_NoBWI, |
| 658 | GIFBS_HasAVX10_2_HasSM4, |
| 659 | GIFBS_HasAVX10_2_512_HasSM4, |
| 660 | GIFBS_HasAVX2_NoVLX, |
| 661 | GIFBS_HasAVX2_NoVLX_Or_NoBWI, |
| 662 | GIFBS_HasAVX512_HasVAES, |
| 663 | GIFBS_HasAVX512_HasVLX, |
| 664 | GIFBS_HasAVX512_HasVPCLMULQDQ, |
| 665 | GIFBS_HasAVX512_NoBWI, |
| 666 | GIFBS_HasAVX512_NoDQI, |
| 667 | GIFBS_HasAVX512_NoEGPR, |
| 668 | GIFBS_HasAVX512_OptForSize, |
| 669 | GIFBS_HasBITALG_HasVLX, |
| 670 | GIFBS_HasBMI_HasEGPR, |
| 671 | GIFBS_HasBMI_NoEGPR, |
| 672 | GIFBS_HasBMI2_HasEGPR, |
| 673 | GIFBS_HasBMI2_NoEGPR, |
| 674 | GIFBS_HasBWI_HasVLX, |
| 675 | GIFBS_HasBWI_NoEGPR, |
| 676 | GIFBS_HasCDI_HasVLX, |
| 677 | GIFBS_HasCRC32_NoEGPR, |
| 678 | GIFBS_HasDQI_HasVLX, |
| 679 | GIFBS_HasDQI_NoBWI, |
| 680 | GIFBS_HasDQI_NoEGPR, |
| 681 | GIFBS_HasEGPR_HasINVPCID, |
| 682 | GIFBS_HasEGPR_In64BitMode, |
| 683 | GIFBS_HasEVEX512_NoVLX, |
| 684 | GIFBS_HasFMA4_NoAVX512, |
| 685 | GIFBS_HasFMA4_NoVLX, |
| 686 | GIFBS_HasFP16_HasVLX, |
| 687 | GIFBS_HasFP16_In64BitMode, |
| 688 | GIFBS_HasFP16_OptForSize, |
| 689 | GIFBS_HasFSGSBase_In64BitMode, |
| 690 | GIFBS_HasFXSR_In64BitMode, |
| 691 | GIFBS_HasINVPCID_NoEGPR, |
| 692 | GIFBS_HasINVPCID_Not64BitMode, |
| 693 | GIFBS_HasMOVBE_NoEGPR, |
| 694 | GIFBS_HasMOVDIR64B_NoEGPR, |
| 695 | GIFBS_HasMOVDIRI_NoEGPR, |
| 696 | GIFBS_HasNDD_In64BitMode, |
| 697 | GIFBS_HasNDD_UseIncDec, |
| 698 | GIFBS_HasPCLMUL_NoAVX, |
| 699 | GIFBS_HasPREFETCHI_In64BitMode, |
| 700 | GIFBS_HasPTWRITE_In64BitMode, |
| 701 | GIFBS_HasRDPID_In64BitMode, |
| 702 | GIFBS_HasRDPID_Not64BitMode, |
| 703 | GIFBS_HasUINTR_In64BitMode, |
| 704 | GIFBS_HasUSERMSR_NoEGPR, |
| 705 | GIFBS_HasVAES_HasVLX, |
| 706 | GIFBS_HasVAES_NoVLX, |
| 707 | GIFBS_HasVBMI2_HasVLX, |
| 708 | GIFBS_HasVLX_HasVPCLMULQDQ, |
| 709 | GIFBS_HasVLX_HasVPOPCNTDQ, |
| 710 | GIFBS_HasVPCLMULQDQ_NoVLX, |
| 711 | GIFBS_HasWAITPKG_In64BitMode, |
| 712 | GIFBS_HasWAITPKG_Not64BitMode, |
| 713 | GIFBS_HasXSAVE_In64BitMode, |
| 714 | GIFBS_HasXSAVEC_In64BitMode, |
| 715 | GIFBS_HasXSAVEOPT_In64BitMode, |
| 716 | GIFBS_HasXSAVES_In64BitMode, |
| 717 | GIFBS_In64BitMode_UseIncDec, |
| 718 | GIFBS_In64BitMode_UseSSE2, |
| 719 | GIFBS_NoNDD_UseIncDec, |
| 720 | GIFBS_Not64BitMode_OptForSize, |
| 721 | GIFBS_NotWin64WithoutFP_OptForMinSize, |
| 722 | GIFBS_OptForSize_UseAVX, |
| 723 | GIFBS_OptForSize_UseSSE1, |
| 724 | GIFBS_OptForSize_UseSSE2, |
| 725 | GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES, |
| 726 | GIFBS_HasAMXAVX512_HasAVX10_2_512_In64BitMode, |
| 727 | GIFBS_HasAMXBF16_HasAMXTRANSPOSE_In64BitMode, |
| 728 | GIFBS_HasAMXCOMPLEX_HasAMXTRANSPOSE_In64BitMode, |
| 729 | GIFBS_HasAMXFP16_HasAMXTRANSPOSE_In64BitMode, |
| 730 | GIFBS_HasAMXTF32_HasAMXTRANSPOSE_In64BitMode, |
| 731 | GIFBS_HasAMXTILE_HasEGPR_In64BitMode, |
| 732 | GIFBS_HasAMXTILE_In64BitMode_NoEGPR, |
| 733 | GIFBS_HasAVX_HasPCLMUL_NoVLX_Or_NoVPCLMULQDQ, |
| 734 | GIFBS_HasAVX10_2_HasMOVRS_In64BitMode, |
| 735 | GIFBS_HasAVX10_2_512_HasMOVRS_In64BitMode, |
| 736 | GIFBS_HasAVX512_HasEGPR_In64BitMode, |
| 737 | GIFBS_HasAVX512_HasEVEX512_NoVLX, |
| 738 | GIFBS_HasBITALG_HasEVEX512_NoVLX, |
| 739 | GIFBS_HasBWI_HasEGPR_In64BitMode, |
| 740 | GIFBS_HasBWI_HasEVEX512_NoVLX, |
| 741 | GIFBS_HasCDI_HasEVEX512_NoVLX, |
| 742 | GIFBS_HasCRC32_HasEGPR_In64BitMode, |
| 743 | GIFBS_HasDQI_HasEGPR_In64BitMode, |
| 744 | GIFBS_HasDQI_HasEVEX512_NoVLX, |
| 745 | GIFBS_HasDQI_HasVLX_NoBWI, |
| 746 | GIFBS_HasEGPR_HasMOVBE_In64BitMode, |
| 747 | GIFBS_HasEGPR_HasMOVDIR64B_In64BitMode, |
| 748 | GIFBS_HasEGPR_HasMOVDIRI_In64BitMode, |
| 749 | GIFBS_HasEGPR_HasMOVRS_In64BitMode, |
| 750 | GIFBS_HasEGPR_HasUSERMSR_In64BitMode, |
| 751 | GIFBS_HasEVEX512_HasVPOPCNTDQ_NoVLX, |
| 752 | GIFBS_HasFMA_NoAVX512_NoFMA4, |
| 753 | GIFBS_HasFMA_NoFMA4_NoVLX, |
| 754 | GIFBS_HasMOVBE_HasNDD_In64BitMode, |
| 755 | GIFBS_HasMOVDIR64B_In64BitMode_NoEGPR, |
| 756 | GIFBS_HasMOVDIRI_In64BitMode_NoEGPR, |
| 757 | GIFBS_HasMOVRS_In64BitMode_NoEGPR, |
| 758 | }; |
| 759 | constexpr static PredicateBitset FeatureBitsets[] { |
| 760 | {}, // GIFBS_Invalid |
| 761 | {Feature_FPStackf32Bit, }, |
| 762 | {Feature_FPStackf64Bit, }, |
| 763 | {Feature_HasAVXBit, }, |
| 764 | {Feature_HasAVX1OnlyBit, }, |
| 765 | {Feature_HasAVX2Bit, }, |
| 766 | {Feature_HasAVX512Bit, }, |
| 767 | {Feature_HasAVXNECONVERTBit, }, |
| 768 | {Feature_HasBITALGBit, }, |
| 769 | {Feature_HasBMIBit, }, |
| 770 | {Feature_HasBWIBit, }, |
| 771 | {Feature_HasCDIBit, }, |
| 772 | {Feature_HasCLDEMOTEBit, }, |
| 773 | {Feature_HasCLFLUSHBit, }, |
| 774 | {Feature_HasCLFLUSHOPTBit, }, |
| 775 | {Feature_HasCLWBBit, }, |
| 776 | {Feature_HasDQIBit, }, |
| 777 | {Feature_HasFP16Bit, }, |
| 778 | {Feature_HasFXSRBit, }, |
| 779 | {Feature_HasFastSHLDRotateBit, }, |
| 780 | {Feature_HasKLBit, }, |
| 781 | {Feature_HasLWPBit, }, |
| 782 | {Feature_HasLZCNTBit, }, |
| 783 | {Feature_HasMFenceBit, }, |
| 784 | {Feature_HasMMXBit, }, |
| 785 | {Feature_HasMOVBEBit, }, |
| 786 | {Feature_HasMOVRSBit, }, |
| 787 | {Feature_HasMWAITXBit, }, |
| 788 | {Feature_HasNDDBit, }, |
| 789 | {Feature_HasPOPCNTBit, }, |
| 790 | {Feature_HasPTWRITEBit, }, |
| 791 | {Feature_HasPrefetchWBit, }, |
| 792 | {Feature_HasRTMBit, }, |
| 793 | {Feature_HasSERIALIZEBit, }, |
| 794 | {Feature_HasSHABit, }, |
| 795 | {Feature_HasSHA512Bit, }, |
| 796 | {Feature_HasSM3Bit, }, |
| 797 | {Feature_HasSM4Bit, }, |
| 798 | {Feature_HasSSE1Bit, }, |
| 799 | {Feature_HasSSE2Bit, }, |
| 800 | {Feature_HasSSE3Bit, }, |
| 801 | {Feature_HasSSE4ABit, }, |
| 802 | {Feature_HasSSEPrefetchBit, }, |
| 803 | {Feature_HasTBMBit, }, |
| 804 | {Feature_HasTSXLDTRKBit, }, |
| 805 | {Feature_HasVBMI2Bit, }, |
| 806 | {Feature_HasVLXBit, }, |
| 807 | {Feature_HasVPOPCNTDQBit, }, |
| 808 | {Feature_HasWAITPKGBit, }, |
| 809 | {Feature_HasWBNOINVDBit, }, |
| 810 | {Feature_HasX87Bit, }, |
| 811 | {Feature_HasXOPBit, }, |
| 812 | {Feature_HasXSAVEBit, }, |
| 813 | {Feature_HasXSAVECBit, }, |
| 814 | {Feature_HasXSAVEOPTBit, }, |
| 815 | {Feature_HasXSAVESBit, }, |
| 816 | {Feature_HasZUBit, }, |
| 817 | {Feature_In64BitModeBit, }, |
| 818 | {Feature_IsPSBit, }, |
| 819 | {Feature_NoAVXBit, }, |
| 820 | {Feature_NoDQIBit, }, |
| 821 | {Feature_NoEGPRBit, }, |
| 822 | {Feature_NoNDDBit, }, |
| 823 | {Feature_NoNDD_Or_NoMOVBEBit, }, |
| 824 | {Feature_Not64BitModeBit, }, |
| 825 | {Feature_NotPSBit, }, |
| 826 | {Feature_UseAVXBit, }, |
| 827 | {Feature_UseIncDecBit, }, |
| 828 | {Feature_UseSSE1Bit, }, |
| 829 | {Feature_UseSSE2Bit, }, |
| 830 | {Feature_UseSSE3Bit, }, |
| 831 | {Feature_UseSSE41Bit, }, |
| 832 | {Feature_UseSSSE3Bit, }, |
| 833 | {Feature_HasAESBit, Feature_HasAVXBit, }, |
| 834 | {Feature_HasAESBit, Feature_NoAVXBit, }, |
| 835 | {Feature_HasAMXBF16Bit, Feature_In64BitModeBit, }, |
| 836 | {Feature_HasAMXCOMPLEXBit, Feature_In64BitModeBit, }, |
| 837 | {Feature_HasAMXFP16Bit, Feature_In64BitModeBit, }, |
| 838 | {Feature_HasAMXFP8Bit, Feature_In64BitModeBit, }, |
| 839 | {Feature_HasAMXINT8Bit, Feature_In64BitModeBit, }, |
| 840 | {Feature_HasAMXTF32Bit, Feature_In64BitModeBit, }, |
| 841 | {Feature_HasAMXTILEBit, Feature_In64BitModeBit, }, |
| 842 | {Feature_HasAMXTRANSPOSEBit, Feature_In64BitModeBit, }, |
| 843 | {Feature_HasAVXBit, Feature_In64BitModeBit, }, |
| 844 | {Feature_HasAVXBit, Feature_NoBWIBit, }, |
| 845 | {Feature_HasAVXBit, Feature_NoVLXBit, }, |
| 846 | {Feature_HasAVXBit, Feature_NoVLX_Or_NoBWIBit, }, |
| 847 | {Feature_HasAVX10_2Bit, Feature_HasSM4Bit, }, |
| 848 | {Feature_HasAVX10_2_512Bit, Feature_HasSM4Bit, }, |
| 849 | {Feature_HasAVX2Bit, Feature_NoVLXBit, }, |
| 850 | {Feature_HasAVX2Bit, Feature_NoVLX_Or_NoBWIBit, }, |
| 851 | {Feature_HasAVX512Bit, Feature_HasVAESBit, }, |
| 852 | {Feature_HasAVX512Bit, Feature_HasVLXBit, }, |
| 853 | {Feature_HasAVX512Bit, Feature_HasVPCLMULQDQBit, }, |
| 854 | {Feature_HasAVX512Bit, Feature_NoBWIBit, }, |
| 855 | {Feature_HasAVX512Bit, Feature_NoDQIBit, }, |
| 856 | {Feature_HasAVX512Bit, Feature_NoEGPRBit, }, |
| 857 | {Feature_HasAVX512Bit, Feature_OptForSizeBit, }, |
| 858 | {Feature_HasBITALGBit, Feature_HasVLXBit, }, |
| 859 | {Feature_HasBMIBit, Feature_HasEGPRBit, }, |
| 860 | {Feature_HasBMIBit, Feature_NoEGPRBit, }, |
| 861 | {Feature_HasBMI2Bit, Feature_HasEGPRBit, }, |
| 862 | {Feature_HasBMI2Bit, Feature_NoEGPRBit, }, |
| 863 | {Feature_HasBWIBit, Feature_HasVLXBit, }, |
| 864 | {Feature_HasBWIBit, Feature_NoEGPRBit, }, |
| 865 | {Feature_HasCDIBit, Feature_HasVLXBit, }, |
| 866 | {Feature_HasCRC32Bit, Feature_NoEGPRBit, }, |
| 867 | {Feature_HasDQIBit, Feature_HasVLXBit, }, |
| 868 | {Feature_HasDQIBit, Feature_NoBWIBit, }, |
| 869 | {Feature_HasDQIBit, Feature_NoEGPRBit, }, |
| 870 | {Feature_HasEGPRBit, Feature_HasINVPCIDBit, }, |
| 871 | {Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 872 | {Feature_HasEVEX512Bit, Feature_NoVLXBit, }, |
| 873 | {Feature_HasFMA4Bit, Feature_NoAVX512Bit, }, |
| 874 | {Feature_HasFMA4Bit, Feature_NoVLXBit, }, |
| 875 | {Feature_HasFP16Bit, Feature_HasVLXBit, }, |
| 876 | {Feature_HasFP16Bit, Feature_In64BitModeBit, }, |
| 877 | {Feature_HasFP16Bit, Feature_OptForSizeBit, }, |
| 878 | {Feature_HasFSGSBaseBit, Feature_In64BitModeBit, }, |
| 879 | {Feature_HasFXSRBit, Feature_In64BitModeBit, }, |
| 880 | {Feature_HasINVPCIDBit, Feature_NoEGPRBit, }, |
| 881 | {Feature_HasINVPCIDBit, Feature_Not64BitModeBit, }, |
| 882 | {Feature_HasMOVBEBit, Feature_NoEGPRBit, }, |
| 883 | {Feature_HasMOVDIR64BBit, Feature_NoEGPRBit, }, |
| 884 | {Feature_HasMOVDIRIBit, Feature_NoEGPRBit, }, |
| 885 | {Feature_HasNDDBit, Feature_In64BitModeBit, }, |
| 886 | {Feature_HasNDDBit, Feature_UseIncDecBit, }, |
| 887 | {Feature_HasPCLMULBit, Feature_NoAVXBit, }, |
| 888 | {Feature_HasPREFETCHIBit, Feature_In64BitModeBit, }, |
| 889 | {Feature_HasPTWRITEBit, Feature_In64BitModeBit, }, |
| 890 | {Feature_HasRDPIDBit, Feature_In64BitModeBit, }, |
| 891 | {Feature_HasRDPIDBit, Feature_Not64BitModeBit, }, |
| 892 | {Feature_HasUINTRBit, Feature_In64BitModeBit, }, |
| 893 | {Feature_HasUSERMSRBit, Feature_NoEGPRBit, }, |
| 894 | {Feature_HasVAESBit, Feature_HasVLXBit, }, |
| 895 | {Feature_HasVAESBit, Feature_NoVLXBit, }, |
| 896 | {Feature_HasVBMI2Bit, Feature_HasVLXBit, }, |
| 897 | {Feature_HasVLXBit, Feature_HasVPCLMULQDQBit, }, |
| 898 | {Feature_HasVLXBit, Feature_HasVPOPCNTDQBit, }, |
| 899 | {Feature_HasVPCLMULQDQBit, Feature_NoVLXBit, }, |
| 900 | {Feature_HasWAITPKGBit, Feature_In64BitModeBit, }, |
| 901 | {Feature_HasWAITPKGBit, Feature_Not64BitModeBit, }, |
| 902 | {Feature_HasXSAVEBit, Feature_In64BitModeBit, }, |
| 903 | {Feature_HasXSAVECBit, Feature_In64BitModeBit, }, |
| 904 | {Feature_HasXSAVEOPTBit, Feature_In64BitModeBit, }, |
| 905 | {Feature_HasXSAVESBit, Feature_In64BitModeBit, }, |
| 906 | {Feature_In64BitModeBit, Feature_UseIncDecBit, }, |
| 907 | {Feature_In64BitModeBit, Feature_UseSSE2Bit, }, |
| 908 | {Feature_NoNDDBit, Feature_UseIncDecBit, }, |
| 909 | {Feature_Not64BitModeBit, Feature_OptForSizeBit, }, |
| 910 | {Feature_NotWin64WithoutFPBit, Feature_OptForMinSizeBit, }, |
| 911 | {Feature_OptForSizeBit, Feature_UseAVXBit, }, |
| 912 | {Feature_OptForSizeBit, Feature_UseSSE1Bit, }, |
| 913 | {Feature_OptForSizeBit, Feature_UseSSE2Bit, }, |
| 914 | {Feature_HasAESBit, Feature_HasAVXBit, Feature_NoVLX_Or_NoVAESBit, }, |
| 915 | {Feature_HasAMXAVX512Bit, Feature_HasAVX10_2_512Bit, Feature_In64BitModeBit, }, |
| 916 | {Feature_HasAMXBF16Bit, Feature_HasAMXTRANSPOSEBit, Feature_In64BitModeBit, }, |
| 917 | {Feature_HasAMXCOMPLEXBit, Feature_HasAMXTRANSPOSEBit, Feature_In64BitModeBit, }, |
| 918 | {Feature_HasAMXFP16Bit, Feature_HasAMXTRANSPOSEBit, Feature_In64BitModeBit, }, |
| 919 | {Feature_HasAMXTF32Bit, Feature_HasAMXTRANSPOSEBit, Feature_In64BitModeBit, }, |
| 920 | {Feature_HasAMXTILEBit, Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 921 | {Feature_HasAMXTILEBit, Feature_In64BitModeBit, Feature_NoEGPRBit, }, |
| 922 | {Feature_HasAVXBit, Feature_HasPCLMULBit, Feature_NoVLX_Or_NoVPCLMULQDQBit, }, |
| 923 | {Feature_HasAVX10_2Bit, Feature_HasMOVRSBit, Feature_In64BitModeBit, }, |
| 924 | {Feature_HasAVX10_2_512Bit, Feature_HasMOVRSBit, Feature_In64BitModeBit, }, |
| 925 | {Feature_HasAVX512Bit, Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 926 | {Feature_HasAVX512Bit, Feature_HasEVEX512Bit, Feature_NoVLXBit, }, |
| 927 | {Feature_HasBITALGBit, Feature_HasEVEX512Bit, Feature_NoVLXBit, }, |
| 928 | {Feature_HasBWIBit, Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 929 | {Feature_HasBWIBit, Feature_HasEVEX512Bit, Feature_NoVLXBit, }, |
| 930 | {Feature_HasCDIBit, Feature_HasEVEX512Bit, Feature_NoVLXBit, }, |
| 931 | {Feature_HasCRC32Bit, Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 932 | {Feature_HasDQIBit, Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 933 | {Feature_HasDQIBit, Feature_HasEVEX512Bit, Feature_NoVLXBit, }, |
| 934 | {Feature_HasDQIBit, Feature_HasVLXBit, Feature_NoBWIBit, }, |
| 935 | {Feature_HasEGPRBit, Feature_HasMOVBEBit, Feature_In64BitModeBit, }, |
| 936 | {Feature_HasEGPRBit, Feature_HasMOVDIR64BBit, Feature_In64BitModeBit, }, |
| 937 | {Feature_HasEGPRBit, Feature_HasMOVDIRIBit, Feature_In64BitModeBit, }, |
| 938 | {Feature_HasEGPRBit, Feature_HasMOVRSBit, Feature_In64BitModeBit, }, |
| 939 | {Feature_HasEGPRBit, Feature_HasUSERMSRBit, Feature_In64BitModeBit, }, |
| 940 | {Feature_HasEVEX512Bit, Feature_HasVPOPCNTDQBit, Feature_NoVLXBit, }, |
| 941 | {Feature_HasFMABit, Feature_NoAVX512Bit, Feature_NoFMA4Bit, }, |
| 942 | {Feature_HasFMABit, Feature_NoFMA4Bit, Feature_NoVLXBit, }, |
| 943 | {Feature_HasMOVBEBit, Feature_HasNDDBit, Feature_In64BitModeBit, }, |
| 944 | {Feature_HasMOVDIR64BBit, Feature_In64BitModeBit, Feature_NoEGPRBit, }, |
| 945 | {Feature_HasMOVDIRIBit, Feature_In64BitModeBit, Feature_NoEGPRBit, }, |
| 946 | {Feature_HasMOVRSBit, Feature_In64BitModeBit, Feature_NoEGPRBit, }, |
| 947 | }; |
| 948 | |
| 949 | // ComplexPattern predicates. |
| 950 | enum { |
| 951 | GICP_Invalid, |
| 952 | GICP_gi_addr, |
| 953 | }; |
| 954 | // See constructor for table contents |
| 955 | |
| 956 | X86InstructionSelector::ComplexMatcherMemFn |
| 957 | X86InstructionSelector::ComplexPredicateFns[] = { |
| 958 | nullptr, // GICP_Invalid |
| 959 | &X86InstructionSelector::selectAddr, // gi_addr |
| 960 | }; |
| 961 | |
| 962 | // PatFrag predicates. |
| 963 | enum { |
| 964 | GICXXPred_MI_Predicate_alignedload = GICXXPred_Invalid + 1, |
| 965 | GICXXPred_MI_Predicate_alignedstore, |
| 966 | GICXXPred_MI_Predicate_imm_su, |
| 967 | GICXXPred_MI_Predicate_loadi8, |
| 968 | GICXXPred_MI_Predicate_loadi16, |
| 969 | GICXXPred_MI_Predicate_loadi32, |
| 970 | }; |
| 971 | bool X86InstructionSelector::testMIPredicate_MI(unsigned PredicateID, const MachineInstr & MI, const MatcherState &State) const { |
| 972 | const MachineFunction &MF = *MI.getParent()->getParent(); |
| 973 | const MachineRegisterInfo &MRI = MF.getRegInfo(); |
| 974 | const auto &Operands = State.RecordedOperands; |
| 975 | (void)Operands; |
| 976 | (void)MRI; |
| 977 | switch (PredicateID) { |
| 978 | case GICXXPred_MI_Predicate_alignedload: { |
| 979 | |
| 980 | auto &LdSt = cast<GLoadStore>(MI); |
| 981 | return LdSt.getAlign() >= LdSt.getMemSize().getValue(); |
| 982 | |
| 983 | llvm_unreachable("alignedload should have returned" ); |
| 984 | } |
| 985 | case GICXXPred_MI_Predicate_alignedstore: { |
| 986 | |
| 987 | auto &LdSt = cast<GLoadStore>(MI); |
| 988 | return LdSt.getAlign() >= LdSt.getMemSize().getValue(); |
| 989 | |
| 990 | llvm_unreachable("alignedstore should have returned" ); |
| 991 | } |
| 992 | case GICXXPred_MI_Predicate_imm_su: { |
| 993 | return true; |
| 994 | } |
| 995 | case GICXXPred_MI_Predicate_loadi8: { |
| 996 | return isa<GLoad>(MI); |
| 997 | } |
| 998 | case GICXXPred_MI_Predicate_loadi16: { |
| 999 | |
| 1000 | auto &Load = cast<GLoad>(MI); |
| 1001 | LLT Ty = MRI.getType(Load.getDstReg()); |
| 1002 | // Non extending load has MMO and destination types of the same size |
| 1003 | if (Load.getMemSizeInBits() == Ty.getSizeInBits()) |
| 1004 | return true; |
| 1005 | return Load.getAlign() >= 2 && Load.isSimple(); |
| 1006 | |
| 1007 | llvm_unreachable("loadi16 should have returned" ); |
| 1008 | } |
| 1009 | case GICXXPred_MI_Predicate_loadi32: { |
| 1010 | |
| 1011 | auto &Load = cast<GLoad>(MI); |
| 1012 | LLT Ty = MRI.getType(Load.getDstReg()); |
| 1013 | // Non extending load has MMO and destination types of the same size |
| 1014 | if (Load.getMemSizeInBits() == Ty.getSizeInBits()) |
| 1015 | return true; |
| 1016 | return Load.getAlign() >= 4 && Load.isSimple(); |
| 1017 | |
| 1018 | llvm_unreachable("loadi32 should have returned" ); |
| 1019 | } |
| 1020 | } |
| 1021 | llvm_unreachable("Unknown predicate" ); |
| 1022 | return false; |
| 1023 | } |
| 1024 | // PatFrag predicates. |
| 1025 | bool X86InstructionSelector::testMOPredicate_MO(unsigned PredicateID, const MachineOperand & MO, const MatcherState &State) const { |
| 1026 | const auto &Operands = State.RecordedOperands; |
| 1027 | Register Reg = MO.getReg(); |
| 1028 | (void)Operands; |
| 1029 | (void)Reg; |
| 1030 | llvm_unreachable("Unknown predicate" ); |
| 1031 | return false; |
| 1032 | } |
| 1033 | // PatFrag predicates. |
| 1034 | enum { |
| 1035 | GICXXPred_I64_Predicate_AndMask64 = GICXXPred_Invalid + 1, |
| 1036 | GICXXPred_I64_Predicate_BTCBTSMask64, |
| 1037 | GICXXPred_I64_Predicate_BTRMask64, |
| 1038 | GICXXPred_I64_Predicate_i16immSExt8, |
| 1039 | GICXXPred_I64_Predicate_i32immSExt8, |
| 1040 | GICXXPred_I64_Predicate_i64immSExt8, |
| 1041 | GICXXPred_I64_Predicate_i64immSExt32, |
| 1042 | GICXXPred_I64_Predicate_i64immZExt32, |
| 1043 | GICXXPred_I64_Predicate_i64immZExt32SExt8, |
| 1044 | GICXXPred_I64_Predicate_i64timmSExt32, |
| 1045 | GICXXPred_I64_Predicate_immff00_ffff, |
| 1046 | }; |
| 1047 | bool X86InstructionSelector::testImmPredicate_I64(unsigned PredicateID, int64_t Imm) const { |
| 1048 | switch (PredicateID) { |
| 1049 | case GICXXPred_I64_Predicate_AndMask64: { |
| 1050 | |
| 1051 | return isMask_64(Imm) && !isUInt<32>(Imm); |
| 1052 | |
| 1053 | } |
| 1054 | case GICXXPred_I64_Predicate_BTCBTSMask64: { |
| 1055 | |
| 1056 | return !isInt<32>(Imm) && isPowerOf2_64(Imm); |
| 1057 | |
| 1058 | } |
| 1059 | case GICXXPred_I64_Predicate_BTRMask64: { |
| 1060 | |
| 1061 | return !isUInt<32>(Imm) && !isInt<32>(Imm) && isPowerOf2_64(~Imm); |
| 1062 | |
| 1063 | } |
| 1064 | case GICXXPred_I64_Predicate_i16immSExt8: { |
| 1065 | return isInt<8>(Imm); |
| 1066 | } |
| 1067 | case GICXXPred_I64_Predicate_i32immSExt8: { |
| 1068 | return isInt<8>(Imm); |
| 1069 | } |
| 1070 | case GICXXPred_I64_Predicate_i64immSExt8: { |
| 1071 | return isInt<8>(Imm); |
| 1072 | } |
| 1073 | case GICXXPred_I64_Predicate_i64immSExt32: { |
| 1074 | return isInt<32>(Imm); |
| 1075 | } |
| 1076 | case GICXXPred_I64_Predicate_i64immZExt32: { |
| 1077 | return isUInt<32>(Imm); |
| 1078 | } |
| 1079 | case GICXXPred_I64_Predicate_i64immZExt32SExt8: { |
| 1080 | |
| 1081 | return isUInt<32>(Imm) && isInt<8>(static_cast<int32_t>(Imm)); |
| 1082 | |
| 1083 | } |
| 1084 | case GICXXPred_I64_Predicate_i64timmSExt32: { |
| 1085 | return isInt<32>(Imm); |
| 1086 | } |
| 1087 | case GICXXPred_I64_Predicate_immff00_ffff: { |
| 1088 | |
| 1089 | return Imm >= 0xff00 && Imm <= 0xffff; |
| 1090 | |
| 1091 | } |
| 1092 | } |
| 1093 | llvm_unreachable("Unknown predicate" ); |
| 1094 | return false; |
| 1095 | } |
| 1096 | // PatFrag predicates. |
| 1097 | enum { |
| 1098 | GICXXPred_APFloat_Predicate_fpimm0 = GICXXPred_Invalid + 1, |
| 1099 | GICXXPred_APFloat_Predicate_fpimm1, |
| 1100 | GICXXPred_APFloat_Predicate_fpimmneg0, |
| 1101 | GICXXPred_APFloat_Predicate_fpimmneg1, |
| 1102 | }; |
| 1103 | bool X86InstructionSelector::testImmPredicate_APFloat(unsigned PredicateID, const APFloat & Imm) const { |
| 1104 | switch (PredicateID) { |
| 1105 | case GICXXPred_APFloat_Predicate_fpimm0: { |
| 1106 | |
| 1107 | return Imm.isExactlyValue(+0.0); |
| 1108 | |
| 1109 | } |
| 1110 | case GICXXPred_APFloat_Predicate_fpimm1: { |
| 1111 | |
| 1112 | return Imm.isExactlyValue(+1.0); |
| 1113 | |
| 1114 | } |
| 1115 | case GICXXPred_APFloat_Predicate_fpimmneg0: { |
| 1116 | |
| 1117 | return Imm.isExactlyValue(-0.0); |
| 1118 | |
| 1119 | } |
| 1120 | case GICXXPred_APFloat_Predicate_fpimmneg1: { |
| 1121 | |
| 1122 | return Imm.isExactlyValue(-1.0); |
| 1123 | |
| 1124 | } |
| 1125 | } |
| 1126 | llvm_unreachable("Unknown predicate" ); |
| 1127 | return false; |
| 1128 | } |
| 1129 | // PatFrag predicates. |
| 1130 | bool X86InstructionSelector::testImmPredicate_APInt(unsigned PredicateID, const APInt & Imm) const { |
| 1131 | llvm_unreachable("Unknown predicate" ); |
| 1132 | return false; |
| 1133 | } |
| 1134 | bool X86InstructionSelector::testSimplePredicate(unsigned) const { |
| 1135 | llvm_unreachable("X86InstructionSelector does not support simple predicates!" ); |
| 1136 | return false; |
| 1137 | } |
| 1138 | // Custom renderers. |
| 1139 | enum { |
| 1140 | GICR_Invalid, |
| 1141 | }; |
| 1142 | X86InstructionSelector::CustomRendererFn |
| 1143 | X86InstructionSelector::CustomRenderers[] = { |
| 1144 | nullptr, // GICR_Invalid |
| 1145 | }; |
| 1146 | |
| 1147 | bool X86InstructionSelector::selectImpl(MachineInstr &I, CodeGenCoverage &CoverageInfo) const { |
| 1148 | const PredicateBitset AvailableFeatures = getAvailableFeatures(); |
| 1149 | MachineIRBuilder B(I); |
| 1150 | State.MIs.clear(); |
| 1151 | State.MIs.push_back(&I); |
| 1152 | |
| 1153 | if (executeMatchTable(*this, State, ExecInfo, B, getMatchTable(), TII, MF->getRegInfo(), TRI, RBI, AvailableFeatures, &CoverageInfo)) { |
| 1154 | return true; |
| 1155 | } |
| 1156 | |
| 1157 | return false; |
| 1158 | } |
| 1159 | |
| 1160 | bool X86InstructionSelector::runCustomAction(unsigned, const MatcherState&, NewMIVector &) const { |
| 1161 | llvm_unreachable("X86InstructionSelector does not support custom C++ actions!" ); |
| 1162 | } |
| 1163 | #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ |
| 1164 | #define GIMT_Encode2(Val) uint8_t(Val), uint8_t((uint16_t)Val >> 8) |
| 1165 | #define GIMT_Encode4(Val) uint8_t(Val), uint8_t((uint32_t)Val >> 8), uint8_t((uint32_t)Val >> 16), uint8_t((uint32_t)Val >> 24) |
| 1166 | #define GIMT_Encode8(Val) uint8_t(Val), uint8_t((uint64_t)Val >> 8), uint8_t((uint64_t)Val >> 16), uint8_t((uint64_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) |
| 1167 | #else |
| 1168 | #define GIMT_Encode2(Val) uint8_t((uint16_t)Val >> 8), uint8_t(Val) |
| 1169 | #define GIMT_Encode4(Val) uint8_t((uint32_t)Val >> 24), uint8_t((uint32_t)Val >> 16), uint8_t((uint32_t)Val >> 8), uint8_t(Val) |
| 1170 | #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((uint64_t)Val >> 24), uint8_t((uint64_t)Val >> 16), uint8_t((uint64_t)Val >> 8), uint8_t(Val) |
| 1171 | #endif |
| 1172 | const uint8_t *X86InstructionSelector::getMatchTable() const { |
| 1173 | constexpr static uint8_t MatchTable0[] = { |
| 1174 | /* 0 */ GIM_SwitchOpcode, /*MI*/0, /*[*/GIMT_Encode2(53), GIMT_Encode2(341), /*)*//*default:*//*Label 79*/ GIMT_Encode4(236799), |
| 1175 | /* 10 */ /*TargetOpcode::G_ADD*//*Label 0*/ GIMT_Encode4(1162), |
| 1176 | /* 14 */ /*TargetOpcode::G_SUB*//*Label 1*/ GIMT_Encode4(7395), |
| 1177 | /* 18 */ /*TargetOpcode::G_MUL*//*Label 2*/ GIMT_Encode4(10931), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1178 | /* 46 */ /*TargetOpcode::G_AND*//*Label 3*/ GIMT_Encode4(14714), |
| 1179 | /* 50 */ /*TargetOpcode::G_OR*//*Label 4*/ GIMT_Encode4(25306), |
| 1180 | /* 54 */ /*TargetOpcode::G_XOR*//*Label 5*/ GIMT_Encode4(33710), 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), |
| 1181 | /* 114 */ /*TargetOpcode::G_CONCAT_VECTORS*//*Label 6*/ GIMT_Encode4(46411), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1182 | /* 126 */ /*TargetOpcode::G_BITCAST*//*Label 7*/ GIMT_Encode4(46578), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1183 | /* 150 */ /*TargetOpcode::G_INTRINSIC_LRINT*//*Label 8*/ GIMT_Encode4(48868), |
| 1184 | /* 154 */ /*TargetOpcode::G_INTRINSIC_LLRINT*//*Label 9*/ GIMT_Encode4(52046), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1185 | /* 170 */ /*TargetOpcode::G_LOAD*//*Label 10*/ GIMT_Encode4(53266), |
| 1186 | /* 174 */ /*TargetOpcode::G_SEXTLOAD*//*Label 11*/ GIMT_Encode4(59491), |
| 1187 | /* 178 */ /*TargetOpcode::G_ZEXTLOAD*//*Label 12*/ GIMT_Encode4(59824), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1188 | /* 194 */ /*TargetOpcode::G_STORE*//*Label 13*/ GIMT_Encode4(60479), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1189 | /* 210 */ /*TargetOpcode::G_ATOMICRMW_XCHG*//*Label 14*/ GIMT_Encode4(85942), |
| 1190 | /* 214 */ /*TargetOpcode::G_ATOMICRMW_ADD*//*Label 15*/ GIMT_Encode4(86178), 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), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1191 | /* 298 */ /*TargetOpcode::G_PREFETCH*//*Label 16*/ GIMT_Encode4(86426), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1192 | /* 314 */ /*TargetOpcode::G_INTRINSIC*//*Label 17*/ GIMT_Encode4(86745), |
| 1193 | /* 318 */ /*TargetOpcode::G_INTRINSIC_W_SIDE_EFFECTS*//*Label 18*/ GIMT_Encode4(100571), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1194 | /* 330 */ /*TargetOpcode::G_ANYEXT*//*Label 19*/ GIMT_Encode4(109646), |
| 1195 | /* 334 */ /*TargetOpcode::G_TRUNC*//*Label 20*/ GIMT_Encode4(110081), |
| 1196 | /* 338 */ /*TargetOpcode::G_CONSTANT*//*Label 21*/ GIMT_Encode4(111170), |
| 1197 | /* 342 */ /*TargetOpcode::G_FCONSTANT*//*Label 22*/ GIMT_Encode4(111776), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1198 | /* 354 */ /*TargetOpcode::G_SEXT*//*Label 23*/ GIMT_Encode4(112229), |
| 1199 | /* 358 */ /*TargetOpcode::G_SEXT_INREG*//*Label 24*/ GIMT_Encode4(113901), |
| 1200 | /* 362 */ /*TargetOpcode::G_ZEXT*//*Label 25*/ GIMT_Encode4(114143), |
| 1201 | /* 366 */ /*TargetOpcode::G_SHL*//*Label 26*/ GIMT_Encode4(116127), |
| 1202 | /* 370 */ /*TargetOpcode::G_LSHR*//*Label 27*/ GIMT_Encode4(118411), |
| 1203 | /* 374 */ /*TargetOpcode::G_ASHR*//*Label 28*/ GIMT_Encode4(120455), |
| 1204 | /* 378 */ /*TargetOpcode::G_FSHL*//*Label 29*/ GIMT_Encode4(122499), |
| 1205 | /* 382 */ /*TargetOpcode::G_FSHR*//*Label 30*/ GIMT_Encode4(123227), |
| 1206 | /* 386 */ /*TargetOpcode::G_ROTR*//*Label 31*/ GIMT_Encode4(123915), |
| 1207 | /* 390 */ /*TargetOpcode::G_ROTL*//*Label 32*/ GIMT_Encode4(127413), |
| 1208 | /* 394 */ /*TargetOpcode::G_ICMP*//*Label 33*/ GIMT_Encode4(131133), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1209 | /* 410 */ /*TargetOpcode::G_SELECT*//*Label 34*/ GIMT_Encode4(132790), 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), |
| 1210 | /* 454 */ /*TargetOpcode::G_UMULH*//*Label 35*/ GIMT_Encode4(140456), |
| 1211 | /* 458 */ /*TargetOpcode::G_SMULH*//*Label 36*/ GIMT_Encode4(141321), |
| 1212 | /* 462 */ /*TargetOpcode::G_UADDSAT*//*Label 37*/ GIMT_Encode4(142186), |
| 1213 | /* 466 */ /*TargetOpcode::G_SADDSAT*//*Label 38*/ GIMT_Encode4(143872), |
| 1214 | /* 470 */ /*TargetOpcode::G_USUBSAT*//*Label 39*/ GIMT_Encode4(145558), |
| 1215 | /* 474 */ /*TargetOpcode::G_SSUBSAT*//*Label 40*/ GIMT_Encode4(146624), 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), |
| 1216 | /* 518 */ /*TargetOpcode::G_FADD*//*Label 41*/ GIMT_Encode4(147690), |
| 1217 | /* 522 */ /*TargetOpcode::G_FSUB*//*Label 42*/ GIMT_Encode4(153604), |
| 1218 | /* 526 */ /*TargetOpcode::G_FMUL*//*Label 43*/ GIMT_Encode4(157786), |
| 1219 | /* 530 */ /*TargetOpcode::G_FMA*//*Label 44*/ GIMT_Encode4(163700), GIMT_Encode4(0), |
| 1220 | /* 538 */ /*TargetOpcode::G_FDIV*//*Label 45*/ GIMT_Encode4(169688), 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), |
| 1221 | /* 586 */ /*TargetOpcode::G_FNEG*//*Label 46*/ GIMT_Encode4(173870), |
| 1222 | /* 590 */ /*TargetOpcode::G_FPEXT*//*Label 47*/ GIMT_Encode4(173993), |
| 1223 | /* 594 */ /*TargetOpcode::G_FPTRUNC*//*Label 48*/ GIMT_Encode4(174925), |
| 1224 | /* 598 */ /*TargetOpcode::G_FPTOSI*//*Label 49*/ GIMT_Encode4(175311), |
| 1225 | /* 602 */ /*TargetOpcode::G_FPTOUI*//*Label 50*/ GIMT_Encode4(176692), |
| 1226 | /* 606 */ /*TargetOpcode::G_SITOFP*//*Label 51*/ GIMT_Encode4(177248), |
| 1227 | /* 610 */ /*TargetOpcode::G_UITOFP*//*Label 52*/ GIMT_Encode4(180624), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1228 | /* 622 */ /*TargetOpcode::G_FABS*//*Label 53*/ GIMT_Encode4(182871), 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), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1229 | /* 702 */ /*TargetOpcode::G_SMIN*//*Label 54*/ GIMT_Encode4(182994), |
| 1230 | /* 706 */ /*TargetOpcode::G_SMAX*//*Label 55*/ GIMT_Encode4(186315), |
| 1231 | /* 710 */ /*TargetOpcode::G_UMIN*//*Label 56*/ GIMT_Encode4(189636), |
| 1232 | /* 714 */ /*TargetOpcode::G_UMAX*//*Label 57*/ GIMT_Encode4(192957), |
| 1233 | /* 718 */ /*TargetOpcode::G_ABS*//*Label 58*/ GIMT_Encode4(196278), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1234 | /* 730 */ /*TargetOpcode::G_BR*//*Label 59*/ GIMT_Encode4(198159), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1235 | /* 746 */ /*TargetOpcode::G_EXTRACT_SUBVECTOR*//*Label 60*/ GIMT_Encode4(198175), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1236 | /* 770 */ /*TargetOpcode::G_VECTOR_COMPRESS*//*Label 61*/ GIMT_Encode4(201104), |
| 1237 | /* 774 */ /*TargetOpcode::G_CTTZ*//*Label 62*/ GIMT_Encode4(203086), |
| 1238 | /* 778 */ /*TargetOpcode::G_CTTZ_ZERO_UNDEF*//*Label 63*/ GIMT_Encode4(203392), |
| 1239 | /* 782 */ /*TargetOpcode::G_CTLZ*//*Label 64*/ GIMT_Encode4(203779), GIMT_Encode4(0), |
| 1240 | /* 790 */ /*TargetOpcode::G_CTPOP*//*Label 65*/ GIMT_Encode4(205083), |
| 1241 | /* 794 */ /*TargetOpcode::G_BSWAP*//*Label 66*/ GIMT_Encode4(207345), 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), |
| 1242 | /* 850 */ /*TargetOpcode::G_FSQRT*//*Label 67*/ GIMT_Encode4(207845), 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), |
| 1243 | /* 890 */ /*TargetOpcode::G_STRICT_FADD*//*Label 68*/ GIMT_Encode4(210014), |
| 1244 | /* 894 */ /*TargetOpcode::G_STRICT_FSUB*//*Label 69*/ GIMT_Encode4(214944), |
| 1245 | /* 898 */ /*TargetOpcode::G_STRICT_FMUL*//*Label 70*/ GIMT_Encode4(218634), |
| 1246 | /* 902 */ /*TargetOpcode::G_STRICT_FDIV*//*Label 71*/ GIMT_Encode4(223564), GIMT_Encode4(0), |
| 1247 | /* 910 */ /*TargetOpcode::G_STRICT_FMA*//*Label 72*/ GIMT_Encode4(227254), |
| 1248 | /* 914 */ /*TargetOpcode::G_STRICT_FSQRT*//*Label 73*/ GIMT_Encode4(233242), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1249 | /* 950 */ /*TargetOpcode::G_TRAP*//*Label 74*/ GIMT_Encode4(235411), |
| 1250 | /* 954 */ /*TargetOpcode::G_DEBUGTRAP*//*Label 75*/ GIMT_Encode4(235424), |
| 1251 | /* 958 */ /*TargetOpcode::G_UBSANTRAP*//*Label 76*/ GIMT_Encode4(235460), 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), 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), 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), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1252 | /* 1154 */ /*X86::G_FILD*//*Label 77*/ GIMT_Encode4(235476), |
| 1253 | /* 1158 */ /*X86::G_FIST*//*Label 78*/ GIMT_Encode4(235935), |
| 1254 | /* 1162 */ // Label 0: @1162 |
| 1255 | /* 1162 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(25), /*)*//*default:*//*Label 96*/ GIMT_Encode4(7394), |
| 1256 | /* 1173 */ /*GILLT_s8*//*Label 80*/ GIMT_Encode4(1269), |
| 1257 | /* 1177 */ /*GILLT_s16*//*Label 81*/ GIMT_Encode4(1774), |
| 1258 | /* 1181 */ /*GILLT_s32*//*Label 82*/ GIMT_Encode4(2424), |
| 1259 | /* 1185 */ /*GILLT_s64*//*Label 83*/ GIMT_Encode4(3074), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1260 | /* 1201 */ /*GILLT_v2s64*//*Label 84*/ GIMT_Encode4(3898), GIMT_Encode4(0), |
| 1261 | /* 1209 */ /*GILLT_v4s32*//*Label 85*/ GIMT_Encode4(4240), |
| 1262 | /* 1213 */ /*GILLT_v4s64*//*Label 86*/ GIMT_Encode4(4704), GIMT_Encode4(0), |
| 1263 | /* 1221 */ /*GILLT_v8s16*//*Label 87*/ GIMT_Encode4(5019), |
| 1264 | /* 1225 */ /*GILLT_v8s32*//*Label 88*/ GIMT_Encode4(5483), |
| 1265 | /* 1229 */ /*GILLT_v8s64*//*Label 89*/ GIMT_Encode4(5798), GIMT_Encode4(0), |
| 1266 | /* 1237 */ /*GILLT_v16s8*//*Label 90*/ GIMT_Encode4(5954), |
| 1267 | /* 1241 */ /*GILLT_v16s16*//*Label 91*/ GIMT_Encode4(6296), |
| 1268 | /* 1245 */ /*GILLT_v16s32*//*Label 92*/ GIMT_Encode4(6611), GIMT_Encode4(0), |
| 1269 | /* 1253 */ /*GILLT_v32s8*//*Label 93*/ GIMT_Encode4(6767), |
| 1270 | /* 1257 */ /*GILLT_v32s16*//*Label 94*/ GIMT_Encode4(7082), GIMT_Encode4(0), |
| 1271 | /* 1265 */ /*GILLT_v64s8*//*Label 95*/ GIMT_Encode4(7238), |
| 1272 | /* 1269 */ // Label 80: @1269 |
| 1273 | /* 1269 */ GIM_Try, /*On fail goto*//*Label 97*/ GIMT_Encode4(1773), |
| 1274 | /* 1274 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 1275 | /* 1277 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 1276 | /* 1280 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1277 | /* 1284 */ GIM_Try, /*On fail goto*//*Label 98*/ GIMT_Encode4(1345), // Rule ID 26054 // |
| 1278 | /* 1289 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1279 | /* 1292 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1280 | /* 1296 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1281 | /* 1300 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1282 | /* 1303 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1283 | /* 1307 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 1284 | /* 1311 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1285 | /* 1315 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1286 | /* 1317 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1287 | /* 1324 */ // (add:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, GR8:{ *:[i8] }:$src1) => (ADD8rm:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1288 | /* 1324 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8rm), |
| 1289 | /* 1327 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1290 | /* 1329 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 1291 | /* 1331 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1292 | /* 1335 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1293 | /* 1338 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1294 | /* 1343 */ GIR_RootConstrainSelectedInstOperands, |
| 1295 | /* 1344 */ // GIR_Coverage, 26054, |
| 1296 | /* 1344 */ GIR_EraseRootFromParent_Done, |
| 1297 | /* 1345 */ // Label 98: @1345 |
| 1298 | /* 1345 */ GIM_Try, /*On fail goto*//*Label 99*/ GIMT_Encode4(1406), // Rule ID 26073 // |
| 1299 | /* 1350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1300 | /* 1353 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1301 | /* 1357 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1302 | /* 1361 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1303 | /* 1364 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1304 | /* 1368 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 1305 | /* 1372 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1306 | /* 1376 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1307 | /* 1378 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1308 | /* 1385 */ // (add:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, GR8:{ *:[i8] }:$src1) => (ADD8rm_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1309 | /* 1385 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8rm_ND), |
| 1310 | /* 1388 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1311 | /* 1390 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 1312 | /* 1392 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1313 | /* 1396 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1314 | /* 1399 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1315 | /* 1404 */ GIR_RootConstrainSelectedInstOperands, |
| 1316 | /* 1405 */ // GIR_Coverage, 26073, |
| 1317 | /* 1405 */ GIR_EraseRootFromParent_Done, |
| 1318 | /* 1406 */ // Label 99: @1406 |
| 1319 | /* 1406 */ GIM_Try, /*On fail goto*//*Label 100*/ GIMT_Encode4(1467), // Rule ID 22796 // |
| 1320 | /* 1411 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1321 | /* 1414 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1322 | /* 1418 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1323 | /* 1422 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1324 | /* 1426 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1325 | /* 1429 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1326 | /* 1433 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 1327 | /* 1437 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1328 | /* 1439 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1329 | /* 1446 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>) => (ADD8rm:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1330 | /* 1446 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8rm), |
| 1331 | /* 1449 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1332 | /* 1451 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1333 | /* 1453 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1334 | /* 1457 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1335 | /* 1460 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1336 | /* 1465 */ GIR_RootConstrainSelectedInstOperands, |
| 1337 | /* 1466 */ // GIR_Coverage, 22796, |
| 1338 | /* 1466 */ GIR_EraseRootFromParent_Done, |
| 1339 | /* 1467 */ // Label 100: @1467 |
| 1340 | /* 1467 */ GIM_Try, /*On fail goto*//*Label 101*/ GIMT_Encode4(1528), // Rule ID 22886 // |
| 1341 | /* 1472 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1342 | /* 1475 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1343 | /* 1479 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1344 | /* 1483 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1345 | /* 1487 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1346 | /* 1490 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1347 | /* 1494 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 1348 | /* 1498 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1349 | /* 1500 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1350 | /* 1507 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>) => (ADD8rm_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1351 | /* 1507 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8rm_ND), |
| 1352 | /* 1510 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1353 | /* 1512 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1354 | /* 1514 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1355 | /* 1518 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1356 | /* 1521 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1357 | /* 1526 */ GIR_RootConstrainSelectedInstOperands, |
| 1358 | /* 1527 */ // GIR_Coverage, 22886, |
| 1359 | /* 1527 */ GIR_EraseRootFromParent_Done, |
| 1360 | /* 1528 */ // Label 101: @1528 |
| 1361 | /* 1528 */ GIM_Try, /*On fail goto*//*Label 102*/ GIMT_Encode4(1556), // Rule ID 22862 // |
| 1362 | /* 1533 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1363 | /* 1536 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1364 | /* 1540 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1365 | /* 1544 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src, 1:{ *:[i8] }) => (INC8r:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 1366 | /* 1544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC8r), |
| 1367 | /* 1547 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1368 | /* 1549 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1369 | /* 1551 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1370 | /* 1554 */ GIR_RootConstrainSelectedInstOperands, |
| 1371 | /* 1555 */ // GIR_Coverage, 22862, |
| 1372 | /* 1555 */ GIR_EraseRootFromParent_Done, |
| 1373 | /* 1556 */ // Label 102: @1556 |
| 1374 | /* 1556 */ GIM_Try, /*On fail goto*//*Label 103*/ GIMT_Encode4(1584), // Rule ID 22866 // |
| 1375 | /* 1561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1376 | /* 1564 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1377 | /* 1568 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 1378 | /* 1572 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src, -1:{ *:[i8] }) => (DEC8r:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 1379 | /* 1572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC8r), |
| 1380 | /* 1575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1381 | /* 1577 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1382 | /* 1579 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1383 | /* 1582 */ GIR_RootConstrainSelectedInstOperands, |
| 1384 | /* 1583 */ // GIR_Coverage, 22866, |
| 1385 | /* 1583 */ GIR_EraseRootFromParent_Done, |
| 1386 | /* 1584 */ // Label 103: @1584 |
| 1387 | /* 1584 */ GIM_Try, /*On fail goto*//*Label 104*/ GIMT_Encode4(1612), // Rule ID 22952 // |
| 1388 | /* 1589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1389 | /* 1592 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1390 | /* 1596 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1391 | /* 1600 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src, 1:{ *:[i8] }) => (INC8r_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 1392 | /* 1600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC8r_ND), |
| 1393 | /* 1603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1394 | /* 1605 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1395 | /* 1607 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1396 | /* 1610 */ GIR_RootConstrainSelectedInstOperands, |
| 1397 | /* 1611 */ // GIR_Coverage, 22952, |
| 1398 | /* 1611 */ GIR_EraseRootFromParent_Done, |
| 1399 | /* 1612 */ // Label 104: @1612 |
| 1400 | /* 1612 */ GIM_Try, /*On fail goto*//*Label 105*/ GIMT_Encode4(1640), // Rule ID 22956 // |
| 1401 | /* 1617 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1402 | /* 1620 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1403 | /* 1624 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 1404 | /* 1628 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src, -1:{ *:[i8] }) => (DEC8r_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 1405 | /* 1628 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC8r_ND), |
| 1406 | /* 1631 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1407 | /* 1633 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1408 | /* 1635 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1409 | /* 1638 */ GIR_RootConstrainSelectedInstOperands, |
| 1410 | /* 1639 */ // GIR_Coverage, 22956, |
| 1411 | /* 1639 */ GIR_EraseRootFromParent_Done, |
| 1412 | /* 1640 */ // Label 105: @1640 |
| 1413 | /* 1640 */ GIM_Try, /*On fail goto*//*Label 106*/ GIMT_Encode4(1677), // Rule ID 22800 // |
| 1414 | /* 1645 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1415 | /* 1648 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1416 | /* 1652 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1417 | /* 1656 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1418 | /* 1660 */ // MIs[1] Operand 1 |
| 1419 | /* 1660 */ // No operand predicates |
| 1420 | /* 1660 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1421 | /* 1662 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ADD8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 1422 | /* 1662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8ri), |
| 1423 | /* 1665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1424 | /* 1667 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1425 | /* 1669 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1426 | /* 1672 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1427 | /* 1675 */ GIR_RootConstrainSelectedInstOperands, |
| 1428 | /* 1676 */ // GIR_Coverage, 22800, |
| 1429 | /* 1676 */ GIR_EraseRootFromParent_Done, |
| 1430 | /* 1677 */ // Label 106: @1677 |
| 1431 | /* 1677 */ GIM_Try, /*On fail goto*//*Label 107*/ GIMT_Encode4(1714), // Rule ID 22890 // |
| 1432 | /* 1682 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1433 | /* 1685 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1434 | /* 1689 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1435 | /* 1693 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1436 | /* 1697 */ // MIs[1] Operand 1 |
| 1437 | /* 1697 */ // No operand predicates |
| 1438 | /* 1697 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1439 | /* 1699 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ADD8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 1440 | /* 1699 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8ri_ND), |
| 1441 | /* 1702 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1442 | /* 1704 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1443 | /* 1706 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1444 | /* 1709 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1445 | /* 1712 */ GIR_RootConstrainSelectedInstOperands, |
| 1446 | /* 1713 */ // GIR_Coverage, 22890, |
| 1447 | /* 1713 */ GIR_EraseRootFromParent_Done, |
| 1448 | /* 1714 */ // Label 107: @1714 |
| 1449 | /* 1714 */ GIM_Try, /*On fail goto*//*Label 108*/ GIMT_Encode4(1743), // Rule ID 22792 // |
| 1450 | /* 1719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1451 | /* 1722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1452 | /* 1726 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1453 | /* 1730 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (ADD8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 1454 | /* 1730 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD8rr), |
| 1455 | /* 1735 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 1456 | /* 1741 */ GIR_RootConstrainSelectedInstOperands, |
| 1457 | /* 1742 */ // GIR_Coverage, 22792, |
| 1458 | /* 1742 */ GIR_Done, |
| 1459 | /* 1743 */ // Label 108: @1743 |
| 1460 | /* 1743 */ GIM_Try, /*On fail goto*//*Label 109*/ GIMT_Encode4(1772), // Rule ID 22882 // |
| 1461 | /* 1748 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1462 | /* 1751 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1463 | /* 1755 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1464 | /* 1759 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (ADD8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 1465 | /* 1759 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD8rr_ND), |
| 1466 | /* 1764 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 1467 | /* 1770 */ GIR_RootConstrainSelectedInstOperands, |
| 1468 | /* 1771 */ // GIR_Coverage, 22882, |
| 1469 | /* 1771 */ GIR_Done, |
| 1470 | /* 1772 */ // Label 109: @1772 |
| 1471 | /* 1772 */ GIM_Reject, |
| 1472 | /* 1773 */ // Label 97: @1773 |
| 1473 | /* 1773 */ GIM_Reject, |
| 1474 | /* 1774 */ // Label 81: @1774 |
| 1475 | /* 1774 */ GIM_Try, /*On fail goto*//*Label 110*/ GIMT_Encode4(2423), |
| 1476 | /* 1779 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 1477 | /* 1782 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 1478 | /* 1785 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1479 | /* 1789 */ GIM_Try, /*On fail goto*//*Label 111*/ GIMT_Encode4(1858), // Rule ID 22617 // |
| 1480 | /* 1794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1481 | /* 1797 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1482 | /* 1801 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1483 | /* 1805 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1484 | /* 1808 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1485 | /* 1812 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 1486 | /* 1816 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1487 | /* 1827 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1488 | /* 1829 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1489 | /* 1836 */ // (add:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, 128:{ *:[i16] }) => (SUB16mi_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src, -128:{ *:[i16] }) |
| 1490 | /* 1836 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mi_ND), |
| 1491 | /* 1839 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1492 | /* 1841 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 1493 | /* 1845 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 1494 | /* 1848 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1495 | /* 1851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1496 | /* 1856 */ GIR_RootConstrainSelectedInstOperands, |
| 1497 | /* 1857 */ // GIR_Coverage, 22617, |
| 1498 | /* 1857 */ GIR_EraseRootFromParent_Done, |
| 1499 | /* 1858 */ // Label 111: @1858 |
| 1500 | /* 1858 */ GIM_Try, /*On fail goto*//*Label 112*/ GIMT_Encode4(1919), // Rule ID 26055 // |
| 1501 | /* 1863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1502 | /* 1866 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1503 | /* 1870 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1504 | /* 1874 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1505 | /* 1877 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1506 | /* 1881 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 1507 | /* 1885 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1508 | /* 1889 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1509 | /* 1891 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1510 | /* 1898 */ // (add:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, GR16:{ *:[i16] }:$src1) => (ADD16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1511 | /* 1898 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16rm), |
| 1512 | /* 1901 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1513 | /* 1903 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 1514 | /* 1905 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1515 | /* 1909 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1516 | /* 1912 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1517 | /* 1917 */ GIR_RootConstrainSelectedInstOperands, |
| 1518 | /* 1918 */ // GIR_Coverage, 26055, |
| 1519 | /* 1918 */ GIR_EraseRootFromParent_Done, |
| 1520 | /* 1919 */ // Label 112: @1919 |
| 1521 | /* 1919 */ GIM_Try, /*On fail goto*//*Label 113*/ GIMT_Encode4(1980), // Rule ID 26074 // |
| 1522 | /* 1924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1523 | /* 1927 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1524 | /* 1931 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1525 | /* 1935 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1526 | /* 1938 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1527 | /* 1942 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 1528 | /* 1946 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1529 | /* 1950 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1530 | /* 1952 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1531 | /* 1959 */ // (add:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, GR16:{ *:[i16] }:$src1) => (ADD16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1532 | /* 1959 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16rm_ND), |
| 1533 | /* 1962 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1534 | /* 1964 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 1535 | /* 1966 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1536 | /* 1970 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1537 | /* 1973 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1538 | /* 1978 */ GIR_RootConstrainSelectedInstOperands, |
| 1539 | /* 1979 */ // GIR_Coverage, 26074, |
| 1540 | /* 1979 */ GIR_EraseRootFromParent_Done, |
| 1541 | /* 1980 */ // Label 113: @1980 |
| 1542 | /* 1980 */ GIM_Try, /*On fail goto*//*Label 114*/ GIMT_Encode4(2041), // Rule ID 22797 // |
| 1543 | /* 1985 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1544 | /* 1988 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1545 | /* 1992 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1546 | /* 1996 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1547 | /* 2000 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1548 | /* 2003 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1549 | /* 2007 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 1550 | /* 2011 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1551 | /* 2013 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1552 | /* 2020 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (ADD16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1553 | /* 2020 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16rm), |
| 1554 | /* 2023 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1555 | /* 2025 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1556 | /* 2027 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1557 | /* 2031 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1558 | /* 2034 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1559 | /* 2039 */ GIR_RootConstrainSelectedInstOperands, |
| 1560 | /* 2040 */ // GIR_Coverage, 22797, |
| 1561 | /* 2040 */ GIR_EraseRootFromParent_Done, |
| 1562 | /* 2041 */ // Label 114: @2041 |
| 1563 | /* 2041 */ GIM_Try, /*On fail goto*//*Label 115*/ GIMT_Encode4(2102), // Rule ID 22887 // |
| 1564 | /* 2046 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1565 | /* 2049 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1566 | /* 2053 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1567 | /* 2057 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1568 | /* 2061 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1569 | /* 2064 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1570 | /* 2068 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 1571 | /* 2072 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1572 | /* 2074 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1573 | /* 2081 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (ADD16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1574 | /* 2081 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16rm_ND), |
| 1575 | /* 2084 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1576 | /* 2086 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1577 | /* 2088 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1578 | /* 2092 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1579 | /* 2095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1580 | /* 2100 */ GIR_RootConstrainSelectedInstOperands, |
| 1581 | /* 2101 */ // GIR_Coverage, 22887, |
| 1582 | /* 2101 */ GIR_EraseRootFromParent_Done, |
| 1583 | /* 2102 */ // Label 115: @2102 |
| 1584 | /* 2102 */ GIM_Try, /*On fail goto*//*Label 116*/ GIMT_Encode4(2140), // Rule ID 22602 // |
| 1585 | /* 2107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1586 | /* 2110 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1587 | /* 2114 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1588 | /* 2125 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, 128:{ *:[i16] }) => (SUB16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, -128:{ *:[i16] }) |
| 1589 | /* 2125 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16ri), |
| 1590 | /* 2128 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1591 | /* 2130 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1592 | /* 2132 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 1593 | /* 2135 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1594 | /* 2138 */ GIR_RootConstrainSelectedInstOperands, |
| 1595 | /* 2139 */ // GIR_Coverage, 22602, |
| 1596 | /* 2139 */ GIR_EraseRootFromParent_Done, |
| 1597 | /* 2140 */ // Label 116: @2140 |
| 1598 | /* 2140 */ GIM_Try, /*On fail goto*//*Label 117*/ GIMT_Encode4(2178), // Rule ID 22608 // |
| 1599 | /* 2145 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1600 | /* 2148 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1601 | /* 2152 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1602 | /* 2163 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, 128:{ *:[i16] }) => (SUB16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, -128:{ *:[i16] }) |
| 1603 | /* 2163 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16ri_ND), |
| 1604 | /* 2166 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1605 | /* 2168 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1606 | /* 2170 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 1607 | /* 2173 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1608 | /* 2176 */ GIR_RootConstrainSelectedInstOperands, |
| 1609 | /* 2177 */ // GIR_Coverage, 22608, |
| 1610 | /* 2177 */ GIR_EraseRootFromParent_Done, |
| 1611 | /* 2178 */ // Label 117: @2178 |
| 1612 | /* 2178 */ GIM_Try, /*On fail goto*//*Label 118*/ GIMT_Encode4(2206), // Rule ID 22863 // |
| 1613 | /* 2183 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1614 | /* 2186 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1615 | /* 2190 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1616 | /* 2194 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src, 1:{ *:[i16] }) => (INC16r:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 1617 | /* 2194 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC16r), |
| 1618 | /* 2197 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1619 | /* 2199 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1620 | /* 2201 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1621 | /* 2204 */ GIR_RootConstrainSelectedInstOperands, |
| 1622 | /* 2205 */ // GIR_Coverage, 22863, |
| 1623 | /* 2205 */ GIR_EraseRootFromParent_Done, |
| 1624 | /* 2206 */ // Label 118: @2206 |
| 1625 | /* 2206 */ GIM_Try, /*On fail goto*//*Label 119*/ GIMT_Encode4(2234), // Rule ID 22867 // |
| 1626 | /* 2211 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1627 | /* 2214 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1628 | /* 2218 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 1629 | /* 2222 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src, -1:{ *:[i16] }) => (DEC16r:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 1630 | /* 2222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC16r), |
| 1631 | /* 2225 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1632 | /* 2227 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1633 | /* 2229 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1634 | /* 2232 */ GIR_RootConstrainSelectedInstOperands, |
| 1635 | /* 2233 */ // GIR_Coverage, 22867, |
| 1636 | /* 2233 */ GIR_EraseRootFromParent_Done, |
| 1637 | /* 2234 */ // Label 119: @2234 |
| 1638 | /* 2234 */ GIM_Try, /*On fail goto*//*Label 120*/ GIMT_Encode4(2262), // Rule ID 22953 // |
| 1639 | /* 2239 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1640 | /* 2242 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1641 | /* 2246 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1642 | /* 2250 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src, 1:{ *:[i16] }) => (INC16r_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 1643 | /* 2250 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC16r_ND), |
| 1644 | /* 2253 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1645 | /* 2255 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1646 | /* 2257 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1647 | /* 2260 */ GIR_RootConstrainSelectedInstOperands, |
| 1648 | /* 2261 */ // GIR_Coverage, 22953, |
| 1649 | /* 2261 */ GIR_EraseRootFromParent_Done, |
| 1650 | /* 2262 */ // Label 120: @2262 |
| 1651 | /* 2262 */ GIM_Try, /*On fail goto*//*Label 121*/ GIMT_Encode4(2290), // Rule ID 22957 // |
| 1652 | /* 2267 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1653 | /* 2270 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1654 | /* 2274 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 1655 | /* 2278 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src, -1:{ *:[i16] }) => (DEC16r_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 1656 | /* 2278 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC16r_ND), |
| 1657 | /* 2281 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1658 | /* 2283 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1659 | /* 2285 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1660 | /* 2288 */ GIR_RootConstrainSelectedInstOperands, |
| 1661 | /* 2289 */ // GIR_Coverage, 22957, |
| 1662 | /* 2289 */ GIR_EraseRootFromParent_Done, |
| 1663 | /* 2290 */ // Label 121: @2290 |
| 1664 | /* 2290 */ GIM_Try, /*On fail goto*//*Label 122*/ GIMT_Encode4(2327), // Rule ID 22801 // |
| 1665 | /* 2295 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1666 | /* 2298 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1667 | /* 2302 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1668 | /* 2306 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1669 | /* 2310 */ // MIs[1] Operand 1 |
| 1670 | /* 2310 */ // No operand predicates |
| 1671 | /* 2310 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1672 | /* 2312 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (ADD16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 1673 | /* 2312 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16ri), |
| 1674 | /* 2315 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1675 | /* 2317 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1676 | /* 2319 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1677 | /* 2322 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1678 | /* 2325 */ GIR_RootConstrainSelectedInstOperands, |
| 1679 | /* 2326 */ // GIR_Coverage, 22801, |
| 1680 | /* 2326 */ GIR_EraseRootFromParent_Done, |
| 1681 | /* 2327 */ // Label 122: @2327 |
| 1682 | /* 2327 */ GIM_Try, /*On fail goto*//*Label 123*/ GIMT_Encode4(2364), // Rule ID 22891 // |
| 1683 | /* 2332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1684 | /* 2335 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1685 | /* 2339 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1686 | /* 2343 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1687 | /* 2347 */ // MIs[1] Operand 1 |
| 1688 | /* 2347 */ // No operand predicates |
| 1689 | /* 2347 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1690 | /* 2349 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (ADD16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 1691 | /* 2349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16ri_ND), |
| 1692 | /* 2352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1693 | /* 2354 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1694 | /* 2356 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1695 | /* 2359 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1696 | /* 2362 */ GIR_RootConstrainSelectedInstOperands, |
| 1697 | /* 2363 */ // GIR_Coverage, 22891, |
| 1698 | /* 2363 */ GIR_EraseRootFromParent_Done, |
| 1699 | /* 2364 */ // Label 123: @2364 |
| 1700 | /* 2364 */ GIM_Try, /*On fail goto*//*Label 124*/ GIMT_Encode4(2393), // Rule ID 22793 // |
| 1701 | /* 2369 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1702 | /* 2372 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1703 | /* 2376 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1704 | /* 2380 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (ADD16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 1705 | /* 2380 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD16rr), |
| 1706 | /* 2385 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 1707 | /* 2391 */ GIR_RootConstrainSelectedInstOperands, |
| 1708 | /* 2392 */ // GIR_Coverage, 22793, |
| 1709 | /* 2392 */ GIR_Done, |
| 1710 | /* 2393 */ // Label 124: @2393 |
| 1711 | /* 2393 */ GIM_Try, /*On fail goto*//*Label 125*/ GIMT_Encode4(2422), // Rule ID 22883 // |
| 1712 | /* 2398 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1713 | /* 2401 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1714 | /* 2405 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1715 | /* 2409 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (ADD16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 1716 | /* 2409 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD16rr_ND), |
| 1717 | /* 2414 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 1718 | /* 2420 */ GIR_RootConstrainSelectedInstOperands, |
| 1719 | /* 2421 */ // GIR_Coverage, 22883, |
| 1720 | /* 2421 */ GIR_Done, |
| 1721 | /* 2422 */ // Label 125: @2422 |
| 1722 | /* 2422 */ GIM_Reject, |
| 1723 | /* 2423 */ // Label 110: @2423 |
| 1724 | /* 2423 */ GIM_Reject, |
| 1725 | /* 2424 */ // Label 82: @2424 |
| 1726 | /* 2424 */ GIM_Try, /*On fail goto*//*Label 126*/ GIMT_Encode4(3073), |
| 1727 | /* 2429 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 1728 | /* 2432 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 1729 | /* 2435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1730 | /* 2439 */ GIM_Try, /*On fail goto*//*Label 127*/ GIMT_Encode4(2508), // Rule ID 22618 // |
| 1731 | /* 2444 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1732 | /* 2447 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1733 | /* 2451 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1734 | /* 2455 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1735 | /* 2458 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1736 | /* 2462 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 1737 | /* 2466 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1738 | /* 2477 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1739 | /* 2479 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1740 | /* 2486 */ // (add:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, 128:{ *:[i32] }) => (SUB32mi_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src, -128:{ *:[i32] }) |
| 1741 | /* 2486 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mi_ND), |
| 1742 | /* 2489 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1743 | /* 2491 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 1744 | /* 2495 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 1745 | /* 2498 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1746 | /* 2501 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1747 | /* 2506 */ GIR_RootConstrainSelectedInstOperands, |
| 1748 | /* 2507 */ // GIR_Coverage, 22618, |
| 1749 | /* 2507 */ GIR_EraseRootFromParent_Done, |
| 1750 | /* 2508 */ // Label 127: @2508 |
| 1751 | /* 2508 */ GIM_Try, /*On fail goto*//*Label 128*/ GIMT_Encode4(2569), // Rule ID 26056 // |
| 1752 | /* 2513 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1753 | /* 2516 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1754 | /* 2520 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1755 | /* 2524 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1756 | /* 2527 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1757 | /* 2531 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 1758 | /* 2535 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1759 | /* 2539 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1760 | /* 2541 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1761 | /* 2548 */ // (add:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src1) => (ADD32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1762 | /* 2548 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32rm), |
| 1763 | /* 2551 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1764 | /* 2553 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 1765 | /* 2555 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1766 | /* 2559 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1767 | /* 2562 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1768 | /* 2567 */ GIR_RootConstrainSelectedInstOperands, |
| 1769 | /* 2568 */ // GIR_Coverage, 26056, |
| 1770 | /* 2568 */ GIR_EraseRootFromParent_Done, |
| 1771 | /* 2569 */ // Label 128: @2569 |
| 1772 | /* 2569 */ GIM_Try, /*On fail goto*//*Label 129*/ GIMT_Encode4(2630), // Rule ID 26075 // |
| 1773 | /* 2574 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1774 | /* 2577 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1775 | /* 2581 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1776 | /* 2585 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1777 | /* 2588 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1778 | /* 2592 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 1779 | /* 2596 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1780 | /* 2600 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1781 | /* 2602 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1782 | /* 2609 */ // (add:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src1) => (ADD32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1783 | /* 2609 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32rm_ND), |
| 1784 | /* 2612 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1785 | /* 2614 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 1786 | /* 2616 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1787 | /* 2620 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1788 | /* 2623 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1789 | /* 2628 */ GIR_RootConstrainSelectedInstOperands, |
| 1790 | /* 2629 */ // GIR_Coverage, 26075, |
| 1791 | /* 2629 */ GIR_EraseRootFromParent_Done, |
| 1792 | /* 2630 */ // Label 129: @2630 |
| 1793 | /* 2630 */ GIM_Try, /*On fail goto*//*Label 130*/ GIMT_Encode4(2691), // Rule ID 22798 // |
| 1794 | /* 2635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1795 | /* 2638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1796 | /* 2642 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1797 | /* 2646 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1798 | /* 2650 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1799 | /* 2653 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1800 | /* 2657 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 1801 | /* 2661 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1802 | /* 2663 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1803 | /* 2670 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (ADD32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1804 | /* 2670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32rm), |
| 1805 | /* 2673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1806 | /* 2675 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1807 | /* 2677 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1808 | /* 2681 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1809 | /* 2684 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1810 | /* 2689 */ GIR_RootConstrainSelectedInstOperands, |
| 1811 | /* 2690 */ // GIR_Coverage, 22798, |
| 1812 | /* 2690 */ GIR_EraseRootFromParent_Done, |
| 1813 | /* 2691 */ // Label 130: @2691 |
| 1814 | /* 2691 */ GIM_Try, /*On fail goto*//*Label 131*/ GIMT_Encode4(2752), // Rule ID 22888 // |
| 1815 | /* 2696 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1816 | /* 2699 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1817 | /* 2703 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1818 | /* 2707 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1819 | /* 2711 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1820 | /* 2714 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1821 | /* 2718 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 1822 | /* 2722 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1823 | /* 2724 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1824 | /* 2731 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (ADD32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 1825 | /* 2731 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32rm_ND), |
| 1826 | /* 2734 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1827 | /* 2736 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1828 | /* 2738 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1829 | /* 2742 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1830 | /* 2745 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1831 | /* 2750 */ GIR_RootConstrainSelectedInstOperands, |
| 1832 | /* 2751 */ // GIR_Coverage, 22888, |
| 1833 | /* 2751 */ GIR_EraseRootFromParent_Done, |
| 1834 | /* 2752 */ // Label 131: @2752 |
| 1835 | /* 2752 */ GIM_Try, /*On fail goto*//*Label 132*/ GIMT_Encode4(2790), // Rule ID 22603 // |
| 1836 | /* 2757 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1837 | /* 2760 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1838 | /* 2764 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1839 | /* 2775 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, 128:{ *:[i32] }) => (SUB32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, -128:{ *:[i32] }) |
| 1840 | /* 2775 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32ri), |
| 1841 | /* 2778 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1842 | /* 2780 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1843 | /* 2782 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 1844 | /* 2785 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1845 | /* 2788 */ GIR_RootConstrainSelectedInstOperands, |
| 1846 | /* 2789 */ // GIR_Coverage, 22603, |
| 1847 | /* 2789 */ GIR_EraseRootFromParent_Done, |
| 1848 | /* 2790 */ // Label 132: @2790 |
| 1849 | /* 2790 */ GIM_Try, /*On fail goto*//*Label 133*/ GIMT_Encode4(2828), // Rule ID 22609 // |
| 1850 | /* 2795 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1851 | /* 2798 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1852 | /* 2802 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1853 | /* 2813 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, 128:{ *:[i32] }) => (SUB32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, -128:{ *:[i32] }) |
| 1854 | /* 2813 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32ri_ND), |
| 1855 | /* 2816 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1856 | /* 2818 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1857 | /* 2820 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 1858 | /* 2823 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1859 | /* 2826 */ GIR_RootConstrainSelectedInstOperands, |
| 1860 | /* 2827 */ // GIR_Coverage, 22609, |
| 1861 | /* 2827 */ GIR_EraseRootFromParent_Done, |
| 1862 | /* 2828 */ // Label 133: @2828 |
| 1863 | /* 2828 */ GIM_Try, /*On fail goto*//*Label 134*/ GIMT_Encode4(2856), // Rule ID 22864 // |
| 1864 | /* 2833 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1865 | /* 2836 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1866 | /* 2840 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1867 | /* 2844 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }) => (INC32r:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 1868 | /* 2844 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC32r), |
| 1869 | /* 2847 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1870 | /* 2849 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1871 | /* 2851 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1872 | /* 2854 */ GIR_RootConstrainSelectedInstOperands, |
| 1873 | /* 2855 */ // GIR_Coverage, 22864, |
| 1874 | /* 2855 */ GIR_EraseRootFromParent_Done, |
| 1875 | /* 2856 */ // Label 134: @2856 |
| 1876 | /* 2856 */ GIM_Try, /*On fail goto*//*Label 135*/ GIMT_Encode4(2884), // Rule ID 22868 // |
| 1877 | /* 2861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1878 | /* 2864 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1879 | /* 2868 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 1880 | /* 2872 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }) => (DEC32r:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 1881 | /* 2872 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC32r), |
| 1882 | /* 2875 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1883 | /* 2877 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1884 | /* 2879 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1885 | /* 2882 */ GIR_RootConstrainSelectedInstOperands, |
| 1886 | /* 2883 */ // GIR_Coverage, 22868, |
| 1887 | /* 2883 */ GIR_EraseRootFromParent_Done, |
| 1888 | /* 2884 */ // Label 135: @2884 |
| 1889 | /* 2884 */ GIM_Try, /*On fail goto*//*Label 136*/ GIMT_Encode4(2912), // Rule ID 22954 // |
| 1890 | /* 2889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1891 | /* 2892 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1892 | /* 2896 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1893 | /* 2900 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }) => (INC32r_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 1894 | /* 2900 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC32r_ND), |
| 1895 | /* 2903 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1896 | /* 2905 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1897 | /* 2907 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1898 | /* 2910 */ GIR_RootConstrainSelectedInstOperands, |
| 1899 | /* 2911 */ // GIR_Coverage, 22954, |
| 1900 | /* 2911 */ GIR_EraseRootFromParent_Done, |
| 1901 | /* 2912 */ // Label 136: @2912 |
| 1902 | /* 2912 */ GIM_Try, /*On fail goto*//*Label 137*/ GIMT_Encode4(2940), // Rule ID 22958 // |
| 1903 | /* 2917 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1904 | /* 2920 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1905 | /* 2924 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 1906 | /* 2928 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }) => (DEC32r_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 1907 | /* 2928 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC32r_ND), |
| 1908 | /* 2931 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1909 | /* 2933 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1910 | /* 2935 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1911 | /* 2938 */ GIR_RootConstrainSelectedInstOperands, |
| 1912 | /* 2939 */ // GIR_Coverage, 22958, |
| 1913 | /* 2939 */ GIR_EraseRootFromParent_Done, |
| 1914 | /* 2940 */ // Label 137: @2940 |
| 1915 | /* 2940 */ GIM_Try, /*On fail goto*//*Label 138*/ GIMT_Encode4(2977), // Rule ID 22802 // |
| 1916 | /* 2945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1917 | /* 2948 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1918 | /* 2952 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1919 | /* 2956 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1920 | /* 2960 */ // MIs[1] Operand 1 |
| 1921 | /* 2960 */ // No operand predicates |
| 1922 | /* 2960 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1923 | /* 2962 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (ADD32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 1924 | /* 2962 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32ri), |
| 1925 | /* 2965 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1926 | /* 2967 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1927 | /* 2969 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1928 | /* 2972 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1929 | /* 2975 */ GIR_RootConstrainSelectedInstOperands, |
| 1930 | /* 2976 */ // GIR_Coverage, 22802, |
| 1931 | /* 2976 */ GIR_EraseRootFromParent_Done, |
| 1932 | /* 2977 */ // Label 138: @2977 |
| 1933 | /* 2977 */ GIM_Try, /*On fail goto*//*Label 139*/ GIMT_Encode4(3014), // Rule ID 22892 // |
| 1934 | /* 2982 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1935 | /* 2985 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1936 | /* 2989 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1937 | /* 2993 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1938 | /* 2997 */ // MIs[1] Operand 1 |
| 1939 | /* 2997 */ // No operand predicates |
| 1940 | /* 2997 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1941 | /* 2999 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (ADD32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 1942 | /* 2999 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32ri_ND), |
| 1943 | /* 3002 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1944 | /* 3004 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1945 | /* 3006 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1946 | /* 3009 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1947 | /* 3012 */ GIR_RootConstrainSelectedInstOperands, |
| 1948 | /* 3013 */ // GIR_Coverage, 22892, |
| 1949 | /* 3013 */ GIR_EraseRootFromParent_Done, |
| 1950 | /* 3014 */ // Label 139: @3014 |
| 1951 | /* 3014 */ GIM_Try, /*On fail goto*//*Label 140*/ GIMT_Encode4(3043), // Rule ID 22794 // |
| 1952 | /* 3019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1953 | /* 3022 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1954 | /* 3026 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1955 | /* 3030 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (ADD32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 1956 | /* 3030 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD32rr), |
| 1957 | /* 3035 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 1958 | /* 3041 */ GIR_RootConstrainSelectedInstOperands, |
| 1959 | /* 3042 */ // GIR_Coverage, 22794, |
| 1960 | /* 3042 */ GIR_Done, |
| 1961 | /* 3043 */ // Label 140: @3043 |
| 1962 | /* 3043 */ GIM_Try, /*On fail goto*//*Label 141*/ GIMT_Encode4(3072), // Rule ID 22884 // |
| 1963 | /* 3048 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1964 | /* 3051 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1965 | /* 3055 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1966 | /* 3059 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (ADD32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 1967 | /* 3059 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD32rr_ND), |
| 1968 | /* 3064 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 1969 | /* 3070 */ GIR_RootConstrainSelectedInstOperands, |
| 1970 | /* 3071 */ // GIR_Coverage, 22884, |
| 1971 | /* 3071 */ GIR_Done, |
| 1972 | /* 3072 */ // Label 141: @3072 |
| 1973 | /* 3072 */ GIM_Reject, |
| 1974 | /* 3073 */ // Label 126: @3073 |
| 1975 | /* 3073 */ GIM_Reject, |
| 1976 | /* 3074 */ // Label 83: @3074 |
| 1977 | /* 3074 */ GIM_Try, /*On fail goto*//*Label 142*/ GIMT_Encode4(3897), |
| 1978 | /* 3079 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 1979 | /* 3082 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 1980 | /* 3085 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1981 | /* 3089 */ GIM_Try, /*On fail goto*//*Label 143*/ GIMT_Encode4(3158), // Rule ID 22619 // |
| 1982 | /* 3094 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1983 | /* 3097 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1984 | /* 3101 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1985 | /* 3105 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1986 | /* 3108 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 1987 | /* 3112 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1988 | /* 3116 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1989 | /* 3127 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1990 | /* 3129 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1991 | /* 3136 */ // (add:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, 128:{ *:[i64] }) => (SUB64mi32_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src, -128:{ *:[i64] }) |
| 1992 | /* 3136 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mi32_ND), |
| 1993 | /* 3139 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1994 | /* 3141 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 1995 | /* 3145 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 1996 | /* 3148 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1997 | /* 3151 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1998 | /* 3156 */ GIR_RootConstrainSelectedInstOperands, |
| 1999 | /* 3157 */ // GIR_Coverage, 22619, |
| 2000 | /* 3157 */ GIR_EraseRootFromParent_Done, |
| 2001 | /* 3158 */ // Label 143: @3158 |
| 2002 | /* 3158 */ GIM_Try, /*On fail goto*//*Label 144*/ GIMT_Encode4(3234), // Rule ID 22625 // |
| 2003 | /* 3163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 2004 | /* 3166 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2005 | /* 3170 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2006 | /* 3174 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2007 | /* 3177 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2008 | /* 3181 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2009 | /* 3185 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2147483648), |
| 2010 | /* 3196 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2011 | /* 3198 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2012 | /* 3205 */ // (add:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, 2147483648:{ *:[i64] }) => (SUB64mi32_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src, -2147483648:{ *:[i64] }) |
| 2013 | /* 3205 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mi32_ND), |
| 2014 | /* 3208 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2015 | /* 3210 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 2016 | /* 3214 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(-2147483648), |
| 2017 | /* 3224 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2018 | /* 3227 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2019 | /* 3232 */ GIR_RootConstrainSelectedInstOperands, |
| 2020 | /* 3233 */ // GIR_Coverage, 22625, |
| 2021 | /* 3233 */ GIR_EraseRootFromParent_Done, |
| 2022 | /* 3234 */ // Label 144: @3234 |
| 2023 | /* 3234 */ GIM_Try, /*On fail goto*//*Label 145*/ GIMT_Encode4(3295), // Rule ID 26057 // |
| 2024 | /* 3239 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 2025 | /* 3242 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2026 | /* 3246 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2027 | /* 3250 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2028 | /* 3253 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2029 | /* 3257 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2030 | /* 3261 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2031 | /* 3265 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2032 | /* 3267 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2033 | /* 3274 */ // (add:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src1) => (ADD64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2034 | /* 3274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64rm), |
| 2035 | /* 3277 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2036 | /* 3279 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2037 | /* 3281 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2038 | /* 3285 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2039 | /* 3288 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2040 | /* 3293 */ GIR_RootConstrainSelectedInstOperands, |
| 2041 | /* 3294 */ // GIR_Coverage, 26057, |
| 2042 | /* 3294 */ GIR_EraseRootFromParent_Done, |
| 2043 | /* 3295 */ // Label 145: @3295 |
| 2044 | /* 3295 */ GIM_Try, /*On fail goto*//*Label 146*/ GIMT_Encode4(3356), // Rule ID 26076 // |
| 2045 | /* 3300 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 2046 | /* 3303 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2047 | /* 3307 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2048 | /* 3311 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2049 | /* 3314 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2050 | /* 3318 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2051 | /* 3322 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2052 | /* 3326 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2053 | /* 3328 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2054 | /* 3335 */ // (add:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src1) => (ADD64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2055 | /* 3335 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64rm_ND), |
| 2056 | /* 3338 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2057 | /* 3340 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2058 | /* 3342 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2059 | /* 3346 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2060 | /* 3349 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2061 | /* 3354 */ GIR_RootConstrainSelectedInstOperands, |
| 2062 | /* 3355 */ // GIR_Coverage, 26076, |
| 2063 | /* 3355 */ GIR_EraseRootFromParent_Done, |
| 2064 | /* 3356 */ // Label 146: @3356 |
| 2065 | /* 3356 */ GIM_Try, /*On fail goto*//*Label 147*/ GIMT_Encode4(3417), // Rule ID 22799 // |
| 2066 | /* 3361 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 2067 | /* 3364 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2068 | /* 3368 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2069 | /* 3372 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2070 | /* 3376 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2071 | /* 3379 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2072 | /* 3383 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2073 | /* 3387 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2074 | /* 3389 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2075 | /* 3396 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADD64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2076 | /* 3396 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64rm), |
| 2077 | /* 3399 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2078 | /* 3401 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2079 | /* 3403 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2080 | /* 3407 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2081 | /* 3410 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2082 | /* 3415 */ GIR_RootConstrainSelectedInstOperands, |
| 2083 | /* 3416 */ // GIR_Coverage, 22799, |
| 2084 | /* 3416 */ GIR_EraseRootFromParent_Done, |
| 2085 | /* 3417 */ // Label 147: @3417 |
| 2086 | /* 3417 */ GIM_Try, /*On fail goto*//*Label 148*/ GIMT_Encode4(3478), // Rule ID 22889 // |
| 2087 | /* 3422 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 2088 | /* 3425 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2089 | /* 3429 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2090 | /* 3433 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2091 | /* 3437 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2092 | /* 3440 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2093 | /* 3444 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2094 | /* 3448 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2095 | /* 3450 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2096 | /* 3457 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADD64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2097 | /* 3457 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64rm_ND), |
| 2098 | /* 3460 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2099 | /* 3462 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2100 | /* 3464 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2101 | /* 3468 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2102 | /* 3471 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2103 | /* 3476 */ GIR_RootConstrainSelectedInstOperands, |
| 2104 | /* 3477 */ // GIR_Coverage, 22889, |
| 2105 | /* 3477 */ GIR_EraseRootFromParent_Done, |
| 2106 | /* 3478 */ // Label 148: @3478 |
| 2107 | /* 3478 */ GIM_Try, /*On fail goto*//*Label 149*/ GIMT_Encode4(3516), // Rule ID 22604 // |
| 2108 | /* 3483 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 2109 | /* 3486 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2110 | /* 3490 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 2111 | /* 3501 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, 128:{ *:[i64] }) => (SUB64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, -128:{ *:[i64] }) |
| 2112 | /* 3501 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32), |
| 2113 | /* 3504 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2114 | /* 3506 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2115 | /* 3508 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 2116 | /* 3511 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2117 | /* 3514 */ GIR_RootConstrainSelectedInstOperands, |
| 2118 | /* 3515 */ // GIR_Coverage, 22604, |
| 2119 | /* 3515 */ GIR_EraseRootFromParent_Done, |
| 2120 | /* 3516 */ // Label 149: @3516 |
| 2121 | /* 3516 */ GIM_Try, /*On fail goto*//*Label 150*/ GIMT_Encode4(3554), // Rule ID 22610 // |
| 2122 | /* 3521 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 2123 | /* 3524 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2124 | /* 3528 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 2125 | /* 3539 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, 128:{ *:[i64] }) => (SUB64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, -128:{ *:[i64] }) |
| 2126 | /* 3539 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32_ND), |
| 2127 | /* 3542 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2128 | /* 3544 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2129 | /* 3546 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 2130 | /* 3549 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2131 | /* 3552 */ GIR_RootConstrainSelectedInstOperands, |
| 2132 | /* 3553 */ // GIR_Coverage, 22610, |
| 2133 | /* 3553 */ GIR_EraseRootFromParent_Done, |
| 2134 | /* 3554 */ // Label 150: @3554 |
| 2135 | /* 3554 */ GIM_Try, /*On fail goto*//*Label 151*/ GIMT_Encode4(3599), // Rule ID 22620 // |
| 2136 | /* 3559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 2137 | /* 3562 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2138 | /* 3566 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2147483648), |
| 2139 | /* 3577 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, 2147483648:{ *:[i64] }) => (SUB64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, -2147483648:{ *:[i64] }) |
| 2140 | /* 3577 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32), |
| 2141 | /* 3580 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2142 | /* 3582 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2143 | /* 3584 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(-2147483648), |
| 2144 | /* 3594 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2145 | /* 3597 */ GIR_RootConstrainSelectedInstOperands, |
| 2146 | /* 3598 */ // GIR_Coverage, 22620, |
| 2147 | /* 3598 */ GIR_EraseRootFromParent_Done, |
| 2148 | /* 3599 */ // Label 151: @3599 |
| 2149 | /* 3599 */ GIM_Try, /*On fail goto*//*Label 152*/ GIMT_Encode4(3644), // Rule ID 22622 // |
| 2150 | /* 3604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 2151 | /* 3607 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2152 | /* 3611 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2147483648), |
| 2153 | /* 3622 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, 2147483648:{ *:[i64] }) => (SUB64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, -2147483648:{ *:[i64] }) |
| 2154 | /* 3622 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32_ND), |
| 2155 | /* 3625 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2156 | /* 3627 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2157 | /* 3629 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(-2147483648), |
| 2158 | /* 3639 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2159 | /* 3642 */ GIR_RootConstrainSelectedInstOperands, |
| 2160 | /* 3643 */ // GIR_Coverage, 22622, |
| 2161 | /* 3643 */ GIR_EraseRootFromParent_Done, |
| 2162 | /* 3644 */ // Label 152: @3644 |
| 2163 | /* 3644 */ GIM_Try, /*On fail goto*//*Label 153*/ GIMT_Encode4(3672), // Rule ID 22865 // |
| 2164 | /* 3649 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 2165 | /* 3652 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2166 | /* 3656 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 2167 | /* 3660 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }) => (INC64r:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 2168 | /* 3660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC64r), |
| 2169 | /* 3663 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2170 | /* 3665 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 2171 | /* 3667 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2172 | /* 3670 */ GIR_RootConstrainSelectedInstOperands, |
| 2173 | /* 3671 */ // GIR_Coverage, 22865, |
| 2174 | /* 3671 */ GIR_EraseRootFromParent_Done, |
| 2175 | /* 3672 */ // Label 153: @3672 |
| 2176 | /* 3672 */ GIM_Try, /*On fail goto*//*Label 154*/ GIMT_Encode4(3700), // Rule ID 22869 // |
| 2177 | /* 3677 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 2178 | /* 3680 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2179 | /* 3684 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 2180 | /* 3688 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }) => (DEC64r:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 2181 | /* 3688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC64r), |
| 2182 | /* 3691 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2183 | /* 3693 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 2184 | /* 3695 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2185 | /* 3698 */ GIR_RootConstrainSelectedInstOperands, |
| 2186 | /* 3699 */ // GIR_Coverage, 22869, |
| 2187 | /* 3699 */ GIR_EraseRootFromParent_Done, |
| 2188 | /* 3700 */ // Label 154: @3700 |
| 2189 | /* 3700 */ GIM_Try, /*On fail goto*//*Label 155*/ GIMT_Encode4(3728), // Rule ID 22955 // |
| 2190 | /* 3705 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 2191 | /* 3708 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2192 | /* 3712 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 2193 | /* 3716 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }) => (INC64r_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 2194 | /* 3716 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC64r_ND), |
| 2195 | /* 3719 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2196 | /* 3721 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 2197 | /* 3723 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2198 | /* 3726 */ GIR_RootConstrainSelectedInstOperands, |
| 2199 | /* 3727 */ // GIR_Coverage, 22955, |
| 2200 | /* 3727 */ GIR_EraseRootFromParent_Done, |
| 2201 | /* 3728 */ // Label 155: @3728 |
| 2202 | /* 3728 */ GIM_Try, /*On fail goto*//*Label 156*/ GIMT_Encode4(3756), // Rule ID 22959 // |
| 2203 | /* 3733 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 2204 | /* 3736 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2205 | /* 3740 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 2206 | /* 3744 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }) => (DEC64r_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 2207 | /* 3744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC64r_ND), |
| 2208 | /* 3747 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2209 | /* 3749 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 2210 | /* 3751 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2211 | /* 3754 */ GIR_RootConstrainSelectedInstOperands, |
| 2212 | /* 3755 */ // GIR_Coverage, 22959, |
| 2213 | /* 3755 */ GIR_EraseRootFromParent_Done, |
| 2214 | /* 3756 */ // Label 156: @3756 |
| 2215 | /* 3756 */ GIM_Try, /*On fail goto*//*Label 157*/ GIMT_Encode4(3797), // Rule ID 22803 // |
| 2216 | /* 3761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 2217 | /* 3764 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2218 | /* 3768 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2219 | /* 3772 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 2220 | /* 3776 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 2221 | /* 3780 */ // MIs[1] Operand 1 |
| 2222 | /* 3780 */ // No operand predicates |
| 2223 | /* 3780 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2224 | /* 3782 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (ADD64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 2225 | /* 3782 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64ri32), |
| 2226 | /* 3785 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2227 | /* 3787 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2228 | /* 3789 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 2229 | /* 3792 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2230 | /* 3795 */ GIR_RootConstrainSelectedInstOperands, |
| 2231 | /* 3796 */ // GIR_Coverage, 22803, |
| 2232 | /* 3796 */ GIR_EraseRootFromParent_Done, |
| 2233 | /* 3797 */ // Label 157: @3797 |
| 2234 | /* 3797 */ GIM_Try, /*On fail goto*//*Label 158*/ GIMT_Encode4(3838), // Rule ID 22893 // |
| 2235 | /* 3802 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 2236 | /* 3805 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2237 | /* 3809 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2238 | /* 3813 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 2239 | /* 3817 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 2240 | /* 3821 */ // MIs[1] Operand 1 |
| 2241 | /* 3821 */ // No operand predicates |
| 2242 | /* 3821 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2243 | /* 3823 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (ADD64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 2244 | /* 3823 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64ri32_ND), |
| 2245 | /* 3826 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2246 | /* 3828 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2247 | /* 3830 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 2248 | /* 3833 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2249 | /* 3836 */ GIR_RootConstrainSelectedInstOperands, |
| 2250 | /* 3837 */ // GIR_Coverage, 22893, |
| 2251 | /* 3837 */ GIR_EraseRootFromParent_Done, |
| 2252 | /* 3838 */ // Label 158: @3838 |
| 2253 | /* 3838 */ GIM_Try, /*On fail goto*//*Label 159*/ GIMT_Encode4(3867), // Rule ID 22795 // |
| 2254 | /* 3843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 2255 | /* 3846 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2256 | /* 3850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2257 | /* 3854 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (ADD64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 2258 | /* 3854 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD64rr), |
| 2259 | /* 3859 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 2260 | /* 3865 */ GIR_RootConstrainSelectedInstOperands, |
| 2261 | /* 3866 */ // GIR_Coverage, 22795, |
| 2262 | /* 3866 */ GIR_Done, |
| 2263 | /* 3867 */ // Label 159: @3867 |
| 2264 | /* 3867 */ GIM_Try, /*On fail goto*//*Label 160*/ GIMT_Encode4(3896), // Rule ID 22885 // |
| 2265 | /* 3872 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 2266 | /* 3875 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2267 | /* 3879 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2268 | /* 3883 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (ADD64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 2269 | /* 3883 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD64rr_ND), |
| 2270 | /* 3888 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 2271 | /* 3894 */ GIR_RootConstrainSelectedInstOperands, |
| 2272 | /* 3895 */ // GIR_Coverage, 22885, |
| 2273 | /* 3895 */ GIR_Done, |
| 2274 | /* 3896 */ // Label 160: @3896 |
| 2275 | /* 3896 */ GIM_Reject, |
| 2276 | /* 3897 */ // Label 142: @3897 |
| 2277 | /* 3897 */ GIM_Reject, |
| 2278 | /* 3898 */ // Label 84: @3898 |
| 2279 | /* 3898 */ GIM_Try, /*On fail goto*//*Label 161*/ GIMT_Encode4(4239), |
| 2280 | /* 3903 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 2281 | /* 3906 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 2282 | /* 3909 */ GIM_Try, /*On fail goto*//*Label 162*/ GIMT_Encode4(3971), // Rule ID 23438 // |
| 2283 | /* 3914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2284 | /* 3917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2285 | /* 3921 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2286 | /* 3925 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2287 | /* 3929 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2288 | /* 3932 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2289 | /* 3936 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2290 | /* 3940 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2291 | /* 3944 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2292 | /* 3946 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2293 | /* 3953 */ // (add:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src1) => (VPADDQrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2294 | /* 3953 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQrm), |
| 2295 | /* 3956 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2296 | /* 3958 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2297 | /* 3960 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2298 | /* 3964 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2299 | /* 3969 */ GIR_RootConstrainSelectedInstOperands, |
| 2300 | /* 3970 */ // GIR_Coverage, 23438, |
| 2301 | /* 3970 */ GIR_EraseRootFromParent_Done, |
| 2302 | /* 3971 */ // Label 162: @3971 |
| 2303 | /* 3971 */ GIM_Try, /*On fail goto*//*Label 163*/ GIMT_Encode4(4033), // Rule ID 23708 // |
| 2304 | /* 3976 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2305 | /* 3979 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2306 | /* 3983 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2307 | /* 3987 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2308 | /* 3991 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2309 | /* 3994 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2310 | /* 3998 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2311 | /* 4002 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2312 | /* 4006 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2313 | /* 4008 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2314 | /* 4015 */ // (add:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPADDQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2315 | /* 4015 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZ128rm), |
| 2316 | /* 4018 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2317 | /* 4020 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2318 | /* 4022 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2319 | /* 4026 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2320 | /* 4031 */ GIR_RootConstrainSelectedInstOperands, |
| 2321 | /* 4032 */ // GIR_Coverage, 23708, |
| 2322 | /* 4032 */ GIR_EraseRootFromParent_Done, |
| 2323 | /* 4033 */ // Label 163: @4033 |
| 2324 | /* 4033 */ GIM_Try, /*On fail goto*//*Label 164*/ GIMT_Encode4(4095), // Rule ID 2541 // |
| 2325 | /* 4038 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2326 | /* 4041 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2327 | /* 4045 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2328 | /* 4049 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2329 | /* 4053 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2330 | /* 4057 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2331 | /* 4060 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2332 | /* 4064 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2333 | /* 4068 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2334 | /* 4070 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2335 | /* 4077 */ // (add:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDQrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2336 | /* 4077 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQrm), |
| 2337 | /* 4080 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2338 | /* 4082 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2339 | /* 4084 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2340 | /* 4088 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2341 | /* 4093 */ GIR_RootConstrainSelectedInstOperands, |
| 2342 | /* 4094 */ // GIR_Coverage, 2541, |
| 2343 | /* 4094 */ GIR_EraseRootFromParent_Done, |
| 2344 | /* 4095 */ // Label 164: @4095 |
| 2345 | /* 4095 */ GIM_Try, /*On fail goto*//*Label 165*/ GIMT_Encode4(4157), // Rule ID 4654 // |
| 2346 | /* 4100 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2347 | /* 4103 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2348 | /* 4107 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2349 | /* 4111 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2350 | /* 4115 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2351 | /* 4119 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2352 | /* 4122 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2353 | /* 4126 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2354 | /* 4130 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2355 | /* 4132 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2356 | /* 4139 */ // (add:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2357 | /* 4139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZ128rm), |
| 2358 | /* 4142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2359 | /* 4144 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2360 | /* 4146 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2361 | /* 4150 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2362 | /* 4155 */ GIR_RootConstrainSelectedInstOperands, |
| 2363 | /* 4156 */ // GIR_Coverage, 4654, |
| 2364 | /* 4156 */ GIR_EraseRootFromParent_Done, |
| 2365 | /* 4157 */ // Label 165: @4157 |
| 2366 | /* 4157 */ GIM_Try, /*On fail goto*//*Label 166*/ GIMT_Encode4(4184), // Rule ID 2540 // |
| 2367 | /* 4162 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2368 | /* 4165 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2369 | /* 4169 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2370 | /* 4173 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2371 | /* 4177 */ // (add:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPADDQrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 2372 | /* 4177 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDQrr), |
| 2373 | /* 4182 */ GIR_RootConstrainSelectedInstOperands, |
| 2374 | /* 4183 */ // GIR_Coverage, 2540, |
| 2375 | /* 4183 */ GIR_Done, |
| 2376 | /* 4184 */ // Label 166: @4184 |
| 2377 | /* 4184 */ GIM_Try, /*On fail goto*//*Label 167*/ GIMT_Encode4(4211), // Rule ID 2542 // |
| 2378 | /* 4189 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 2379 | /* 4192 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2380 | /* 4196 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2381 | /* 4200 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2382 | /* 4204 */ // (add:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (PADDQrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 2383 | /* 4204 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDQrr), |
| 2384 | /* 4209 */ GIR_RootConstrainSelectedInstOperands, |
| 2385 | /* 4210 */ // GIR_Coverage, 2542, |
| 2386 | /* 4210 */ GIR_Done, |
| 2387 | /* 4211 */ // Label 167: @4211 |
| 2388 | /* 4211 */ GIM_Try, /*On fail goto*//*Label 168*/ GIMT_Encode4(4238), // Rule ID 4651 // |
| 2389 | /* 4216 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2390 | /* 4219 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2391 | /* 4223 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2392 | /* 4227 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2393 | /* 4231 */ // (add:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPADDQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 2394 | /* 4231 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDQZ128rr), |
| 2395 | /* 4236 */ GIR_RootConstrainSelectedInstOperands, |
| 2396 | /* 4237 */ // GIR_Coverage, 4651, |
| 2397 | /* 4237 */ GIR_Done, |
| 2398 | /* 4238 */ // Label 168: @4238 |
| 2399 | /* 4238 */ GIM_Reject, |
| 2400 | /* 4239 */ // Label 161: @4239 |
| 2401 | /* 4239 */ GIM_Reject, |
| 2402 | /* 4240 */ // Label 85: @4240 |
| 2403 | /* 4240 */ GIM_Try, /*On fail goto*//*Label 169*/ GIMT_Encode4(4703), |
| 2404 | /* 4245 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2405 | /* 4248 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2406 | /* 4251 */ GIM_Try, /*On fail goto*//*Label 170*/ GIMT_Encode4(4313), // Rule ID 23435 // |
| 2407 | /* 4256 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2408 | /* 4259 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2409 | /* 4263 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2410 | /* 4267 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2411 | /* 4271 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2412 | /* 4274 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2413 | /* 4278 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2414 | /* 4282 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2415 | /* 4286 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2416 | /* 4288 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2417 | /* 4295 */ // (add:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPADDDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2418 | /* 4295 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDrm), |
| 2419 | /* 4298 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2420 | /* 4300 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2421 | /* 4302 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2422 | /* 4306 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2423 | /* 4311 */ GIR_RootConstrainSelectedInstOperands, |
| 2424 | /* 4312 */ // GIR_Coverage, 23435, |
| 2425 | /* 4312 */ GIR_EraseRootFromParent_Done, |
| 2426 | /* 4313 */ // Label 170: @4313 |
| 2427 | /* 4313 */ GIM_Try, /*On fail goto*//*Label 171*/ GIMT_Encode4(4375), // Rule ID 23726 // |
| 2428 | /* 4318 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2429 | /* 4321 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2430 | /* 4325 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2431 | /* 4329 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2432 | /* 4333 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2433 | /* 4336 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2434 | /* 4340 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2435 | /* 4344 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2436 | /* 4348 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2437 | /* 4350 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2438 | /* 4357 */ // (add:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPADDDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2439 | /* 4357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZ128rm), |
| 2440 | /* 4360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2441 | /* 4362 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2442 | /* 4364 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2443 | /* 4368 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2444 | /* 4373 */ GIR_RootConstrainSelectedInstOperands, |
| 2445 | /* 4374 */ // GIR_Coverage, 23726, |
| 2446 | /* 4374 */ GIR_EraseRootFromParent_Done, |
| 2447 | /* 4375 */ // Label 171: @4375 |
| 2448 | /* 4375 */ GIM_Try, /*On fail goto*//*Label 172*/ GIMT_Encode4(4437), // Rule ID 2535 // |
| 2449 | /* 4380 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2450 | /* 4383 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2451 | /* 4387 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2452 | /* 4391 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2453 | /* 4395 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2454 | /* 4399 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2455 | /* 4402 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2456 | /* 4406 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2457 | /* 4410 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2458 | /* 4412 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2459 | /* 4419 */ // (add:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2460 | /* 4419 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDrm), |
| 2461 | /* 4422 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2462 | /* 4424 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2463 | /* 4426 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2464 | /* 4430 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2465 | /* 4435 */ GIR_RootConstrainSelectedInstOperands, |
| 2466 | /* 4436 */ // GIR_Coverage, 2535, |
| 2467 | /* 4436 */ GIR_EraseRootFromParent_Done, |
| 2468 | /* 4437 */ // Label 172: @4437 |
| 2469 | /* 4437 */ GIM_Try, /*On fail goto*//*Label 173*/ GIMT_Encode4(4499), // Rule ID 4681 // |
| 2470 | /* 4442 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2471 | /* 4445 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2472 | /* 4449 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2473 | /* 4453 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2474 | /* 4457 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2475 | /* 4461 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2476 | /* 4464 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2477 | /* 4468 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2478 | /* 4472 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2479 | /* 4474 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2480 | /* 4481 */ // (add:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2481 | /* 4481 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZ128rm), |
| 2482 | /* 4484 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2483 | /* 4486 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2484 | /* 4488 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2485 | /* 4492 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2486 | /* 4497 */ GIR_RootConstrainSelectedInstOperands, |
| 2487 | /* 4498 */ // GIR_Coverage, 4681, |
| 2488 | /* 4498 */ GIR_EraseRootFromParent_Done, |
| 2489 | /* 4499 */ // Label 173: @4499 |
| 2490 | /* 4499 */ GIM_Try, /*On fail goto*//*Label 174*/ GIMT_Encode4(4560), // Rule ID 17867 // |
| 2491 | /* 4504 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 2492 | /* 4507 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2493 | /* 4511 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2494 | /* 4515 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 2495 | /* 4519 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2496 | /* 4523 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2497 | /* 4527 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2498 | /* 4532 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2499 | /* 4537 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2500 | /* 4541 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2501 | /* 4543 */ // (add:{ *:[v4i32] } (mul:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2), VR128:{ *:[v4i32] }:$src3) => (VPMACSDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 2502 | /* 4543 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDDrr), |
| 2503 | /* 4546 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2504 | /* 4548 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 2505 | /* 4552 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 2506 | /* 4556 */ GIR_RootToRootCopy, /*OpIdx*/2, // src3 |
| 2507 | /* 4558 */ GIR_RootConstrainSelectedInstOperands, |
| 2508 | /* 4559 */ // GIR_Coverage, 17867, |
| 2509 | /* 4559 */ GIR_EraseRootFromParent_Done, |
| 2510 | /* 4560 */ // Label 174: @4560 |
| 2511 | /* 4560 */ GIM_Try, /*On fail goto*//*Label 175*/ GIMT_Encode4(4621), // Rule ID 25190 // |
| 2512 | /* 4565 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 2513 | /* 4568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2514 | /* 4572 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2515 | /* 4576 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2516 | /* 4580 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 2517 | /* 4584 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2518 | /* 4588 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2519 | /* 4592 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2520 | /* 4597 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2521 | /* 4602 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2522 | /* 4604 */ // (add:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src3, (mul:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2)) => (VPMACSDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 2523 | /* 4604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDDrr), |
| 2524 | /* 4607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2525 | /* 4609 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 2526 | /* 4613 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 2527 | /* 4617 */ GIR_RootToRootCopy, /*OpIdx*/1, // src3 |
| 2528 | /* 4619 */ GIR_RootConstrainSelectedInstOperands, |
| 2529 | /* 4620 */ // GIR_Coverage, 25190, |
| 2530 | /* 4620 */ GIR_EraseRootFromParent_Done, |
| 2531 | /* 4621 */ // Label 175: @4621 |
| 2532 | /* 4621 */ GIM_Try, /*On fail goto*//*Label 176*/ GIMT_Encode4(4648), // Rule ID 2534 // |
| 2533 | /* 4626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2534 | /* 4629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2535 | /* 4633 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2536 | /* 4637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2537 | /* 4641 */ // (add:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPADDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 2538 | /* 4641 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDDrr), |
| 2539 | /* 4646 */ GIR_RootConstrainSelectedInstOperands, |
| 2540 | /* 4647 */ // GIR_Coverage, 2534, |
| 2541 | /* 4647 */ GIR_Done, |
| 2542 | /* 4648 */ // Label 176: @4648 |
| 2543 | /* 4648 */ GIM_Try, /*On fail goto*//*Label 177*/ GIMT_Encode4(4675), // Rule ID 2536 // |
| 2544 | /* 4653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 2545 | /* 4656 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2546 | /* 4660 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2547 | /* 4664 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2548 | /* 4668 */ // (add:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PADDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 2549 | /* 4668 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDDrr), |
| 2550 | /* 4673 */ GIR_RootConstrainSelectedInstOperands, |
| 2551 | /* 4674 */ // GIR_Coverage, 2536, |
| 2552 | /* 4674 */ GIR_Done, |
| 2553 | /* 4675 */ // Label 177: @4675 |
| 2554 | /* 4675 */ GIM_Try, /*On fail goto*//*Label 178*/ GIMT_Encode4(4702), // Rule ID 4678 // |
| 2555 | /* 4680 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2556 | /* 4683 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2557 | /* 4687 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2558 | /* 4691 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2559 | /* 4695 */ // (add:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPADDDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 2560 | /* 4695 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDDZ128rr), |
| 2561 | /* 4700 */ GIR_RootConstrainSelectedInstOperands, |
| 2562 | /* 4701 */ // GIR_Coverage, 4678, |
| 2563 | /* 4701 */ GIR_Done, |
| 2564 | /* 4702 */ // Label 178: @4702 |
| 2565 | /* 4702 */ GIM_Reject, |
| 2566 | /* 4703 */ // Label 169: @4703 |
| 2567 | /* 4703 */ GIM_Reject, |
| 2568 | /* 4704 */ // Label 86: @4704 |
| 2569 | /* 4704 */ GIM_Try, /*On fail goto*//*Label 179*/ GIMT_Encode4(5018), |
| 2570 | /* 4709 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 2571 | /* 4712 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 2572 | /* 4715 */ GIM_Try, /*On fail goto*//*Label 180*/ GIMT_Encode4(4777), // Rule ID 23440 // |
| 2573 | /* 4720 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2574 | /* 4723 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2575 | /* 4727 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2576 | /* 4731 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2577 | /* 4735 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2578 | /* 4738 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2579 | /* 4742 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2580 | /* 4746 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2581 | /* 4750 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2582 | /* 4752 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2583 | /* 4759 */ // (add:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VPADDQYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2584 | /* 4759 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQYrm), |
| 2585 | /* 4762 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2586 | /* 4764 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2587 | /* 4766 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2588 | /* 4770 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2589 | /* 4775 */ GIR_RootConstrainSelectedInstOperands, |
| 2590 | /* 4776 */ // GIR_Coverage, 23440, |
| 2591 | /* 4776 */ GIR_EraseRootFromParent_Done, |
| 2592 | /* 4777 */ // Label 180: @4777 |
| 2593 | /* 4777 */ GIM_Try, /*On fail goto*//*Label 181*/ GIMT_Encode4(4839), // Rule ID 23702 // |
| 2594 | /* 4782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2595 | /* 4785 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2596 | /* 4789 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2597 | /* 4793 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2598 | /* 4797 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2599 | /* 4800 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2600 | /* 4804 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2601 | /* 4808 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2602 | /* 4812 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2603 | /* 4814 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2604 | /* 4821 */ // (add:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPADDQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2605 | /* 4821 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZ256rm), |
| 2606 | /* 4824 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2607 | /* 4826 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2608 | /* 4828 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2609 | /* 4832 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2610 | /* 4837 */ GIR_RootConstrainSelectedInstOperands, |
| 2611 | /* 4838 */ // GIR_Coverage, 23702, |
| 2612 | /* 4838 */ GIR_EraseRootFromParent_Done, |
| 2613 | /* 4839 */ // Label 181: @4839 |
| 2614 | /* 4839 */ GIM_Try, /*On fail goto*//*Label 182*/ GIMT_Encode4(4901), // Rule ID 2545 // |
| 2615 | /* 4844 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2616 | /* 4847 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2617 | /* 4851 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2618 | /* 4855 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2619 | /* 4859 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2620 | /* 4863 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2621 | /* 4866 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2622 | /* 4870 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2623 | /* 4874 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2624 | /* 4876 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2625 | /* 4883 */ // (add:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDQYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2626 | /* 4883 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQYrm), |
| 2627 | /* 4886 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2628 | /* 4888 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2629 | /* 4890 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2630 | /* 4894 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2631 | /* 4899 */ GIR_RootConstrainSelectedInstOperands, |
| 2632 | /* 4900 */ // GIR_Coverage, 2545, |
| 2633 | /* 4900 */ GIR_EraseRootFromParent_Done, |
| 2634 | /* 4901 */ // Label 182: @4901 |
| 2635 | /* 4901 */ GIM_Try, /*On fail goto*//*Label 183*/ GIMT_Encode4(4963), // Rule ID 4645 // |
| 2636 | /* 4906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2637 | /* 4909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2638 | /* 4913 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2639 | /* 4917 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2640 | /* 4921 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2641 | /* 4925 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2642 | /* 4928 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2643 | /* 4932 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2644 | /* 4936 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2645 | /* 4938 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2646 | /* 4945 */ // (add:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2647 | /* 4945 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZ256rm), |
| 2648 | /* 4948 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2649 | /* 4950 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2650 | /* 4952 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2651 | /* 4956 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2652 | /* 4961 */ GIR_RootConstrainSelectedInstOperands, |
| 2653 | /* 4962 */ // GIR_Coverage, 4645, |
| 2654 | /* 4962 */ GIR_EraseRootFromParent_Done, |
| 2655 | /* 4963 */ // Label 183: @4963 |
| 2656 | /* 4963 */ GIM_Try, /*On fail goto*//*Label 184*/ GIMT_Encode4(4990), // Rule ID 2544 // |
| 2657 | /* 4968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2658 | /* 4971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2659 | /* 4975 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2660 | /* 4979 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2661 | /* 4983 */ // (add:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPADDQYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 2662 | /* 4983 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDQYrr), |
| 2663 | /* 4988 */ GIR_RootConstrainSelectedInstOperands, |
| 2664 | /* 4989 */ // GIR_Coverage, 2544, |
| 2665 | /* 4989 */ GIR_Done, |
| 2666 | /* 4990 */ // Label 184: @4990 |
| 2667 | /* 4990 */ GIM_Try, /*On fail goto*//*Label 185*/ GIMT_Encode4(5017), // Rule ID 4642 // |
| 2668 | /* 4995 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2669 | /* 4998 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2670 | /* 5002 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2671 | /* 5006 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2672 | /* 5010 */ // (add:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPADDQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 2673 | /* 5010 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDQZ256rr), |
| 2674 | /* 5015 */ GIR_RootConstrainSelectedInstOperands, |
| 2675 | /* 5016 */ // GIR_Coverage, 4642, |
| 2676 | /* 5016 */ GIR_Done, |
| 2677 | /* 5017 */ // Label 185: @5017 |
| 2678 | /* 5017 */ GIM_Reject, |
| 2679 | /* 5018 */ // Label 179: @5018 |
| 2680 | /* 5018 */ GIM_Reject, |
| 2681 | /* 5019 */ // Label 87: @5019 |
| 2682 | /* 5019 */ GIM_Try, /*On fail goto*//*Label 186*/ GIMT_Encode4(5482), |
| 2683 | /* 5024 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2684 | /* 5027 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2685 | /* 5030 */ GIM_Try, /*On fail goto*//*Label 187*/ GIMT_Encode4(5092), // Rule ID 23432 // |
| 2686 | /* 5035 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 2687 | /* 5038 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2688 | /* 5042 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2689 | /* 5046 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2690 | /* 5050 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2691 | /* 5053 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2692 | /* 5057 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2693 | /* 5061 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2694 | /* 5065 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2695 | /* 5067 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2696 | /* 5074 */ // (add:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPADDWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2697 | /* 5074 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWrm), |
| 2698 | /* 5077 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2699 | /* 5079 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2700 | /* 5081 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2701 | /* 5085 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2702 | /* 5090 */ GIR_RootConstrainSelectedInstOperands, |
| 2703 | /* 5091 */ // GIR_Coverage, 23432, |
| 2704 | /* 5091 */ GIR_EraseRootFromParent_Done, |
| 2705 | /* 5092 */ // Label 187: @5092 |
| 2706 | /* 5092 */ GIM_Try, /*On fail goto*//*Label 188*/ GIMT_Encode4(5154), // Rule ID 23738 // |
| 2707 | /* 5097 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2708 | /* 5100 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2709 | /* 5104 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2710 | /* 5108 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2711 | /* 5112 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2712 | /* 5115 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2713 | /* 5119 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2714 | /* 5123 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2715 | /* 5127 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2716 | /* 5129 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2717 | /* 5136 */ // (add:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPADDWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2718 | /* 5136 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZ128rm), |
| 2719 | /* 5139 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2720 | /* 5141 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2721 | /* 5143 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2722 | /* 5147 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2723 | /* 5152 */ GIR_RootConstrainSelectedInstOperands, |
| 2724 | /* 5153 */ // GIR_Coverage, 23738, |
| 2725 | /* 5153 */ GIR_EraseRootFromParent_Done, |
| 2726 | /* 5154 */ // Label 188: @5154 |
| 2727 | /* 5154 */ GIM_Try, /*On fail goto*//*Label 189*/ GIMT_Encode4(5216), // Rule ID 2529 // |
| 2728 | /* 5159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 2729 | /* 5162 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2730 | /* 5166 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2731 | /* 5170 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2732 | /* 5174 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2733 | /* 5178 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2734 | /* 5181 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2735 | /* 5185 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2736 | /* 5189 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2737 | /* 5191 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2738 | /* 5198 */ // (add:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2739 | /* 5198 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWrm), |
| 2740 | /* 5201 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2741 | /* 5203 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2742 | /* 5205 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2743 | /* 5209 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2744 | /* 5214 */ GIR_RootConstrainSelectedInstOperands, |
| 2745 | /* 5215 */ // GIR_Coverage, 2529, |
| 2746 | /* 5215 */ GIR_EraseRootFromParent_Done, |
| 2747 | /* 5216 */ // Label 189: @5216 |
| 2748 | /* 5216 */ GIM_Try, /*On fail goto*//*Label 190*/ GIMT_Encode4(5278), // Rule ID 4702 // |
| 2749 | /* 5221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2750 | /* 5224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2751 | /* 5228 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2752 | /* 5232 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2753 | /* 5236 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2754 | /* 5240 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2755 | /* 5243 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2756 | /* 5247 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2757 | /* 5251 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2758 | /* 5253 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2759 | /* 5260 */ // (add:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2760 | /* 5260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZ128rm), |
| 2761 | /* 5263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2762 | /* 5265 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2763 | /* 5267 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2764 | /* 5271 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2765 | /* 5276 */ GIR_RootConstrainSelectedInstOperands, |
| 2766 | /* 5277 */ // GIR_Coverage, 4702, |
| 2767 | /* 5277 */ GIR_EraseRootFromParent_Done, |
| 2768 | /* 5278 */ // Label 190: @5278 |
| 2769 | /* 5278 */ GIM_Try, /*On fail goto*//*Label 191*/ GIMT_Encode4(5339), // Rule ID 17866 // |
| 2770 | /* 5283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 2771 | /* 5286 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2772 | /* 5290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2773 | /* 5294 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 2774 | /* 5298 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2775 | /* 5302 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2776 | /* 5306 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2777 | /* 5311 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2778 | /* 5316 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2779 | /* 5320 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2780 | /* 5322 */ // (add:{ *:[v8i16] } (mul:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2), VR128:{ *:[v8i16] }:$src3) => (VPMACSWWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 2781 | /* 5322 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWWrr), |
| 2782 | /* 5325 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2783 | /* 5327 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 2784 | /* 5331 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 2785 | /* 5335 */ GIR_RootToRootCopy, /*OpIdx*/2, // src3 |
| 2786 | /* 5337 */ GIR_RootConstrainSelectedInstOperands, |
| 2787 | /* 5338 */ // GIR_Coverage, 17866, |
| 2788 | /* 5338 */ GIR_EraseRootFromParent_Done, |
| 2789 | /* 5339 */ // Label 191: @5339 |
| 2790 | /* 5339 */ GIM_Try, /*On fail goto*//*Label 192*/ GIMT_Encode4(5400), // Rule ID 25189 // |
| 2791 | /* 5344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 2792 | /* 5347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2793 | /* 5351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2794 | /* 5355 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2795 | /* 5359 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 2796 | /* 5363 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2797 | /* 5367 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2798 | /* 5371 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2799 | /* 5376 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2800 | /* 5381 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2801 | /* 5383 */ // (add:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src3, (mul:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2)) => (VPMACSWWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 2802 | /* 5383 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWWrr), |
| 2803 | /* 5386 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2804 | /* 5388 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 2805 | /* 5392 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 2806 | /* 5396 */ GIR_RootToRootCopy, /*OpIdx*/1, // src3 |
| 2807 | /* 5398 */ GIR_RootConstrainSelectedInstOperands, |
| 2808 | /* 5399 */ // GIR_Coverage, 25189, |
| 2809 | /* 5399 */ GIR_EraseRootFromParent_Done, |
| 2810 | /* 5400 */ // Label 192: @5400 |
| 2811 | /* 5400 */ GIM_Try, /*On fail goto*//*Label 193*/ GIMT_Encode4(5427), // Rule ID 2528 // |
| 2812 | /* 5405 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 2813 | /* 5408 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2814 | /* 5412 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2815 | /* 5416 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2816 | /* 5420 */ // (add:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPADDWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 2817 | /* 5420 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDWrr), |
| 2818 | /* 5425 */ GIR_RootConstrainSelectedInstOperands, |
| 2819 | /* 5426 */ // GIR_Coverage, 2528, |
| 2820 | /* 5426 */ GIR_Done, |
| 2821 | /* 5427 */ // Label 193: @5427 |
| 2822 | /* 5427 */ GIM_Try, /*On fail goto*//*Label 194*/ GIMT_Encode4(5454), // Rule ID 2530 // |
| 2823 | /* 5432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 2824 | /* 5435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2825 | /* 5439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2826 | /* 5443 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2827 | /* 5447 */ // (add:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PADDWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 2828 | /* 5447 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDWrr), |
| 2829 | /* 5452 */ GIR_RootConstrainSelectedInstOperands, |
| 2830 | /* 5453 */ // GIR_Coverage, 2530, |
| 2831 | /* 5453 */ GIR_Done, |
| 2832 | /* 5454 */ // Label 194: @5454 |
| 2833 | /* 5454 */ GIM_Try, /*On fail goto*//*Label 195*/ GIMT_Encode4(5481), // Rule ID 4699 // |
| 2834 | /* 5459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2835 | /* 5462 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2836 | /* 5466 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2837 | /* 5470 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2838 | /* 5474 */ // (add:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPADDWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 2839 | /* 5474 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDWZ128rr), |
| 2840 | /* 5479 */ GIR_RootConstrainSelectedInstOperands, |
| 2841 | /* 5480 */ // GIR_Coverage, 4699, |
| 2842 | /* 5480 */ GIR_Done, |
| 2843 | /* 5481 */ // Label 195: @5481 |
| 2844 | /* 5481 */ GIM_Reject, |
| 2845 | /* 5482 */ // Label 186: @5482 |
| 2846 | /* 5482 */ GIM_Reject, |
| 2847 | /* 5483 */ // Label 88: @5483 |
| 2848 | /* 5483 */ GIM_Try, /*On fail goto*//*Label 196*/ GIMT_Encode4(5797), |
| 2849 | /* 5488 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 2850 | /* 5491 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 2851 | /* 5494 */ GIM_Try, /*On fail goto*//*Label 197*/ GIMT_Encode4(5556), // Rule ID 23437 // |
| 2852 | /* 5499 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2853 | /* 5502 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2854 | /* 5506 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2855 | /* 5510 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2856 | /* 5514 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2857 | /* 5517 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2858 | /* 5521 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2859 | /* 5525 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2860 | /* 5529 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2861 | /* 5531 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2862 | /* 5538 */ // (add:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPADDDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2863 | /* 5538 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDYrm), |
| 2864 | /* 5541 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2865 | /* 5543 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2866 | /* 5545 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2867 | /* 5549 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2868 | /* 5554 */ GIR_RootConstrainSelectedInstOperands, |
| 2869 | /* 5555 */ // GIR_Coverage, 23437, |
| 2870 | /* 5555 */ GIR_EraseRootFromParent_Done, |
| 2871 | /* 5556 */ // Label 197: @5556 |
| 2872 | /* 5556 */ GIM_Try, /*On fail goto*//*Label 198*/ GIMT_Encode4(5618), // Rule ID 23720 // |
| 2873 | /* 5561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2874 | /* 5564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2875 | /* 5568 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2876 | /* 5572 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2877 | /* 5576 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2878 | /* 5579 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2879 | /* 5583 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2880 | /* 5587 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2881 | /* 5591 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2882 | /* 5593 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2883 | /* 5600 */ // (add:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPADDDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2884 | /* 5600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZ256rm), |
| 2885 | /* 5603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2886 | /* 5605 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2887 | /* 5607 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2888 | /* 5611 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2889 | /* 5616 */ GIR_RootConstrainSelectedInstOperands, |
| 2890 | /* 5617 */ // GIR_Coverage, 23720, |
| 2891 | /* 5617 */ GIR_EraseRootFromParent_Done, |
| 2892 | /* 5618 */ // Label 198: @5618 |
| 2893 | /* 5618 */ GIM_Try, /*On fail goto*//*Label 199*/ GIMT_Encode4(5680), // Rule ID 2539 // |
| 2894 | /* 5623 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2895 | /* 5626 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2896 | /* 5630 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2897 | /* 5634 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2898 | /* 5638 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2899 | /* 5642 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2900 | /* 5645 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2901 | /* 5649 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2902 | /* 5653 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2903 | /* 5655 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2904 | /* 5662 */ // (add:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2905 | /* 5662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDYrm), |
| 2906 | /* 5665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2907 | /* 5667 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2908 | /* 5669 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2909 | /* 5673 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2910 | /* 5678 */ GIR_RootConstrainSelectedInstOperands, |
| 2911 | /* 5679 */ // GIR_Coverage, 2539, |
| 2912 | /* 5679 */ GIR_EraseRootFromParent_Done, |
| 2913 | /* 5680 */ // Label 199: @5680 |
| 2914 | /* 5680 */ GIM_Try, /*On fail goto*//*Label 200*/ GIMT_Encode4(5742), // Rule ID 4672 // |
| 2915 | /* 5685 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2916 | /* 5688 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2917 | /* 5692 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2918 | /* 5696 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2919 | /* 5700 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2920 | /* 5704 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2921 | /* 5707 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2922 | /* 5711 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2923 | /* 5715 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2924 | /* 5717 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2925 | /* 5724 */ // (add:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2926 | /* 5724 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZ256rm), |
| 2927 | /* 5727 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2928 | /* 5729 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2929 | /* 5731 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2930 | /* 5735 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2931 | /* 5740 */ GIR_RootConstrainSelectedInstOperands, |
| 2932 | /* 5741 */ // GIR_Coverage, 4672, |
| 2933 | /* 5741 */ GIR_EraseRootFromParent_Done, |
| 2934 | /* 5742 */ // Label 200: @5742 |
| 2935 | /* 5742 */ GIM_Try, /*On fail goto*//*Label 201*/ GIMT_Encode4(5769), // Rule ID 2538 // |
| 2936 | /* 5747 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2937 | /* 5750 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2938 | /* 5754 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2939 | /* 5758 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2940 | /* 5762 */ // (add:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPADDDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 2941 | /* 5762 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDDYrr), |
| 2942 | /* 5767 */ GIR_RootConstrainSelectedInstOperands, |
| 2943 | /* 5768 */ // GIR_Coverage, 2538, |
| 2944 | /* 5768 */ GIR_Done, |
| 2945 | /* 5769 */ // Label 201: @5769 |
| 2946 | /* 5769 */ GIM_Try, /*On fail goto*//*Label 202*/ GIMT_Encode4(5796), // Rule ID 4669 // |
| 2947 | /* 5774 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2948 | /* 5777 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2949 | /* 5781 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2950 | /* 5785 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2951 | /* 5789 */ // (add:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPADDDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 2952 | /* 5789 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDDZ256rr), |
| 2953 | /* 5794 */ GIR_RootConstrainSelectedInstOperands, |
| 2954 | /* 5795 */ // GIR_Coverage, 4669, |
| 2955 | /* 5795 */ GIR_Done, |
| 2956 | /* 5796 */ // Label 202: @5796 |
| 2957 | /* 5796 */ GIM_Reject, |
| 2958 | /* 5797 */ // Label 196: @5797 |
| 2959 | /* 5797 */ GIM_Reject, |
| 2960 | /* 5798 */ // Label 89: @5798 |
| 2961 | /* 5798 */ GIM_Try, /*On fail goto*//*Label 203*/ GIMT_Encode4(5953), |
| 2962 | /* 5803 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 2963 | /* 5806 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 2964 | /* 5809 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 2965 | /* 5813 */ GIM_Try, /*On fail goto*//*Label 204*/ GIMT_Encode4(5871), // Rule ID 23696 // |
| 2966 | /* 5818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 2967 | /* 5821 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2968 | /* 5825 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2969 | /* 5829 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2970 | /* 5832 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2971 | /* 5836 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2972 | /* 5840 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 2973 | /* 5844 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2974 | /* 5846 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2975 | /* 5853 */ // (add:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPADDQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2976 | /* 5853 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZrm), |
| 2977 | /* 5856 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2978 | /* 5858 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2979 | /* 5860 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2980 | /* 5864 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2981 | /* 5869 */ GIR_RootConstrainSelectedInstOperands, |
| 2982 | /* 5870 */ // GIR_Coverage, 23696, |
| 2983 | /* 5870 */ GIR_EraseRootFromParent_Done, |
| 2984 | /* 5871 */ // Label 204: @5871 |
| 2985 | /* 5871 */ GIM_Try, /*On fail goto*//*Label 205*/ GIMT_Encode4(5929), // Rule ID 4636 // |
| 2986 | /* 5876 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 2987 | /* 5879 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 2988 | /* 5883 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2989 | /* 5887 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2990 | /* 5891 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2991 | /* 5894 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2992 | /* 5898 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2993 | /* 5902 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2994 | /* 5904 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2995 | /* 5911 */ // (add:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2996 | /* 5911 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZrm), |
| 2997 | /* 5914 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2998 | /* 5916 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2999 | /* 5918 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3000 | /* 5922 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3001 | /* 5927 */ GIR_RootConstrainSelectedInstOperands, |
| 3002 | /* 5928 */ // GIR_Coverage, 4636, |
| 3003 | /* 5928 */ GIR_EraseRootFromParent_Done, |
| 3004 | /* 5929 */ // Label 205: @5929 |
| 3005 | /* 5929 */ GIM_Try, /*On fail goto*//*Label 206*/ GIMT_Encode4(5952), // Rule ID 4633 // |
| 3006 | /* 5934 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 3007 | /* 5937 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3008 | /* 5941 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3009 | /* 5945 */ // (add:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPADDQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 3010 | /* 5945 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDQZrr), |
| 3011 | /* 5950 */ GIR_RootConstrainSelectedInstOperands, |
| 3012 | /* 5951 */ // GIR_Coverage, 4633, |
| 3013 | /* 5951 */ GIR_Done, |
| 3014 | /* 5952 */ // Label 206: @5952 |
| 3015 | /* 5952 */ GIM_Reject, |
| 3016 | /* 5953 */ // Label 203: @5953 |
| 3017 | /* 5953 */ GIM_Reject, |
| 3018 | /* 5954 */ // Label 90: @5954 |
| 3019 | /* 5954 */ GIM_Try, /*On fail goto*//*Label 207*/ GIMT_Encode4(6295), |
| 3020 | /* 5959 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 3021 | /* 5962 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 3022 | /* 5965 */ GIM_Try, /*On fail goto*//*Label 208*/ GIMT_Encode4(6027), // Rule ID 23429 // |
| 3023 | /* 5970 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 3024 | /* 5973 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3025 | /* 5977 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3026 | /* 5981 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3027 | /* 5985 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3028 | /* 5988 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3029 | /* 5992 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3030 | /* 5996 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3031 | /* 6000 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3032 | /* 6002 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3033 | /* 6009 */ // (add:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPADDBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3034 | /* 6009 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBrm), |
| 3035 | /* 6012 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3036 | /* 6014 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3037 | /* 6016 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3038 | /* 6020 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3039 | /* 6025 */ GIR_RootConstrainSelectedInstOperands, |
| 3040 | /* 6026 */ // GIR_Coverage, 23429, |
| 3041 | /* 6026 */ GIR_EraseRootFromParent_Done, |
| 3042 | /* 6027 */ // Label 208: @6027 |
| 3043 | /* 6027 */ GIM_Try, /*On fail goto*//*Label 209*/ GIMT_Encode4(6089), // Rule ID 23747 // |
| 3044 | /* 6032 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3045 | /* 6035 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3046 | /* 6039 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3047 | /* 6043 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3048 | /* 6047 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3049 | /* 6050 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3050 | /* 6054 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3051 | /* 6058 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3052 | /* 6062 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3053 | /* 6064 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3054 | /* 6071 */ // (add:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPADDBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3055 | /* 6071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZ128rm), |
| 3056 | /* 6074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3057 | /* 6076 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3058 | /* 6078 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3059 | /* 6082 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3060 | /* 6087 */ GIR_RootConstrainSelectedInstOperands, |
| 3061 | /* 6088 */ // GIR_Coverage, 23747, |
| 3062 | /* 6088 */ GIR_EraseRootFromParent_Done, |
| 3063 | /* 6089 */ // Label 209: @6089 |
| 3064 | /* 6089 */ GIM_Try, /*On fail goto*//*Label 210*/ GIMT_Encode4(6151), // Rule ID 2523 // |
| 3065 | /* 6094 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 3066 | /* 6097 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3067 | /* 6101 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3068 | /* 6105 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3069 | /* 6109 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3070 | /* 6113 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3071 | /* 6116 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3072 | /* 6120 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3073 | /* 6124 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3074 | /* 6126 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3075 | /* 6133 */ // (add:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3076 | /* 6133 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBrm), |
| 3077 | /* 6136 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3078 | /* 6138 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3079 | /* 6140 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3080 | /* 6144 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3081 | /* 6149 */ GIR_RootConstrainSelectedInstOperands, |
| 3082 | /* 6150 */ // GIR_Coverage, 2523, |
| 3083 | /* 6150 */ GIR_EraseRootFromParent_Done, |
| 3084 | /* 6151 */ // Label 210: @6151 |
| 3085 | /* 6151 */ GIM_Try, /*On fail goto*//*Label 211*/ GIMT_Encode4(6213), // Rule ID 4720 // |
| 3086 | /* 6156 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3087 | /* 6159 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3088 | /* 6163 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3089 | /* 6167 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3090 | /* 6171 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3091 | /* 6175 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3092 | /* 6178 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3093 | /* 6182 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3094 | /* 6186 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3095 | /* 6188 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3096 | /* 6195 */ // (add:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3097 | /* 6195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZ128rm), |
| 3098 | /* 6198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3099 | /* 6200 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3100 | /* 6202 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3101 | /* 6206 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3102 | /* 6211 */ GIR_RootConstrainSelectedInstOperands, |
| 3103 | /* 6212 */ // GIR_Coverage, 4720, |
| 3104 | /* 6212 */ GIR_EraseRootFromParent_Done, |
| 3105 | /* 6213 */ // Label 211: @6213 |
| 3106 | /* 6213 */ GIM_Try, /*On fail goto*//*Label 212*/ GIMT_Encode4(6240), // Rule ID 2522 // |
| 3107 | /* 6218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 3108 | /* 6221 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3109 | /* 6225 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3110 | /* 6229 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3111 | /* 6233 */ // (add:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPADDBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 3112 | /* 6233 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDBrr), |
| 3113 | /* 6238 */ GIR_RootConstrainSelectedInstOperands, |
| 3114 | /* 6239 */ // GIR_Coverage, 2522, |
| 3115 | /* 6239 */ GIR_Done, |
| 3116 | /* 6240 */ // Label 212: @6240 |
| 3117 | /* 6240 */ GIM_Try, /*On fail goto*//*Label 213*/ GIMT_Encode4(6267), // Rule ID 2524 // |
| 3118 | /* 6245 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 3119 | /* 6248 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3120 | /* 6252 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3121 | /* 6256 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3122 | /* 6260 */ // (add:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PADDBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 3123 | /* 6260 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDBrr), |
| 3124 | /* 6265 */ GIR_RootConstrainSelectedInstOperands, |
| 3125 | /* 6266 */ // GIR_Coverage, 2524, |
| 3126 | /* 6266 */ GIR_Done, |
| 3127 | /* 6267 */ // Label 213: @6267 |
| 3128 | /* 6267 */ GIM_Try, /*On fail goto*//*Label 214*/ GIMT_Encode4(6294), // Rule ID 4717 // |
| 3129 | /* 6272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3130 | /* 6275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3131 | /* 6279 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3132 | /* 6283 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3133 | /* 6287 */ // (add:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPADDBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 3134 | /* 6287 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDBZ128rr), |
| 3135 | /* 6292 */ GIR_RootConstrainSelectedInstOperands, |
| 3136 | /* 6293 */ // GIR_Coverage, 4717, |
| 3137 | /* 6293 */ GIR_Done, |
| 3138 | /* 6294 */ // Label 214: @6294 |
| 3139 | /* 6294 */ GIM_Reject, |
| 3140 | /* 6295 */ // Label 207: @6295 |
| 3141 | /* 6295 */ GIM_Reject, |
| 3142 | /* 6296 */ // Label 91: @6296 |
| 3143 | /* 6296 */ GIM_Try, /*On fail goto*//*Label 215*/ GIMT_Encode4(6610), |
| 3144 | /* 6301 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 3145 | /* 6304 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 3146 | /* 6307 */ GIM_Try, /*On fail goto*//*Label 216*/ GIMT_Encode4(6369), // Rule ID 23434 // |
| 3147 | /* 6312 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 3148 | /* 6315 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3149 | /* 6319 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3150 | /* 6323 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3151 | /* 6327 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3152 | /* 6330 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3153 | /* 6334 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3154 | /* 6338 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3155 | /* 6342 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3156 | /* 6344 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3157 | /* 6351 */ // (add:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPADDWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3158 | /* 6351 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWYrm), |
| 3159 | /* 6354 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3160 | /* 6356 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3161 | /* 6358 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3162 | /* 6362 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3163 | /* 6367 */ GIR_RootConstrainSelectedInstOperands, |
| 3164 | /* 6368 */ // GIR_Coverage, 23434, |
| 3165 | /* 6368 */ GIR_EraseRootFromParent_Done, |
| 3166 | /* 6369 */ // Label 216: @6369 |
| 3167 | /* 6369 */ GIM_Try, /*On fail goto*//*Label 217*/ GIMT_Encode4(6431), // Rule ID 23735 // |
| 3168 | /* 6374 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3169 | /* 6377 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3170 | /* 6381 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3171 | /* 6385 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3172 | /* 6389 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3173 | /* 6392 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3174 | /* 6396 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3175 | /* 6400 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3176 | /* 6404 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3177 | /* 6406 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3178 | /* 6413 */ // (add:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPADDWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3179 | /* 6413 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZ256rm), |
| 3180 | /* 6416 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3181 | /* 6418 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3182 | /* 6420 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3183 | /* 6424 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3184 | /* 6429 */ GIR_RootConstrainSelectedInstOperands, |
| 3185 | /* 6430 */ // GIR_Coverage, 23735, |
| 3186 | /* 6430 */ GIR_EraseRootFromParent_Done, |
| 3187 | /* 6431 */ // Label 217: @6431 |
| 3188 | /* 6431 */ GIM_Try, /*On fail goto*//*Label 218*/ GIMT_Encode4(6493), // Rule ID 2533 // |
| 3189 | /* 6436 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 3190 | /* 6439 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3191 | /* 6443 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3192 | /* 6447 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3193 | /* 6451 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3194 | /* 6455 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3195 | /* 6458 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3196 | /* 6462 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3197 | /* 6466 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3198 | /* 6468 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3199 | /* 6475 */ // (add:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3200 | /* 6475 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWYrm), |
| 3201 | /* 6478 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3202 | /* 6480 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3203 | /* 6482 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3204 | /* 6486 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3205 | /* 6491 */ GIR_RootConstrainSelectedInstOperands, |
| 3206 | /* 6492 */ // GIR_Coverage, 2533, |
| 3207 | /* 6492 */ GIR_EraseRootFromParent_Done, |
| 3208 | /* 6493 */ // Label 218: @6493 |
| 3209 | /* 6493 */ GIM_Try, /*On fail goto*//*Label 219*/ GIMT_Encode4(6555), // Rule ID 4696 // |
| 3210 | /* 6498 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3211 | /* 6501 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3212 | /* 6505 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3213 | /* 6509 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3214 | /* 6513 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3215 | /* 6517 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3216 | /* 6520 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3217 | /* 6524 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3218 | /* 6528 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3219 | /* 6530 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3220 | /* 6537 */ // (add:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3221 | /* 6537 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZ256rm), |
| 3222 | /* 6540 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3223 | /* 6542 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3224 | /* 6544 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3225 | /* 6548 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3226 | /* 6553 */ GIR_RootConstrainSelectedInstOperands, |
| 3227 | /* 6554 */ // GIR_Coverage, 4696, |
| 3228 | /* 6554 */ GIR_EraseRootFromParent_Done, |
| 3229 | /* 6555 */ // Label 219: @6555 |
| 3230 | /* 6555 */ GIM_Try, /*On fail goto*//*Label 220*/ GIMT_Encode4(6582), // Rule ID 2532 // |
| 3231 | /* 6560 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 3232 | /* 6563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3233 | /* 6567 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3234 | /* 6571 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3235 | /* 6575 */ // (add:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPADDWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 3236 | /* 6575 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDWYrr), |
| 3237 | /* 6580 */ GIR_RootConstrainSelectedInstOperands, |
| 3238 | /* 6581 */ // GIR_Coverage, 2532, |
| 3239 | /* 6581 */ GIR_Done, |
| 3240 | /* 6582 */ // Label 220: @6582 |
| 3241 | /* 6582 */ GIM_Try, /*On fail goto*//*Label 221*/ GIMT_Encode4(6609), // Rule ID 4693 // |
| 3242 | /* 6587 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3243 | /* 6590 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3244 | /* 6594 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3245 | /* 6598 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3246 | /* 6602 */ // (add:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPADDWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 3247 | /* 6602 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDWZ256rr), |
| 3248 | /* 6607 */ GIR_RootConstrainSelectedInstOperands, |
| 3249 | /* 6608 */ // GIR_Coverage, 4693, |
| 3250 | /* 6608 */ GIR_Done, |
| 3251 | /* 6609 */ // Label 221: @6609 |
| 3252 | /* 6609 */ GIM_Reject, |
| 3253 | /* 6610 */ // Label 215: @6610 |
| 3254 | /* 6610 */ GIM_Reject, |
| 3255 | /* 6611 */ // Label 92: @6611 |
| 3256 | /* 6611 */ GIM_Try, /*On fail goto*//*Label 222*/ GIMT_Encode4(6766), |
| 3257 | /* 6616 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 3258 | /* 6619 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 3259 | /* 6622 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3260 | /* 6626 */ GIM_Try, /*On fail goto*//*Label 223*/ GIMT_Encode4(6684), // Rule ID 23714 // |
| 3261 | /* 6631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 3262 | /* 6634 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3263 | /* 6638 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3264 | /* 6642 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3265 | /* 6645 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3266 | /* 6649 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3267 | /* 6653 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3268 | /* 6657 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3269 | /* 6659 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3270 | /* 6666 */ // (add:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPADDDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3271 | /* 6666 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZrm), |
| 3272 | /* 6669 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3273 | /* 6671 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3274 | /* 6673 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3275 | /* 6677 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3276 | /* 6682 */ GIR_RootConstrainSelectedInstOperands, |
| 3277 | /* 6683 */ // GIR_Coverage, 23714, |
| 3278 | /* 6683 */ GIR_EraseRootFromParent_Done, |
| 3279 | /* 6684 */ // Label 223: @6684 |
| 3280 | /* 6684 */ GIM_Try, /*On fail goto*//*Label 224*/ GIMT_Encode4(6742), // Rule ID 4663 // |
| 3281 | /* 6689 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 3282 | /* 6692 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3283 | /* 6696 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3284 | /* 6700 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3285 | /* 6704 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3286 | /* 6707 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3287 | /* 6711 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3288 | /* 6715 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3289 | /* 6717 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3290 | /* 6724 */ // (add:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3291 | /* 6724 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZrm), |
| 3292 | /* 6727 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3293 | /* 6729 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3294 | /* 6731 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3295 | /* 6735 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3296 | /* 6740 */ GIR_RootConstrainSelectedInstOperands, |
| 3297 | /* 6741 */ // GIR_Coverage, 4663, |
| 3298 | /* 6741 */ GIR_EraseRootFromParent_Done, |
| 3299 | /* 6742 */ // Label 224: @6742 |
| 3300 | /* 6742 */ GIM_Try, /*On fail goto*//*Label 225*/ GIMT_Encode4(6765), // Rule ID 4660 // |
| 3301 | /* 6747 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 3302 | /* 6750 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3303 | /* 6754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3304 | /* 6758 */ // (add:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPADDDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 3305 | /* 6758 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDDZrr), |
| 3306 | /* 6763 */ GIR_RootConstrainSelectedInstOperands, |
| 3307 | /* 6764 */ // GIR_Coverage, 4660, |
| 3308 | /* 6764 */ GIR_Done, |
| 3309 | /* 6765 */ // Label 225: @6765 |
| 3310 | /* 6765 */ GIM_Reject, |
| 3311 | /* 6766 */ // Label 222: @6766 |
| 3312 | /* 6766 */ GIM_Reject, |
| 3313 | /* 6767 */ // Label 93: @6767 |
| 3314 | /* 6767 */ GIM_Try, /*On fail goto*//*Label 226*/ GIMT_Encode4(7081), |
| 3315 | /* 6772 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 3316 | /* 6775 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 3317 | /* 6778 */ GIM_Try, /*On fail goto*//*Label 227*/ GIMT_Encode4(6840), // Rule ID 23431 // |
| 3318 | /* 6783 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 3319 | /* 6786 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3320 | /* 6790 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3321 | /* 6794 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3322 | /* 6798 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3323 | /* 6801 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3324 | /* 6805 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3325 | /* 6809 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3326 | /* 6813 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3327 | /* 6815 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3328 | /* 6822 */ // (add:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPADDBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3329 | /* 6822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBYrm), |
| 3330 | /* 6825 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3331 | /* 6827 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3332 | /* 6829 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3333 | /* 6833 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3334 | /* 6838 */ GIR_RootConstrainSelectedInstOperands, |
| 3335 | /* 6839 */ // GIR_Coverage, 23431, |
| 3336 | /* 6839 */ GIR_EraseRootFromParent_Done, |
| 3337 | /* 6840 */ // Label 227: @6840 |
| 3338 | /* 6840 */ GIM_Try, /*On fail goto*//*Label 228*/ GIMT_Encode4(6902), // Rule ID 23744 // |
| 3339 | /* 6845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3340 | /* 6848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3341 | /* 6852 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3342 | /* 6856 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3343 | /* 6860 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3344 | /* 6863 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3345 | /* 6867 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3346 | /* 6871 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3347 | /* 6875 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3348 | /* 6877 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3349 | /* 6884 */ // (add:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPADDBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3350 | /* 6884 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZ256rm), |
| 3351 | /* 6887 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3352 | /* 6889 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3353 | /* 6891 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3354 | /* 6895 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3355 | /* 6900 */ GIR_RootConstrainSelectedInstOperands, |
| 3356 | /* 6901 */ // GIR_Coverage, 23744, |
| 3357 | /* 6901 */ GIR_EraseRootFromParent_Done, |
| 3358 | /* 6902 */ // Label 228: @6902 |
| 3359 | /* 6902 */ GIM_Try, /*On fail goto*//*Label 229*/ GIMT_Encode4(6964), // Rule ID 2527 // |
| 3360 | /* 6907 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 3361 | /* 6910 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3362 | /* 6914 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3363 | /* 6918 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3364 | /* 6922 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3365 | /* 6926 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3366 | /* 6929 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3367 | /* 6933 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3368 | /* 6937 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3369 | /* 6939 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3370 | /* 6946 */ // (add:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3371 | /* 6946 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBYrm), |
| 3372 | /* 6949 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3373 | /* 6951 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3374 | /* 6953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3375 | /* 6957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3376 | /* 6962 */ GIR_RootConstrainSelectedInstOperands, |
| 3377 | /* 6963 */ // GIR_Coverage, 2527, |
| 3378 | /* 6963 */ GIR_EraseRootFromParent_Done, |
| 3379 | /* 6964 */ // Label 229: @6964 |
| 3380 | /* 6964 */ GIM_Try, /*On fail goto*//*Label 230*/ GIMT_Encode4(7026), // Rule ID 4714 // |
| 3381 | /* 6969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3382 | /* 6972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3383 | /* 6976 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3384 | /* 6980 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3385 | /* 6984 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3386 | /* 6988 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3387 | /* 6991 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3388 | /* 6995 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3389 | /* 6999 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3390 | /* 7001 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3391 | /* 7008 */ // (add:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3392 | /* 7008 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZ256rm), |
| 3393 | /* 7011 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3394 | /* 7013 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3395 | /* 7015 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3396 | /* 7019 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3397 | /* 7024 */ GIR_RootConstrainSelectedInstOperands, |
| 3398 | /* 7025 */ // GIR_Coverage, 4714, |
| 3399 | /* 7025 */ GIR_EraseRootFromParent_Done, |
| 3400 | /* 7026 */ // Label 230: @7026 |
| 3401 | /* 7026 */ GIM_Try, /*On fail goto*//*Label 231*/ GIMT_Encode4(7053), // Rule ID 2526 // |
| 3402 | /* 7031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 3403 | /* 7034 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3404 | /* 7038 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3405 | /* 7042 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3406 | /* 7046 */ // (add:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPADDBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 3407 | /* 7046 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDBYrr), |
| 3408 | /* 7051 */ GIR_RootConstrainSelectedInstOperands, |
| 3409 | /* 7052 */ // GIR_Coverage, 2526, |
| 3410 | /* 7052 */ GIR_Done, |
| 3411 | /* 7053 */ // Label 231: @7053 |
| 3412 | /* 7053 */ GIM_Try, /*On fail goto*//*Label 232*/ GIMT_Encode4(7080), // Rule ID 4711 // |
| 3413 | /* 7058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3414 | /* 7061 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3415 | /* 7065 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3416 | /* 7069 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3417 | /* 7073 */ // (add:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPADDBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 3418 | /* 7073 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDBZ256rr), |
| 3419 | /* 7078 */ GIR_RootConstrainSelectedInstOperands, |
| 3420 | /* 7079 */ // GIR_Coverage, 4711, |
| 3421 | /* 7079 */ GIR_Done, |
| 3422 | /* 7080 */ // Label 232: @7080 |
| 3423 | /* 7080 */ GIM_Reject, |
| 3424 | /* 7081 */ // Label 226: @7081 |
| 3425 | /* 7081 */ GIM_Reject, |
| 3426 | /* 7082 */ // Label 94: @7082 |
| 3427 | /* 7082 */ GIM_Try, /*On fail goto*//*Label 233*/ GIMT_Encode4(7237), |
| 3428 | /* 7087 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 3429 | /* 7090 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 3430 | /* 7093 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3431 | /* 7097 */ GIM_Try, /*On fail goto*//*Label 234*/ GIMT_Encode4(7155), // Rule ID 23732 // |
| 3432 | /* 7102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3433 | /* 7105 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3434 | /* 7109 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3435 | /* 7113 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3436 | /* 7116 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3437 | /* 7120 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3438 | /* 7124 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3439 | /* 7128 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3440 | /* 7130 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3441 | /* 7137 */ // (add:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPADDWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3442 | /* 7137 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZrm), |
| 3443 | /* 7140 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3444 | /* 7142 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3445 | /* 7144 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3446 | /* 7148 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3447 | /* 7153 */ GIR_RootConstrainSelectedInstOperands, |
| 3448 | /* 7154 */ // GIR_Coverage, 23732, |
| 3449 | /* 7154 */ GIR_EraseRootFromParent_Done, |
| 3450 | /* 7155 */ // Label 234: @7155 |
| 3451 | /* 7155 */ GIM_Try, /*On fail goto*//*Label 235*/ GIMT_Encode4(7213), // Rule ID 4690 // |
| 3452 | /* 7160 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3453 | /* 7163 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3454 | /* 7167 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3455 | /* 7171 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3456 | /* 7175 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3457 | /* 7178 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3458 | /* 7182 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3459 | /* 7186 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3460 | /* 7188 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3461 | /* 7195 */ // (add:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3462 | /* 7195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZrm), |
| 3463 | /* 7198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3464 | /* 7200 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3465 | /* 7202 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3466 | /* 7206 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3467 | /* 7211 */ GIR_RootConstrainSelectedInstOperands, |
| 3468 | /* 7212 */ // GIR_Coverage, 4690, |
| 3469 | /* 7212 */ GIR_EraseRootFromParent_Done, |
| 3470 | /* 7213 */ // Label 235: @7213 |
| 3471 | /* 7213 */ GIM_Try, /*On fail goto*//*Label 236*/ GIMT_Encode4(7236), // Rule ID 4687 // |
| 3472 | /* 7218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3473 | /* 7221 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3474 | /* 7225 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3475 | /* 7229 */ // (add:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPADDWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 3476 | /* 7229 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDWZrr), |
| 3477 | /* 7234 */ GIR_RootConstrainSelectedInstOperands, |
| 3478 | /* 7235 */ // GIR_Coverage, 4687, |
| 3479 | /* 7235 */ GIR_Done, |
| 3480 | /* 7236 */ // Label 236: @7236 |
| 3481 | /* 7236 */ GIM_Reject, |
| 3482 | /* 7237 */ // Label 233: @7237 |
| 3483 | /* 7237 */ GIM_Reject, |
| 3484 | /* 7238 */ // Label 95: @7238 |
| 3485 | /* 7238 */ GIM_Try, /*On fail goto*//*Label 237*/ GIMT_Encode4(7393), |
| 3486 | /* 7243 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 3487 | /* 7246 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 3488 | /* 7249 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3489 | /* 7253 */ GIM_Try, /*On fail goto*//*Label 238*/ GIMT_Encode4(7311), // Rule ID 23741 // |
| 3490 | /* 7258 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3491 | /* 7261 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3492 | /* 7265 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3493 | /* 7269 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3494 | /* 7272 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3495 | /* 7276 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3496 | /* 7280 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3497 | /* 7284 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3498 | /* 7286 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3499 | /* 7293 */ // (add:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPADDBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3500 | /* 7293 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZrm), |
| 3501 | /* 7296 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3502 | /* 7298 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3503 | /* 7300 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3504 | /* 7304 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3505 | /* 7309 */ GIR_RootConstrainSelectedInstOperands, |
| 3506 | /* 7310 */ // GIR_Coverage, 23741, |
| 3507 | /* 7310 */ GIR_EraseRootFromParent_Done, |
| 3508 | /* 7311 */ // Label 238: @7311 |
| 3509 | /* 7311 */ GIM_Try, /*On fail goto*//*Label 239*/ GIMT_Encode4(7369), // Rule ID 4708 // |
| 3510 | /* 7316 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3511 | /* 7319 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3512 | /* 7323 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3513 | /* 7327 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3514 | /* 7331 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3515 | /* 7334 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3516 | /* 7338 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3517 | /* 7342 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3518 | /* 7344 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3519 | /* 7351 */ // (add:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3520 | /* 7351 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZrm), |
| 3521 | /* 7354 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3522 | /* 7356 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3523 | /* 7358 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3524 | /* 7362 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3525 | /* 7367 */ GIR_RootConstrainSelectedInstOperands, |
| 3526 | /* 7368 */ // GIR_Coverage, 4708, |
| 3527 | /* 7368 */ GIR_EraseRootFromParent_Done, |
| 3528 | /* 7369 */ // Label 239: @7369 |
| 3529 | /* 7369 */ GIM_Try, /*On fail goto*//*Label 240*/ GIMT_Encode4(7392), // Rule ID 4705 // |
| 3530 | /* 7374 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3531 | /* 7377 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3532 | /* 7381 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3533 | /* 7385 */ // (add:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPADDBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 3534 | /* 7385 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDBZrr), |
| 3535 | /* 7390 */ GIR_RootConstrainSelectedInstOperands, |
| 3536 | /* 7391 */ // GIR_Coverage, 4705, |
| 3537 | /* 7391 */ GIR_Done, |
| 3538 | /* 7392 */ // Label 240: @7392 |
| 3539 | /* 7392 */ GIM_Reject, |
| 3540 | /* 7393 */ // Label 237: @7393 |
| 3541 | /* 7393 */ GIM_Reject, |
| 3542 | /* 7394 */ // Label 96: @7394 |
| 3543 | /* 7394 */ GIM_Reject, |
| 3544 | /* 7395 */ // Label 1: @7395 |
| 3545 | /* 7395 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(25), /*)*//*default:*//*Label 257*/ GIMT_Encode4(10930), |
| 3546 | /* 7406 */ /*GILLT_s8*//*Label 241*/ GIMT_Encode4(7502), |
| 3547 | /* 7410 */ /*GILLT_s16*//*Label 242*/ GIMT_Encode4(7854), |
| 3548 | /* 7414 */ /*GILLT_s32*//*Label 243*/ GIMT_Encode4(8206), |
| 3549 | /* 7418 */ /*GILLT_s64*//*Label 244*/ GIMT_Encode4(8558), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 3550 | /* 7434 */ /*GILLT_v2s64*//*Label 245*/ GIMT_Encode4(8918), GIMT_Encode4(0), |
| 3551 | /* 7442 */ /*GILLT_v4s32*//*Label 246*/ GIMT_Encode4(9136), |
| 3552 | /* 7446 */ /*GILLT_v4s64*//*Label 247*/ GIMT_Encode4(9354), GIMT_Encode4(0), |
| 3553 | /* 7454 */ /*GILLT_v8s16*//*Label 248*/ GIMT_Encode4(9545), |
| 3554 | /* 7458 */ /*GILLT_v8s32*//*Label 249*/ GIMT_Encode4(9763), |
| 3555 | /* 7462 */ /*GILLT_v8s64*//*Label 250*/ GIMT_Encode4(9954), GIMT_Encode4(0), |
| 3556 | /* 7470 */ /*GILLT_v16s8*//*Label 251*/ GIMT_Encode4(10048), |
| 3557 | /* 7474 */ /*GILLT_v16s16*//*Label 252*/ GIMT_Encode4(10266), |
| 3558 | /* 7478 */ /*GILLT_v16s32*//*Label 253*/ GIMT_Encode4(10457), GIMT_Encode4(0), |
| 3559 | /* 7486 */ /*GILLT_v32s8*//*Label 254*/ GIMT_Encode4(10551), |
| 3560 | /* 7490 */ /*GILLT_v32s16*//*Label 255*/ GIMT_Encode4(10742), GIMT_Encode4(0), |
| 3561 | /* 7498 */ /*GILLT_v64s8*//*Label 256*/ GIMT_Encode4(10836), |
| 3562 | /* 7502 */ // Label 241: @7502 |
| 3563 | /* 7502 */ GIM_Try, /*On fail goto*//*Label 258*/ GIMT_Encode4(7853), |
| 3564 | /* 7507 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 3565 | /* 7510 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 3566 | /* 7513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3567 | /* 7517 */ GIM_Try, /*On fail goto*//*Label 259*/ GIMT_Encode4(7578), // Rule ID 22808 // |
| 3568 | /* 7522 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3569 | /* 7525 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3570 | /* 7529 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3571 | /* 7533 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3572 | /* 7537 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3573 | /* 7540 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3574 | /* 7544 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 3575 | /* 7548 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3576 | /* 7550 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3577 | /* 7557 */ // (sub:{ *:[i8] } GR8:{ *:[i8] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>) => (SUB8rm:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3578 | /* 7557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8rm), |
| 3579 | /* 7560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3580 | /* 7562 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3581 | /* 7564 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3582 | /* 7568 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3583 | /* 7571 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3584 | /* 7576 */ GIR_RootConstrainSelectedInstOperands, |
| 3585 | /* 7577 */ // GIR_Coverage, 22808, |
| 3586 | /* 7577 */ GIR_EraseRootFromParent_Done, |
| 3587 | /* 7578 */ // Label 259: @7578 |
| 3588 | /* 7578 */ GIM_Try, /*On fail goto*//*Label 260*/ GIMT_Encode4(7639), // Rule ID 22898 // |
| 3589 | /* 7583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3590 | /* 7586 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3591 | /* 7590 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3592 | /* 7594 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3593 | /* 7598 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3594 | /* 7601 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3595 | /* 7605 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 3596 | /* 7609 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3597 | /* 7611 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3598 | /* 7618 */ // (sub:{ *:[i8] } GR8:{ *:[i8] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>) => (SUB8rm_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3599 | /* 7618 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8rm_ND), |
| 3600 | /* 7621 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3601 | /* 7623 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3602 | /* 7625 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3603 | /* 7629 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3604 | /* 7632 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3605 | /* 7637 */ GIR_RootConstrainSelectedInstOperands, |
| 3606 | /* 7638 */ // GIR_Coverage, 22898, |
| 3607 | /* 7638 */ GIR_EraseRootFromParent_Done, |
| 3608 | /* 7639 */ // Label 260: @7639 |
| 3609 | /* 7639 */ GIM_Try, /*On fail goto*//*Label 261*/ GIMT_Encode4(7667), // Rule ID 241 // |
| 3610 | /* 7644 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3611 | /* 7647 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3612 | /* 7651 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3613 | /* 7655 */ // (sub:{ *:[i8] } 0:{ *:[i8] }, GR8:{ *:[i8] }:$src1) => (NEG8r:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 3614 | /* 7655 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG8r), |
| 3615 | /* 7658 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3616 | /* 7660 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3617 | /* 7662 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3618 | /* 7665 */ GIR_RootConstrainSelectedInstOperands, |
| 3619 | /* 7666 */ // GIR_Coverage, 241, |
| 3620 | /* 7666 */ GIR_EraseRootFromParent_Done, |
| 3621 | /* 7667 */ // Label 261: @7667 |
| 3622 | /* 7667 */ GIM_Try, /*On fail goto*//*Label 262*/ GIMT_Encode4(7695), // Rule ID 249 // |
| 3623 | /* 7672 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3624 | /* 7675 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3625 | /* 7679 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3626 | /* 7683 */ // (sub:{ *:[i8] } 0:{ *:[i8] }, GR8:{ *:[i8] }:$src1) => (NEG8r_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 3627 | /* 7683 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG8r_ND), |
| 3628 | /* 7686 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3629 | /* 7688 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3630 | /* 7690 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3631 | /* 7693 */ GIR_RootConstrainSelectedInstOperands, |
| 3632 | /* 7694 */ // GIR_Coverage, 249, |
| 3633 | /* 7694 */ GIR_EraseRootFromParent_Done, |
| 3634 | /* 7695 */ // Label 262: @7695 |
| 3635 | /* 7695 */ GIM_Try, /*On fail goto*//*Label 263*/ GIMT_Encode4(7720), // Rule ID 257 // |
| 3636 | /* 7700 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3637 | /* 7703 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3638 | /* 7707 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3639 | /* 7711 */ // (sub:{ *:[i8] } 0:{ *:[i8] }, GR8:{ *:[i8] }:$src1) => (NEG8r_NF_ND:{ *:[i8] } GR8:{ *:[i8] }:$src1) |
| 3640 | /* 7711 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG8r_NF_ND), |
| 3641 | /* 7714 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3642 | /* 7716 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3643 | /* 7718 */ GIR_RootConstrainSelectedInstOperands, |
| 3644 | /* 7719 */ // GIR_Coverage, 257, |
| 3645 | /* 7719 */ GIR_EraseRootFromParent_Done, |
| 3646 | /* 7720 */ // Label 263: @7720 |
| 3647 | /* 7720 */ GIM_Try, /*On fail goto*//*Label 264*/ GIMT_Encode4(7757), // Rule ID 22812 // |
| 3648 | /* 7725 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3649 | /* 7728 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3650 | /* 7732 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3651 | /* 7736 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3652 | /* 7740 */ // MIs[1] Operand 1 |
| 3653 | /* 7740 */ // No operand predicates |
| 3654 | /* 7740 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3655 | /* 7742 */ // (sub:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SUB8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 3656 | /* 7742 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8ri), |
| 3657 | /* 7745 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3658 | /* 7747 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3659 | /* 7749 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3660 | /* 7752 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3661 | /* 7755 */ GIR_RootConstrainSelectedInstOperands, |
| 3662 | /* 7756 */ // GIR_Coverage, 22812, |
| 3663 | /* 7756 */ GIR_EraseRootFromParent_Done, |
| 3664 | /* 7757 */ // Label 264: @7757 |
| 3665 | /* 7757 */ GIM_Try, /*On fail goto*//*Label 265*/ GIMT_Encode4(7794), // Rule ID 22902 // |
| 3666 | /* 7762 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3667 | /* 7765 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3668 | /* 7769 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3669 | /* 7773 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3670 | /* 7777 */ // MIs[1] Operand 1 |
| 3671 | /* 7777 */ // No operand predicates |
| 3672 | /* 7777 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3673 | /* 7779 */ // (sub:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SUB8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 3674 | /* 7779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8ri_ND), |
| 3675 | /* 7782 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3676 | /* 7784 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3677 | /* 7786 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3678 | /* 7789 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3679 | /* 7792 */ GIR_RootConstrainSelectedInstOperands, |
| 3680 | /* 7793 */ // GIR_Coverage, 22902, |
| 3681 | /* 7793 */ GIR_EraseRootFromParent_Done, |
| 3682 | /* 7794 */ // Label 265: @7794 |
| 3683 | /* 7794 */ GIM_Try, /*On fail goto*//*Label 266*/ GIMT_Encode4(7823), // Rule ID 22804 // |
| 3684 | /* 7799 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3685 | /* 7802 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3686 | /* 7806 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3687 | /* 7810 */ // (sub:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (SUB8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 3688 | /* 7810 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB8rr), |
| 3689 | /* 7815 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 3690 | /* 7821 */ GIR_RootConstrainSelectedInstOperands, |
| 3691 | /* 7822 */ // GIR_Coverage, 22804, |
| 3692 | /* 7822 */ GIR_Done, |
| 3693 | /* 7823 */ // Label 266: @7823 |
| 3694 | /* 7823 */ GIM_Try, /*On fail goto*//*Label 267*/ GIMT_Encode4(7852), // Rule ID 22894 // |
| 3695 | /* 7828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3696 | /* 7831 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3697 | /* 7835 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3698 | /* 7839 */ // (sub:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (SUB8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 3699 | /* 7839 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB8rr_ND), |
| 3700 | /* 7844 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 3701 | /* 7850 */ GIR_RootConstrainSelectedInstOperands, |
| 3702 | /* 7851 */ // GIR_Coverage, 22894, |
| 3703 | /* 7851 */ GIR_Done, |
| 3704 | /* 7852 */ // Label 267: @7852 |
| 3705 | /* 7852 */ GIM_Reject, |
| 3706 | /* 7853 */ // Label 258: @7853 |
| 3707 | /* 7853 */ GIM_Reject, |
| 3708 | /* 7854 */ // Label 242: @7854 |
| 3709 | /* 7854 */ GIM_Try, /*On fail goto*//*Label 268*/ GIMT_Encode4(8205), |
| 3710 | /* 7859 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 3711 | /* 7862 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 3712 | /* 7865 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3713 | /* 7869 */ GIM_Try, /*On fail goto*//*Label 269*/ GIMT_Encode4(7930), // Rule ID 22809 // |
| 3714 | /* 7874 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3715 | /* 7877 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3716 | /* 7881 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3717 | /* 7885 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3718 | /* 7889 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3719 | /* 7892 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3720 | /* 7896 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 3721 | /* 7900 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3722 | /* 7902 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3723 | /* 7909 */ // (sub:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (SUB16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3724 | /* 7909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16rm), |
| 3725 | /* 7912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3726 | /* 7914 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3727 | /* 7916 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3728 | /* 7920 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3729 | /* 7923 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3730 | /* 7928 */ GIR_RootConstrainSelectedInstOperands, |
| 3731 | /* 7929 */ // GIR_Coverage, 22809, |
| 3732 | /* 7929 */ GIR_EraseRootFromParent_Done, |
| 3733 | /* 7930 */ // Label 269: @7930 |
| 3734 | /* 7930 */ GIM_Try, /*On fail goto*//*Label 270*/ GIMT_Encode4(7991), // Rule ID 22899 // |
| 3735 | /* 7935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3736 | /* 7938 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3737 | /* 7942 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3738 | /* 7946 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3739 | /* 7950 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3740 | /* 7953 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3741 | /* 7957 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 3742 | /* 7961 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3743 | /* 7963 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3744 | /* 7970 */ // (sub:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (SUB16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3745 | /* 7970 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16rm_ND), |
| 3746 | /* 7973 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3747 | /* 7975 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3748 | /* 7977 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3749 | /* 7981 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3750 | /* 7984 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3751 | /* 7989 */ GIR_RootConstrainSelectedInstOperands, |
| 3752 | /* 7990 */ // GIR_Coverage, 22899, |
| 3753 | /* 7990 */ GIR_EraseRootFromParent_Done, |
| 3754 | /* 7991 */ // Label 270: @7991 |
| 3755 | /* 7991 */ GIM_Try, /*On fail goto*//*Label 271*/ GIMT_Encode4(8019), // Rule ID 242 // |
| 3756 | /* 7996 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3757 | /* 7999 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3758 | /* 8003 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3759 | /* 8007 */ // (sub:{ *:[i16] } 0:{ *:[i16] }, GR16:{ *:[i16] }:$src1) => (NEG16r:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 3760 | /* 8007 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG16r), |
| 3761 | /* 8010 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3762 | /* 8012 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3763 | /* 8014 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3764 | /* 8017 */ GIR_RootConstrainSelectedInstOperands, |
| 3765 | /* 8018 */ // GIR_Coverage, 242, |
| 3766 | /* 8018 */ GIR_EraseRootFromParent_Done, |
| 3767 | /* 8019 */ // Label 271: @8019 |
| 3768 | /* 8019 */ GIM_Try, /*On fail goto*//*Label 272*/ GIMT_Encode4(8047), // Rule ID 250 // |
| 3769 | /* 8024 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3770 | /* 8027 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3771 | /* 8031 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3772 | /* 8035 */ // (sub:{ *:[i16] } 0:{ *:[i16] }, GR16:{ *:[i16] }:$src1) => (NEG16r_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 3773 | /* 8035 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG16r_ND), |
| 3774 | /* 8038 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3775 | /* 8040 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3776 | /* 8042 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3777 | /* 8045 */ GIR_RootConstrainSelectedInstOperands, |
| 3778 | /* 8046 */ // GIR_Coverage, 250, |
| 3779 | /* 8046 */ GIR_EraseRootFromParent_Done, |
| 3780 | /* 8047 */ // Label 272: @8047 |
| 3781 | /* 8047 */ GIM_Try, /*On fail goto*//*Label 273*/ GIMT_Encode4(8072), // Rule ID 258 // |
| 3782 | /* 8052 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3783 | /* 8055 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3784 | /* 8059 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3785 | /* 8063 */ // (sub:{ *:[i16] } 0:{ *:[i16] }, GR16:{ *:[i16] }:$src1) => (NEG16r_NF_ND:{ *:[i16] } GR16:{ *:[i16] }:$src1) |
| 3786 | /* 8063 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG16r_NF_ND), |
| 3787 | /* 8066 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3788 | /* 8068 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3789 | /* 8070 */ GIR_RootConstrainSelectedInstOperands, |
| 3790 | /* 8071 */ // GIR_Coverage, 258, |
| 3791 | /* 8071 */ GIR_EraseRootFromParent_Done, |
| 3792 | /* 8072 */ // Label 273: @8072 |
| 3793 | /* 8072 */ GIM_Try, /*On fail goto*//*Label 274*/ GIMT_Encode4(8109), // Rule ID 22813 // |
| 3794 | /* 8077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3795 | /* 8080 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3796 | /* 8084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3797 | /* 8088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3798 | /* 8092 */ // MIs[1] Operand 1 |
| 3799 | /* 8092 */ // No operand predicates |
| 3800 | /* 8092 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3801 | /* 8094 */ // (sub:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (SUB16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 3802 | /* 8094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16ri), |
| 3803 | /* 8097 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3804 | /* 8099 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3805 | /* 8101 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3806 | /* 8104 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3807 | /* 8107 */ GIR_RootConstrainSelectedInstOperands, |
| 3808 | /* 8108 */ // GIR_Coverage, 22813, |
| 3809 | /* 8108 */ GIR_EraseRootFromParent_Done, |
| 3810 | /* 8109 */ // Label 274: @8109 |
| 3811 | /* 8109 */ GIM_Try, /*On fail goto*//*Label 275*/ GIMT_Encode4(8146), // Rule ID 22903 // |
| 3812 | /* 8114 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3813 | /* 8117 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3814 | /* 8121 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3815 | /* 8125 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3816 | /* 8129 */ // MIs[1] Operand 1 |
| 3817 | /* 8129 */ // No operand predicates |
| 3818 | /* 8129 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3819 | /* 8131 */ // (sub:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (SUB16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 3820 | /* 8131 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16ri_ND), |
| 3821 | /* 8134 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3822 | /* 8136 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3823 | /* 8138 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3824 | /* 8141 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3825 | /* 8144 */ GIR_RootConstrainSelectedInstOperands, |
| 3826 | /* 8145 */ // GIR_Coverage, 22903, |
| 3827 | /* 8145 */ GIR_EraseRootFromParent_Done, |
| 3828 | /* 8146 */ // Label 275: @8146 |
| 3829 | /* 8146 */ GIM_Try, /*On fail goto*//*Label 276*/ GIMT_Encode4(8175), // Rule ID 22805 // |
| 3830 | /* 8151 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3831 | /* 8154 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3832 | /* 8158 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3833 | /* 8162 */ // (sub:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (SUB16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 3834 | /* 8162 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB16rr), |
| 3835 | /* 8167 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 3836 | /* 8173 */ GIR_RootConstrainSelectedInstOperands, |
| 3837 | /* 8174 */ // GIR_Coverage, 22805, |
| 3838 | /* 8174 */ GIR_Done, |
| 3839 | /* 8175 */ // Label 276: @8175 |
| 3840 | /* 8175 */ GIM_Try, /*On fail goto*//*Label 277*/ GIMT_Encode4(8204), // Rule ID 22895 // |
| 3841 | /* 8180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3842 | /* 8183 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3843 | /* 8187 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3844 | /* 8191 */ // (sub:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (SUB16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 3845 | /* 8191 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB16rr_ND), |
| 3846 | /* 8196 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 3847 | /* 8202 */ GIR_RootConstrainSelectedInstOperands, |
| 3848 | /* 8203 */ // GIR_Coverage, 22895, |
| 3849 | /* 8203 */ GIR_Done, |
| 3850 | /* 8204 */ // Label 277: @8204 |
| 3851 | /* 8204 */ GIM_Reject, |
| 3852 | /* 8205 */ // Label 268: @8205 |
| 3853 | /* 8205 */ GIM_Reject, |
| 3854 | /* 8206 */ // Label 243: @8206 |
| 3855 | /* 8206 */ GIM_Try, /*On fail goto*//*Label 278*/ GIMT_Encode4(8557), |
| 3856 | /* 8211 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3857 | /* 8214 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 3858 | /* 8217 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3859 | /* 8221 */ GIM_Try, /*On fail goto*//*Label 279*/ GIMT_Encode4(8282), // Rule ID 22810 // |
| 3860 | /* 8226 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3861 | /* 8229 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3862 | /* 8233 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3863 | /* 8237 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3864 | /* 8241 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3865 | /* 8244 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3866 | /* 8248 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 3867 | /* 8252 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3868 | /* 8254 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3869 | /* 8261 */ // (sub:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (SUB32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3870 | /* 8261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32rm), |
| 3871 | /* 8264 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3872 | /* 8266 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3873 | /* 8268 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3874 | /* 8272 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3875 | /* 8275 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3876 | /* 8280 */ GIR_RootConstrainSelectedInstOperands, |
| 3877 | /* 8281 */ // GIR_Coverage, 22810, |
| 3878 | /* 8281 */ GIR_EraseRootFromParent_Done, |
| 3879 | /* 8282 */ // Label 279: @8282 |
| 3880 | /* 8282 */ GIM_Try, /*On fail goto*//*Label 280*/ GIMT_Encode4(8343), // Rule ID 22900 // |
| 3881 | /* 8287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3882 | /* 8290 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3883 | /* 8294 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3884 | /* 8298 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3885 | /* 8302 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3886 | /* 8305 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3887 | /* 8309 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 3888 | /* 8313 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3889 | /* 8315 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3890 | /* 8322 */ // (sub:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (SUB32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3891 | /* 8322 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32rm_ND), |
| 3892 | /* 8325 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3893 | /* 8327 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3894 | /* 8329 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3895 | /* 8333 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3896 | /* 8336 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3897 | /* 8341 */ GIR_RootConstrainSelectedInstOperands, |
| 3898 | /* 8342 */ // GIR_Coverage, 22900, |
| 3899 | /* 8342 */ GIR_EraseRootFromParent_Done, |
| 3900 | /* 8343 */ // Label 280: @8343 |
| 3901 | /* 8343 */ GIM_Try, /*On fail goto*//*Label 281*/ GIMT_Encode4(8371), // Rule ID 243 // |
| 3902 | /* 8348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3903 | /* 8351 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3904 | /* 8355 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3905 | /* 8359 */ // (sub:{ *:[i32] } 0:{ *:[i32] }, GR32:{ *:[i32] }:$src1) => (NEG32r:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 3906 | /* 8359 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG32r), |
| 3907 | /* 8362 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3908 | /* 8364 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3909 | /* 8366 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3910 | /* 8369 */ GIR_RootConstrainSelectedInstOperands, |
| 3911 | /* 8370 */ // GIR_Coverage, 243, |
| 3912 | /* 8370 */ GIR_EraseRootFromParent_Done, |
| 3913 | /* 8371 */ // Label 281: @8371 |
| 3914 | /* 8371 */ GIM_Try, /*On fail goto*//*Label 282*/ GIMT_Encode4(8399), // Rule ID 251 // |
| 3915 | /* 8376 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3916 | /* 8379 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3917 | /* 8383 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3918 | /* 8387 */ // (sub:{ *:[i32] } 0:{ *:[i32] }, GR32:{ *:[i32] }:$src1) => (NEG32r_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 3919 | /* 8387 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG32r_ND), |
| 3920 | /* 8390 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3921 | /* 8392 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3922 | /* 8394 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3923 | /* 8397 */ GIR_RootConstrainSelectedInstOperands, |
| 3924 | /* 8398 */ // GIR_Coverage, 251, |
| 3925 | /* 8398 */ GIR_EraseRootFromParent_Done, |
| 3926 | /* 8399 */ // Label 282: @8399 |
| 3927 | /* 8399 */ GIM_Try, /*On fail goto*//*Label 283*/ GIMT_Encode4(8424), // Rule ID 259 // |
| 3928 | /* 8404 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3929 | /* 8407 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3930 | /* 8411 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3931 | /* 8415 */ // (sub:{ *:[i32] } 0:{ *:[i32] }, GR32:{ *:[i32] }:$src1) => (NEG32r_NF_ND:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 3932 | /* 8415 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG32r_NF_ND), |
| 3933 | /* 8418 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3934 | /* 8420 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3935 | /* 8422 */ GIR_RootConstrainSelectedInstOperands, |
| 3936 | /* 8423 */ // GIR_Coverage, 259, |
| 3937 | /* 8423 */ GIR_EraseRootFromParent_Done, |
| 3938 | /* 8424 */ // Label 283: @8424 |
| 3939 | /* 8424 */ GIM_Try, /*On fail goto*//*Label 284*/ GIMT_Encode4(8461), // Rule ID 22814 // |
| 3940 | /* 8429 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3941 | /* 8432 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3942 | /* 8436 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3943 | /* 8440 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3944 | /* 8444 */ // MIs[1] Operand 1 |
| 3945 | /* 8444 */ // No operand predicates |
| 3946 | /* 8444 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3947 | /* 8446 */ // (sub:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (SUB32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 3948 | /* 8446 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32ri), |
| 3949 | /* 8449 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3950 | /* 8451 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3951 | /* 8453 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3952 | /* 8456 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3953 | /* 8459 */ GIR_RootConstrainSelectedInstOperands, |
| 3954 | /* 8460 */ // GIR_Coverage, 22814, |
| 3955 | /* 8460 */ GIR_EraseRootFromParent_Done, |
| 3956 | /* 8461 */ // Label 284: @8461 |
| 3957 | /* 8461 */ GIM_Try, /*On fail goto*//*Label 285*/ GIMT_Encode4(8498), // Rule ID 22904 // |
| 3958 | /* 8466 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3959 | /* 8469 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3960 | /* 8473 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3961 | /* 8477 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3962 | /* 8481 */ // MIs[1] Operand 1 |
| 3963 | /* 8481 */ // No operand predicates |
| 3964 | /* 8481 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3965 | /* 8483 */ // (sub:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (SUB32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 3966 | /* 8483 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32ri_ND), |
| 3967 | /* 8486 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3968 | /* 8488 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3969 | /* 8490 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3970 | /* 8493 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3971 | /* 8496 */ GIR_RootConstrainSelectedInstOperands, |
| 3972 | /* 8497 */ // GIR_Coverage, 22904, |
| 3973 | /* 8497 */ GIR_EraseRootFromParent_Done, |
| 3974 | /* 8498 */ // Label 285: @8498 |
| 3975 | /* 8498 */ GIM_Try, /*On fail goto*//*Label 286*/ GIMT_Encode4(8527), // Rule ID 22806 // |
| 3976 | /* 8503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3977 | /* 8506 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3978 | /* 8510 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3979 | /* 8514 */ // (sub:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (SUB32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 3980 | /* 8514 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB32rr), |
| 3981 | /* 8519 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 3982 | /* 8525 */ GIR_RootConstrainSelectedInstOperands, |
| 3983 | /* 8526 */ // GIR_Coverage, 22806, |
| 3984 | /* 8526 */ GIR_Done, |
| 3985 | /* 8527 */ // Label 286: @8527 |
| 3986 | /* 8527 */ GIM_Try, /*On fail goto*//*Label 287*/ GIMT_Encode4(8556), // Rule ID 22896 // |
| 3987 | /* 8532 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3988 | /* 8535 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3989 | /* 8539 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3990 | /* 8543 */ // (sub:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (SUB32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 3991 | /* 8543 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB32rr_ND), |
| 3992 | /* 8548 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 3993 | /* 8554 */ GIR_RootConstrainSelectedInstOperands, |
| 3994 | /* 8555 */ // GIR_Coverage, 22896, |
| 3995 | /* 8555 */ GIR_Done, |
| 3996 | /* 8556 */ // Label 287: @8556 |
| 3997 | /* 8556 */ GIM_Reject, |
| 3998 | /* 8557 */ // Label 278: @8557 |
| 3999 | /* 8557 */ GIM_Reject, |
| 4000 | /* 8558 */ // Label 244: @8558 |
| 4001 | /* 8558 */ GIM_Try, /*On fail goto*//*Label 288*/ GIMT_Encode4(8917), |
| 4002 | /* 8563 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 4003 | /* 8566 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 4004 | /* 8569 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4005 | /* 8573 */ GIM_Try, /*On fail goto*//*Label 289*/ GIMT_Encode4(8634), // Rule ID 22811 // |
| 4006 | /* 8578 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4007 | /* 8581 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4008 | /* 8585 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4009 | /* 8589 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4010 | /* 8593 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4011 | /* 8596 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4012 | /* 8600 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4013 | /* 8604 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4014 | /* 8606 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4015 | /* 8613 */ // (sub:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUB64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4016 | /* 8613 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64rm), |
| 4017 | /* 8616 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4018 | /* 8618 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4019 | /* 8620 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4020 | /* 8624 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4021 | /* 8627 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4022 | /* 8632 */ GIR_RootConstrainSelectedInstOperands, |
| 4023 | /* 8633 */ // GIR_Coverage, 22811, |
| 4024 | /* 8633 */ GIR_EraseRootFromParent_Done, |
| 4025 | /* 8634 */ // Label 289: @8634 |
| 4026 | /* 8634 */ GIM_Try, /*On fail goto*//*Label 290*/ GIMT_Encode4(8695), // Rule ID 22901 // |
| 4027 | /* 8639 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 4028 | /* 8642 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4029 | /* 8646 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4030 | /* 8650 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4031 | /* 8654 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4032 | /* 8657 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4033 | /* 8661 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4034 | /* 8665 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4035 | /* 8667 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4036 | /* 8674 */ // (sub:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUB64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4037 | /* 8674 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64rm_ND), |
| 4038 | /* 8677 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4039 | /* 8679 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4040 | /* 8681 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4041 | /* 8685 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4042 | /* 8688 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4043 | /* 8693 */ GIR_RootConstrainSelectedInstOperands, |
| 4044 | /* 8694 */ // GIR_Coverage, 22901, |
| 4045 | /* 8694 */ GIR_EraseRootFromParent_Done, |
| 4046 | /* 8695 */ // Label 290: @8695 |
| 4047 | /* 8695 */ GIM_Try, /*On fail goto*//*Label 291*/ GIMT_Encode4(8723), // Rule ID 244 // |
| 4048 | /* 8700 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4049 | /* 8703 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 4050 | /* 8707 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4051 | /* 8711 */ // (sub:{ *:[i64] } 0:{ *:[i64] }, GR64:{ *:[i64] }:$src1) => (NEG64r:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 4052 | /* 8711 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG64r), |
| 4053 | /* 8714 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4054 | /* 8716 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 4055 | /* 8718 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4056 | /* 8721 */ GIR_RootConstrainSelectedInstOperands, |
| 4057 | /* 8722 */ // GIR_Coverage, 244, |
| 4058 | /* 8722 */ GIR_EraseRootFromParent_Done, |
| 4059 | /* 8723 */ // Label 291: @8723 |
| 4060 | /* 8723 */ GIM_Try, /*On fail goto*//*Label 292*/ GIMT_Encode4(8751), // Rule ID 252 // |
| 4061 | /* 8728 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 4062 | /* 8731 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 4063 | /* 8735 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4064 | /* 8739 */ // (sub:{ *:[i64] } 0:{ *:[i64] }, GR64:{ *:[i64] }:$src1) => (NEG64r_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 4065 | /* 8739 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG64r_ND), |
| 4066 | /* 8742 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4067 | /* 8744 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 4068 | /* 8746 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4069 | /* 8749 */ GIR_RootConstrainSelectedInstOperands, |
| 4070 | /* 8750 */ // GIR_Coverage, 252, |
| 4071 | /* 8750 */ GIR_EraseRootFromParent_Done, |
| 4072 | /* 8751 */ // Label 292: @8751 |
| 4073 | /* 8751 */ GIM_Try, /*On fail goto*//*Label 293*/ GIMT_Encode4(8776), // Rule ID 260 // |
| 4074 | /* 8756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 4075 | /* 8759 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 4076 | /* 8763 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4077 | /* 8767 */ // (sub:{ *:[i64] } 0:{ *:[i64] }, GR64:{ *:[i64] }:$src1) => (NEG64r_NF_ND:{ *:[i64] } GR64:{ *:[i64] }:$src1) |
| 4078 | /* 8767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG64r_NF_ND), |
| 4079 | /* 8770 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4080 | /* 8772 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 4081 | /* 8774 */ GIR_RootConstrainSelectedInstOperands, |
| 4082 | /* 8775 */ // GIR_Coverage, 260, |
| 4083 | /* 8775 */ GIR_EraseRootFromParent_Done, |
| 4084 | /* 8776 */ // Label 293: @8776 |
| 4085 | /* 8776 */ GIM_Try, /*On fail goto*//*Label 294*/ GIMT_Encode4(8817), // Rule ID 22815 // |
| 4086 | /* 8781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4087 | /* 8784 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4088 | /* 8788 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4089 | /* 8792 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 4090 | /* 8796 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 4091 | /* 8800 */ // MIs[1] Operand 1 |
| 4092 | /* 8800 */ // No operand predicates |
| 4093 | /* 8800 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4094 | /* 8802 */ // (sub:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (SUB64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 4095 | /* 8802 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32), |
| 4096 | /* 8805 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4097 | /* 8807 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4098 | /* 8809 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 4099 | /* 8812 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4100 | /* 8815 */ GIR_RootConstrainSelectedInstOperands, |
| 4101 | /* 8816 */ // GIR_Coverage, 22815, |
| 4102 | /* 8816 */ GIR_EraseRootFromParent_Done, |
| 4103 | /* 8817 */ // Label 294: @8817 |
| 4104 | /* 8817 */ GIM_Try, /*On fail goto*//*Label 295*/ GIMT_Encode4(8858), // Rule ID 22905 // |
| 4105 | /* 8822 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 4106 | /* 8825 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4107 | /* 8829 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4108 | /* 8833 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 4109 | /* 8837 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 4110 | /* 8841 */ // MIs[1] Operand 1 |
| 4111 | /* 8841 */ // No operand predicates |
| 4112 | /* 8841 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4113 | /* 8843 */ // (sub:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (SUB64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 4114 | /* 8843 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32_ND), |
| 4115 | /* 8846 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4116 | /* 8848 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4117 | /* 8850 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 4118 | /* 8853 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4119 | /* 8856 */ GIR_RootConstrainSelectedInstOperands, |
| 4120 | /* 8857 */ // GIR_Coverage, 22905, |
| 4121 | /* 8857 */ GIR_EraseRootFromParent_Done, |
| 4122 | /* 8858 */ // Label 295: @8858 |
| 4123 | /* 8858 */ GIM_Try, /*On fail goto*//*Label 296*/ GIMT_Encode4(8887), // Rule ID 22807 // |
| 4124 | /* 8863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4125 | /* 8866 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4126 | /* 8870 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4127 | /* 8874 */ // (sub:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (SUB64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 4128 | /* 8874 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB64rr), |
| 4129 | /* 8879 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 4130 | /* 8885 */ GIR_RootConstrainSelectedInstOperands, |
| 4131 | /* 8886 */ // GIR_Coverage, 22807, |
| 4132 | /* 8886 */ GIR_Done, |
| 4133 | /* 8887 */ // Label 296: @8887 |
| 4134 | /* 8887 */ GIM_Try, /*On fail goto*//*Label 297*/ GIMT_Encode4(8916), // Rule ID 22897 // |
| 4135 | /* 8892 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 4136 | /* 8895 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4137 | /* 8899 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4138 | /* 8903 */ // (sub:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (SUB64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 4139 | /* 8903 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB64rr_ND), |
| 4140 | /* 8908 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 4141 | /* 8914 */ GIR_RootConstrainSelectedInstOperands, |
| 4142 | /* 8915 */ // GIR_Coverage, 22897, |
| 4143 | /* 8915 */ GIR_Done, |
| 4144 | /* 8916 */ // Label 297: @8916 |
| 4145 | /* 8916 */ GIM_Reject, |
| 4146 | /* 8917 */ // Label 288: @8917 |
| 4147 | /* 8917 */ GIM_Reject, |
| 4148 | /* 8918 */ // Label 245: @8918 |
| 4149 | /* 8918 */ GIM_Try, /*On fail goto*//*Label 298*/ GIMT_Encode4(9135), |
| 4150 | /* 8923 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4151 | /* 8926 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 4152 | /* 8929 */ GIM_Try, /*On fail goto*//*Label 299*/ GIMT_Encode4(8991), // Rule ID 2607 // |
| 4153 | /* 8934 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 4154 | /* 8937 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4155 | /* 8941 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4156 | /* 8945 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4157 | /* 8949 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4158 | /* 8953 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4159 | /* 8956 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4160 | /* 8960 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4161 | /* 8964 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4162 | /* 8966 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4163 | /* 8973 */ // (sub:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBQrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4164 | /* 8973 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBQrm), |
| 4165 | /* 8976 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4166 | /* 8978 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4167 | /* 8980 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4168 | /* 8984 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4169 | /* 8989 */ GIR_RootConstrainSelectedInstOperands, |
| 4170 | /* 8990 */ // GIR_Coverage, 2607, |
| 4171 | /* 8990 */ GIR_EraseRootFromParent_Done, |
| 4172 | /* 8991 */ // Label 299: @8991 |
| 4173 | /* 8991 */ GIM_Try, /*On fail goto*//*Label 300*/ GIMT_Encode4(9053), // Rule ID 4744 // |
| 4174 | /* 8996 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4175 | /* 8999 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4176 | /* 9003 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4177 | /* 9007 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4178 | /* 9011 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4179 | /* 9015 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4180 | /* 9018 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4181 | /* 9022 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4182 | /* 9026 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4183 | /* 9028 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4184 | /* 9035 */ // (sub:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4185 | /* 9035 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBQZ128rm), |
| 4186 | /* 9038 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4187 | /* 9040 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4188 | /* 9042 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4189 | /* 9046 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4190 | /* 9051 */ GIR_RootConstrainSelectedInstOperands, |
| 4191 | /* 9052 */ // GIR_Coverage, 4744, |
| 4192 | /* 9052 */ GIR_EraseRootFromParent_Done, |
| 4193 | /* 9053 */ // Label 300: @9053 |
| 4194 | /* 9053 */ GIM_Try, /*On fail goto*//*Label 301*/ GIMT_Encode4(9080), // Rule ID 2606 // |
| 4195 | /* 9058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 4196 | /* 9061 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4197 | /* 9065 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4198 | /* 9069 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4199 | /* 9073 */ // (sub:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPSUBQrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 4200 | /* 9073 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBQrr), |
| 4201 | /* 9078 */ GIR_RootConstrainSelectedInstOperands, |
| 4202 | /* 9079 */ // GIR_Coverage, 2606, |
| 4203 | /* 9079 */ GIR_Done, |
| 4204 | /* 9080 */ // Label 301: @9080 |
| 4205 | /* 9080 */ GIM_Try, /*On fail goto*//*Label 302*/ GIMT_Encode4(9107), // Rule ID 2608 // |
| 4206 | /* 9085 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 4207 | /* 9088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4208 | /* 9092 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4209 | /* 9096 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4210 | /* 9100 */ // (sub:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (PSUBQrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 4211 | /* 9100 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBQrr), |
| 4212 | /* 9105 */ GIR_RootConstrainSelectedInstOperands, |
| 4213 | /* 9106 */ // GIR_Coverage, 2608, |
| 4214 | /* 9106 */ GIR_Done, |
| 4215 | /* 9107 */ // Label 302: @9107 |
| 4216 | /* 9107 */ GIM_Try, /*On fail goto*//*Label 303*/ GIMT_Encode4(9134), // Rule ID 4741 // |
| 4217 | /* 9112 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4218 | /* 9115 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4219 | /* 9119 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4220 | /* 9123 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4221 | /* 9127 */ // (sub:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPSUBQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 4222 | /* 9127 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBQZ128rr), |
| 4223 | /* 9132 */ GIR_RootConstrainSelectedInstOperands, |
| 4224 | /* 9133 */ // GIR_Coverage, 4741, |
| 4225 | /* 9133 */ GIR_Done, |
| 4226 | /* 9134 */ // Label 303: @9134 |
| 4227 | /* 9134 */ GIM_Reject, |
| 4228 | /* 9135 */ // Label 298: @9135 |
| 4229 | /* 9135 */ GIM_Reject, |
| 4230 | /* 9136 */ // Label 246: @9136 |
| 4231 | /* 9136 */ GIM_Try, /*On fail goto*//*Label 304*/ GIMT_Encode4(9353), |
| 4232 | /* 9141 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4233 | /* 9144 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 4234 | /* 9147 */ GIM_Try, /*On fail goto*//*Label 305*/ GIMT_Encode4(9209), // Rule ID 2601 // |
| 4235 | /* 9152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 4236 | /* 9155 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4237 | /* 9159 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4238 | /* 9163 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4239 | /* 9167 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4240 | /* 9171 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4241 | /* 9174 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4242 | /* 9178 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4243 | /* 9182 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4244 | /* 9184 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4245 | /* 9191 */ // (sub:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4246 | /* 9191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBDrm), |
| 4247 | /* 9194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4248 | /* 9196 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4249 | /* 9198 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4250 | /* 9202 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4251 | /* 9207 */ GIR_RootConstrainSelectedInstOperands, |
| 4252 | /* 9208 */ // GIR_Coverage, 2601, |
| 4253 | /* 9208 */ GIR_EraseRootFromParent_Done, |
| 4254 | /* 9209 */ // Label 305: @9209 |
| 4255 | /* 9209 */ GIM_Try, /*On fail goto*//*Label 306*/ GIMT_Encode4(9271), // Rule ID 4771 // |
| 4256 | /* 9214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4257 | /* 9217 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4258 | /* 9221 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4259 | /* 9225 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4260 | /* 9229 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4261 | /* 9233 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4262 | /* 9236 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4263 | /* 9240 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4264 | /* 9244 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4265 | /* 9246 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4266 | /* 9253 */ // (sub:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4267 | /* 9253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBDZ128rm), |
| 4268 | /* 9256 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4269 | /* 9258 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4270 | /* 9260 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4271 | /* 9264 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4272 | /* 9269 */ GIR_RootConstrainSelectedInstOperands, |
| 4273 | /* 9270 */ // GIR_Coverage, 4771, |
| 4274 | /* 9270 */ GIR_EraseRootFromParent_Done, |
| 4275 | /* 9271 */ // Label 306: @9271 |
| 4276 | /* 9271 */ GIM_Try, /*On fail goto*//*Label 307*/ GIMT_Encode4(9298), // Rule ID 2600 // |
| 4277 | /* 9276 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 4278 | /* 9279 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4279 | /* 9283 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4280 | /* 9287 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4281 | /* 9291 */ // (sub:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPSUBDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 4282 | /* 9291 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBDrr), |
| 4283 | /* 9296 */ GIR_RootConstrainSelectedInstOperands, |
| 4284 | /* 9297 */ // GIR_Coverage, 2600, |
| 4285 | /* 9297 */ GIR_Done, |
| 4286 | /* 9298 */ // Label 307: @9298 |
| 4287 | /* 9298 */ GIM_Try, /*On fail goto*//*Label 308*/ GIMT_Encode4(9325), // Rule ID 2602 // |
| 4288 | /* 9303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 4289 | /* 9306 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4290 | /* 9310 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4291 | /* 9314 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4292 | /* 9318 */ // (sub:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PSUBDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 4293 | /* 9318 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBDrr), |
| 4294 | /* 9323 */ GIR_RootConstrainSelectedInstOperands, |
| 4295 | /* 9324 */ // GIR_Coverage, 2602, |
| 4296 | /* 9324 */ GIR_Done, |
| 4297 | /* 9325 */ // Label 308: @9325 |
| 4298 | /* 9325 */ GIM_Try, /*On fail goto*//*Label 309*/ GIMT_Encode4(9352), // Rule ID 4768 // |
| 4299 | /* 9330 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4300 | /* 9333 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4301 | /* 9337 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4302 | /* 9341 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4303 | /* 9345 */ // (sub:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPSUBDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 4304 | /* 9345 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBDZ128rr), |
| 4305 | /* 9350 */ GIR_RootConstrainSelectedInstOperands, |
| 4306 | /* 9351 */ // GIR_Coverage, 4768, |
| 4307 | /* 9351 */ GIR_Done, |
| 4308 | /* 9352 */ // Label 309: @9352 |
| 4309 | /* 9352 */ GIM_Reject, |
| 4310 | /* 9353 */ // Label 304: @9353 |
| 4311 | /* 9353 */ GIM_Reject, |
| 4312 | /* 9354 */ // Label 247: @9354 |
| 4313 | /* 9354 */ GIM_Try, /*On fail goto*//*Label 310*/ GIMT_Encode4(9544), |
| 4314 | /* 9359 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 4315 | /* 9362 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 4316 | /* 9365 */ GIM_Try, /*On fail goto*//*Label 311*/ GIMT_Encode4(9427), // Rule ID 2611 // |
| 4317 | /* 9370 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 4318 | /* 9373 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4319 | /* 9377 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4320 | /* 9381 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4321 | /* 9385 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4322 | /* 9389 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4323 | /* 9392 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4324 | /* 9396 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4325 | /* 9400 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4326 | /* 9402 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4327 | /* 9409 */ // (sub:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBQYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4328 | /* 9409 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBQYrm), |
| 4329 | /* 9412 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4330 | /* 9414 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4331 | /* 9416 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4332 | /* 9420 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4333 | /* 9425 */ GIR_RootConstrainSelectedInstOperands, |
| 4334 | /* 9426 */ // GIR_Coverage, 2611, |
| 4335 | /* 9426 */ GIR_EraseRootFromParent_Done, |
| 4336 | /* 9427 */ // Label 311: @9427 |
| 4337 | /* 9427 */ GIM_Try, /*On fail goto*//*Label 312*/ GIMT_Encode4(9489), // Rule ID 4735 // |
| 4338 | /* 9432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4339 | /* 9435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4340 | /* 9439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4341 | /* 9443 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4342 | /* 9447 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4343 | /* 9451 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4344 | /* 9454 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4345 | /* 9458 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4346 | /* 9462 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4347 | /* 9464 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4348 | /* 9471 */ // (sub:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4349 | /* 9471 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBQZ256rm), |
| 4350 | /* 9474 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4351 | /* 9476 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4352 | /* 9478 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4353 | /* 9482 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4354 | /* 9487 */ GIR_RootConstrainSelectedInstOperands, |
| 4355 | /* 9488 */ // GIR_Coverage, 4735, |
| 4356 | /* 9488 */ GIR_EraseRootFromParent_Done, |
| 4357 | /* 9489 */ // Label 312: @9489 |
| 4358 | /* 9489 */ GIM_Try, /*On fail goto*//*Label 313*/ GIMT_Encode4(9516), // Rule ID 2610 // |
| 4359 | /* 9494 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 4360 | /* 9497 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4361 | /* 9501 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4362 | /* 9505 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4363 | /* 9509 */ // (sub:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPSUBQYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 4364 | /* 9509 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBQYrr), |
| 4365 | /* 9514 */ GIR_RootConstrainSelectedInstOperands, |
| 4366 | /* 9515 */ // GIR_Coverage, 2610, |
| 4367 | /* 9515 */ GIR_Done, |
| 4368 | /* 9516 */ // Label 313: @9516 |
| 4369 | /* 9516 */ GIM_Try, /*On fail goto*//*Label 314*/ GIMT_Encode4(9543), // Rule ID 4732 // |
| 4370 | /* 9521 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4371 | /* 9524 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4372 | /* 9528 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4373 | /* 9532 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4374 | /* 9536 */ // (sub:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPSUBQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 4375 | /* 9536 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBQZ256rr), |
| 4376 | /* 9541 */ GIR_RootConstrainSelectedInstOperands, |
| 4377 | /* 9542 */ // GIR_Coverage, 4732, |
| 4378 | /* 9542 */ GIR_Done, |
| 4379 | /* 9543 */ // Label 314: @9543 |
| 4380 | /* 9543 */ GIM_Reject, |
| 4381 | /* 9544 */ // Label 310: @9544 |
| 4382 | /* 9544 */ GIM_Reject, |
| 4383 | /* 9545 */ // Label 248: @9545 |
| 4384 | /* 9545 */ GIM_Try, /*On fail goto*//*Label 315*/ GIMT_Encode4(9762), |
| 4385 | /* 9550 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 4386 | /* 9553 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 4387 | /* 9556 */ GIM_Try, /*On fail goto*//*Label 316*/ GIMT_Encode4(9618), // Rule ID 2595 // |
| 4388 | /* 9561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 4389 | /* 9564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4390 | /* 9568 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4391 | /* 9572 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4392 | /* 9576 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4393 | /* 9580 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4394 | /* 9583 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4395 | /* 9587 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4396 | /* 9591 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4397 | /* 9593 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4398 | /* 9600 */ // (sub:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4399 | /* 9600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBWrm), |
| 4400 | /* 9603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4401 | /* 9605 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4402 | /* 9607 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4403 | /* 9611 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4404 | /* 9616 */ GIR_RootConstrainSelectedInstOperands, |
| 4405 | /* 9617 */ // GIR_Coverage, 2595, |
| 4406 | /* 9617 */ GIR_EraseRootFromParent_Done, |
| 4407 | /* 9618 */ // Label 316: @9618 |
| 4408 | /* 9618 */ GIM_Try, /*On fail goto*//*Label 317*/ GIMT_Encode4(9680), // Rule ID 4792 // |
| 4409 | /* 9623 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4410 | /* 9626 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4411 | /* 9630 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4412 | /* 9634 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4413 | /* 9638 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4414 | /* 9642 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4415 | /* 9645 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4416 | /* 9649 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4417 | /* 9653 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4418 | /* 9655 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4419 | /* 9662 */ // (sub:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4420 | /* 9662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBWZ128rm), |
| 4421 | /* 9665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4422 | /* 9667 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4423 | /* 9669 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4424 | /* 9673 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4425 | /* 9678 */ GIR_RootConstrainSelectedInstOperands, |
| 4426 | /* 9679 */ // GIR_Coverage, 4792, |
| 4427 | /* 9679 */ GIR_EraseRootFromParent_Done, |
| 4428 | /* 9680 */ // Label 317: @9680 |
| 4429 | /* 9680 */ GIM_Try, /*On fail goto*//*Label 318*/ GIMT_Encode4(9707), // Rule ID 2594 // |
| 4430 | /* 9685 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 4431 | /* 9688 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4432 | /* 9692 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4433 | /* 9696 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4434 | /* 9700 */ // (sub:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPSUBWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 4435 | /* 9700 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBWrr), |
| 4436 | /* 9705 */ GIR_RootConstrainSelectedInstOperands, |
| 4437 | /* 9706 */ // GIR_Coverage, 2594, |
| 4438 | /* 9706 */ GIR_Done, |
| 4439 | /* 9707 */ // Label 318: @9707 |
| 4440 | /* 9707 */ GIM_Try, /*On fail goto*//*Label 319*/ GIMT_Encode4(9734), // Rule ID 2596 // |
| 4441 | /* 9712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 4442 | /* 9715 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4443 | /* 9719 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4444 | /* 9723 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4445 | /* 9727 */ // (sub:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PSUBWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 4446 | /* 9727 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBWrr), |
| 4447 | /* 9732 */ GIR_RootConstrainSelectedInstOperands, |
| 4448 | /* 9733 */ // GIR_Coverage, 2596, |
| 4449 | /* 9733 */ GIR_Done, |
| 4450 | /* 9734 */ // Label 319: @9734 |
| 4451 | /* 9734 */ GIM_Try, /*On fail goto*//*Label 320*/ GIMT_Encode4(9761), // Rule ID 4789 // |
| 4452 | /* 9739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4453 | /* 9742 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4454 | /* 9746 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4455 | /* 9750 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4456 | /* 9754 */ // (sub:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPSUBWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 4457 | /* 9754 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBWZ128rr), |
| 4458 | /* 9759 */ GIR_RootConstrainSelectedInstOperands, |
| 4459 | /* 9760 */ // GIR_Coverage, 4789, |
| 4460 | /* 9760 */ GIR_Done, |
| 4461 | /* 9761 */ // Label 320: @9761 |
| 4462 | /* 9761 */ GIM_Reject, |
| 4463 | /* 9762 */ // Label 315: @9762 |
| 4464 | /* 9762 */ GIM_Reject, |
| 4465 | /* 9763 */ // Label 249: @9763 |
| 4466 | /* 9763 */ GIM_Try, /*On fail goto*//*Label 321*/ GIMT_Encode4(9953), |
| 4467 | /* 9768 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 4468 | /* 9771 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 4469 | /* 9774 */ GIM_Try, /*On fail goto*//*Label 322*/ GIMT_Encode4(9836), // Rule ID 2605 // |
| 4470 | /* 9779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 4471 | /* 9782 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4472 | /* 9786 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4473 | /* 9790 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4474 | /* 9794 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4475 | /* 9798 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4476 | /* 9801 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4477 | /* 9805 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4478 | /* 9809 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4479 | /* 9811 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4480 | /* 9818 */ // (sub:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4481 | /* 9818 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBDYrm), |
| 4482 | /* 9821 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4483 | /* 9823 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4484 | /* 9825 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4485 | /* 9829 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4486 | /* 9834 */ GIR_RootConstrainSelectedInstOperands, |
| 4487 | /* 9835 */ // GIR_Coverage, 2605, |
| 4488 | /* 9835 */ GIR_EraseRootFromParent_Done, |
| 4489 | /* 9836 */ // Label 322: @9836 |
| 4490 | /* 9836 */ GIM_Try, /*On fail goto*//*Label 323*/ GIMT_Encode4(9898), // Rule ID 4762 // |
| 4491 | /* 9841 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4492 | /* 9844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4493 | /* 9848 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4494 | /* 9852 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4495 | /* 9856 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4496 | /* 9860 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4497 | /* 9863 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4498 | /* 9867 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4499 | /* 9871 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4500 | /* 9873 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4501 | /* 9880 */ // (sub:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4502 | /* 9880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBDZ256rm), |
| 4503 | /* 9883 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4504 | /* 9885 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4505 | /* 9887 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4506 | /* 9891 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4507 | /* 9896 */ GIR_RootConstrainSelectedInstOperands, |
| 4508 | /* 9897 */ // GIR_Coverage, 4762, |
| 4509 | /* 9897 */ GIR_EraseRootFromParent_Done, |
| 4510 | /* 9898 */ // Label 323: @9898 |
| 4511 | /* 9898 */ GIM_Try, /*On fail goto*//*Label 324*/ GIMT_Encode4(9925), // Rule ID 2604 // |
| 4512 | /* 9903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 4513 | /* 9906 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4514 | /* 9910 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4515 | /* 9914 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4516 | /* 9918 */ // (sub:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPSUBDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 4517 | /* 9918 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBDYrr), |
| 4518 | /* 9923 */ GIR_RootConstrainSelectedInstOperands, |
| 4519 | /* 9924 */ // GIR_Coverage, 2604, |
| 4520 | /* 9924 */ GIR_Done, |
| 4521 | /* 9925 */ // Label 324: @9925 |
| 4522 | /* 9925 */ GIM_Try, /*On fail goto*//*Label 325*/ GIMT_Encode4(9952), // Rule ID 4759 // |
| 4523 | /* 9930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4524 | /* 9933 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4525 | /* 9937 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4526 | /* 9941 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4527 | /* 9945 */ // (sub:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPSUBDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 4528 | /* 9945 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBDZ256rr), |
| 4529 | /* 9950 */ GIR_RootConstrainSelectedInstOperands, |
| 4530 | /* 9951 */ // GIR_Coverage, 4759, |
| 4531 | /* 9951 */ GIR_Done, |
| 4532 | /* 9952 */ // Label 325: @9952 |
| 4533 | /* 9952 */ GIM_Reject, |
| 4534 | /* 9953 */ // Label 321: @9953 |
| 4535 | /* 9953 */ GIM_Reject, |
| 4536 | /* 9954 */ // Label 250: @9954 |
| 4537 | /* 9954 */ GIM_Try, /*On fail goto*//*Label 326*/ GIMT_Encode4(10047), |
| 4538 | /* 9959 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 4539 | /* 9962 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 4540 | /* 9965 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4541 | /* 9969 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4542 | /* 9973 */ GIM_Try, /*On fail goto*//*Label 327*/ GIMT_Encode4(10027), // Rule ID 4726 // |
| 4543 | /* 9978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 4544 | /* 9981 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4545 | /* 9985 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4546 | /* 9989 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4547 | /* 9992 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4548 | /* 9996 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4549 | /* 10000 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4550 | /* 10002 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4551 | /* 10009 */ // (sub:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4552 | /* 10009 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBQZrm), |
| 4553 | /* 10012 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4554 | /* 10014 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4555 | /* 10016 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4556 | /* 10020 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4557 | /* 10025 */ GIR_RootConstrainSelectedInstOperands, |
| 4558 | /* 10026 */ // GIR_Coverage, 4726, |
| 4559 | /* 10026 */ GIR_EraseRootFromParent_Done, |
| 4560 | /* 10027 */ // Label 327: @10027 |
| 4561 | /* 10027 */ GIM_Try, /*On fail goto*//*Label 328*/ GIMT_Encode4(10046), // Rule ID 4723 // |
| 4562 | /* 10032 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 4563 | /* 10035 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4564 | /* 10039 */ // (sub:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPSUBQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 4565 | /* 10039 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBQZrr), |
| 4566 | /* 10044 */ GIR_RootConstrainSelectedInstOperands, |
| 4567 | /* 10045 */ // GIR_Coverage, 4723, |
| 4568 | /* 10045 */ GIR_Done, |
| 4569 | /* 10046 */ // Label 328: @10046 |
| 4570 | /* 10046 */ GIM_Reject, |
| 4571 | /* 10047 */ // Label 326: @10047 |
| 4572 | /* 10047 */ GIM_Reject, |
| 4573 | /* 10048 */ // Label 251: @10048 |
| 4574 | /* 10048 */ GIM_Try, /*On fail goto*//*Label 329*/ GIMT_Encode4(10265), |
| 4575 | /* 10053 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 4576 | /* 10056 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 4577 | /* 10059 */ GIM_Try, /*On fail goto*//*Label 330*/ GIMT_Encode4(10121), // Rule ID 2589 // |
| 4578 | /* 10064 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 4579 | /* 10067 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4580 | /* 10071 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4581 | /* 10075 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4582 | /* 10079 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4583 | /* 10083 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4584 | /* 10086 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4585 | /* 10090 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4586 | /* 10094 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4587 | /* 10096 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4588 | /* 10103 */ // (sub:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4589 | /* 10103 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBBrm), |
| 4590 | /* 10106 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4591 | /* 10108 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4592 | /* 10110 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4593 | /* 10114 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4594 | /* 10119 */ GIR_RootConstrainSelectedInstOperands, |
| 4595 | /* 10120 */ // GIR_Coverage, 2589, |
| 4596 | /* 10120 */ GIR_EraseRootFromParent_Done, |
| 4597 | /* 10121 */ // Label 330: @10121 |
| 4598 | /* 10121 */ GIM_Try, /*On fail goto*//*Label 331*/ GIMT_Encode4(10183), // Rule ID 4810 // |
| 4599 | /* 10126 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4600 | /* 10129 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4601 | /* 10133 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4602 | /* 10137 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4603 | /* 10141 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4604 | /* 10145 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4605 | /* 10148 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4606 | /* 10152 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4607 | /* 10156 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4608 | /* 10158 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4609 | /* 10165 */ // (sub:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4610 | /* 10165 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBBZ128rm), |
| 4611 | /* 10168 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4612 | /* 10170 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4613 | /* 10172 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4614 | /* 10176 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4615 | /* 10181 */ GIR_RootConstrainSelectedInstOperands, |
| 4616 | /* 10182 */ // GIR_Coverage, 4810, |
| 4617 | /* 10182 */ GIR_EraseRootFromParent_Done, |
| 4618 | /* 10183 */ // Label 331: @10183 |
| 4619 | /* 10183 */ GIM_Try, /*On fail goto*//*Label 332*/ GIMT_Encode4(10210), // Rule ID 2588 // |
| 4620 | /* 10188 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 4621 | /* 10191 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4622 | /* 10195 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4623 | /* 10199 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4624 | /* 10203 */ // (sub:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPSUBBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 4625 | /* 10203 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBBrr), |
| 4626 | /* 10208 */ GIR_RootConstrainSelectedInstOperands, |
| 4627 | /* 10209 */ // GIR_Coverage, 2588, |
| 4628 | /* 10209 */ GIR_Done, |
| 4629 | /* 10210 */ // Label 332: @10210 |
| 4630 | /* 10210 */ GIM_Try, /*On fail goto*//*Label 333*/ GIMT_Encode4(10237), // Rule ID 2590 // |
| 4631 | /* 10215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 4632 | /* 10218 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4633 | /* 10222 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4634 | /* 10226 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4635 | /* 10230 */ // (sub:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PSUBBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 4636 | /* 10230 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBBrr), |
| 4637 | /* 10235 */ GIR_RootConstrainSelectedInstOperands, |
| 4638 | /* 10236 */ // GIR_Coverage, 2590, |
| 4639 | /* 10236 */ GIR_Done, |
| 4640 | /* 10237 */ // Label 333: @10237 |
| 4641 | /* 10237 */ GIM_Try, /*On fail goto*//*Label 334*/ GIMT_Encode4(10264), // Rule ID 4807 // |
| 4642 | /* 10242 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4643 | /* 10245 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4644 | /* 10249 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4645 | /* 10253 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4646 | /* 10257 */ // (sub:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPSUBBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 4647 | /* 10257 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBBZ128rr), |
| 4648 | /* 10262 */ GIR_RootConstrainSelectedInstOperands, |
| 4649 | /* 10263 */ // GIR_Coverage, 4807, |
| 4650 | /* 10263 */ GIR_Done, |
| 4651 | /* 10264 */ // Label 334: @10264 |
| 4652 | /* 10264 */ GIM_Reject, |
| 4653 | /* 10265 */ // Label 329: @10265 |
| 4654 | /* 10265 */ GIM_Reject, |
| 4655 | /* 10266 */ // Label 252: @10266 |
| 4656 | /* 10266 */ GIM_Try, /*On fail goto*//*Label 335*/ GIMT_Encode4(10456), |
| 4657 | /* 10271 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 4658 | /* 10274 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 4659 | /* 10277 */ GIM_Try, /*On fail goto*//*Label 336*/ GIMT_Encode4(10339), // Rule ID 2599 // |
| 4660 | /* 10282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 4661 | /* 10285 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4662 | /* 10289 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4663 | /* 10293 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4664 | /* 10297 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4665 | /* 10301 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4666 | /* 10304 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4667 | /* 10308 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4668 | /* 10312 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4669 | /* 10314 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4670 | /* 10321 */ // (sub:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4671 | /* 10321 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBWYrm), |
| 4672 | /* 10324 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4673 | /* 10326 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4674 | /* 10328 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4675 | /* 10332 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4676 | /* 10337 */ GIR_RootConstrainSelectedInstOperands, |
| 4677 | /* 10338 */ // GIR_Coverage, 2599, |
| 4678 | /* 10338 */ GIR_EraseRootFromParent_Done, |
| 4679 | /* 10339 */ // Label 336: @10339 |
| 4680 | /* 10339 */ GIM_Try, /*On fail goto*//*Label 337*/ GIMT_Encode4(10401), // Rule ID 4786 // |
| 4681 | /* 10344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4682 | /* 10347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4683 | /* 10351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4684 | /* 10355 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4685 | /* 10359 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4686 | /* 10363 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4687 | /* 10366 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4688 | /* 10370 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4689 | /* 10374 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4690 | /* 10376 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4691 | /* 10383 */ // (sub:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4692 | /* 10383 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBWZ256rm), |
| 4693 | /* 10386 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4694 | /* 10388 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4695 | /* 10390 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4696 | /* 10394 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4697 | /* 10399 */ GIR_RootConstrainSelectedInstOperands, |
| 4698 | /* 10400 */ // GIR_Coverage, 4786, |
| 4699 | /* 10400 */ GIR_EraseRootFromParent_Done, |
| 4700 | /* 10401 */ // Label 337: @10401 |
| 4701 | /* 10401 */ GIM_Try, /*On fail goto*//*Label 338*/ GIMT_Encode4(10428), // Rule ID 2598 // |
| 4702 | /* 10406 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 4703 | /* 10409 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4704 | /* 10413 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4705 | /* 10417 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4706 | /* 10421 */ // (sub:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPSUBWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 4707 | /* 10421 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBWYrr), |
| 4708 | /* 10426 */ GIR_RootConstrainSelectedInstOperands, |
| 4709 | /* 10427 */ // GIR_Coverage, 2598, |
| 4710 | /* 10427 */ GIR_Done, |
| 4711 | /* 10428 */ // Label 338: @10428 |
| 4712 | /* 10428 */ GIM_Try, /*On fail goto*//*Label 339*/ GIMT_Encode4(10455), // Rule ID 4783 // |
| 4713 | /* 10433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4714 | /* 10436 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4715 | /* 10440 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4716 | /* 10444 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4717 | /* 10448 */ // (sub:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPSUBWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 4718 | /* 10448 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBWZ256rr), |
| 4719 | /* 10453 */ GIR_RootConstrainSelectedInstOperands, |
| 4720 | /* 10454 */ // GIR_Coverage, 4783, |
| 4721 | /* 10454 */ GIR_Done, |
| 4722 | /* 10455 */ // Label 339: @10455 |
| 4723 | /* 10455 */ GIM_Reject, |
| 4724 | /* 10456 */ // Label 335: @10456 |
| 4725 | /* 10456 */ GIM_Reject, |
| 4726 | /* 10457 */ // Label 253: @10457 |
| 4727 | /* 10457 */ GIM_Try, /*On fail goto*//*Label 340*/ GIMT_Encode4(10550), |
| 4728 | /* 10462 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 4729 | /* 10465 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 4730 | /* 10468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4731 | /* 10472 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4732 | /* 10476 */ GIM_Try, /*On fail goto*//*Label 341*/ GIMT_Encode4(10530), // Rule ID 4753 // |
| 4733 | /* 10481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 4734 | /* 10484 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4735 | /* 10488 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4736 | /* 10492 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4737 | /* 10495 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4738 | /* 10499 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4739 | /* 10503 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4740 | /* 10505 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4741 | /* 10512 */ // (sub:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4742 | /* 10512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBDZrm), |
| 4743 | /* 10515 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4744 | /* 10517 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4745 | /* 10519 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4746 | /* 10523 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4747 | /* 10528 */ GIR_RootConstrainSelectedInstOperands, |
| 4748 | /* 10529 */ // GIR_Coverage, 4753, |
| 4749 | /* 10529 */ GIR_EraseRootFromParent_Done, |
| 4750 | /* 10530 */ // Label 341: @10530 |
| 4751 | /* 10530 */ GIM_Try, /*On fail goto*//*Label 342*/ GIMT_Encode4(10549), // Rule ID 4750 // |
| 4752 | /* 10535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 4753 | /* 10538 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4754 | /* 10542 */ // (sub:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPSUBDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 4755 | /* 10542 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBDZrr), |
| 4756 | /* 10547 */ GIR_RootConstrainSelectedInstOperands, |
| 4757 | /* 10548 */ // GIR_Coverage, 4750, |
| 4758 | /* 10548 */ GIR_Done, |
| 4759 | /* 10549 */ // Label 342: @10549 |
| 4760 | /* 10549 */ GIM_Reject, |
| 4761 | /* 10550 */ // Label 340: @10550 |
| 4762 | /* 10550 */ GIM_Reject, |
| 4763 | /* 10551 */ // Label 254: @10551 |
| 4764 | /* 10551 */ GIM_Try, /*On fail goto*//*Label 343*/ GIMT_Encode4(10741), |
| 4765 | /* 10556 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 4766 | /* 10559 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 4767 | /* 10562 */ GIM_Try, /*On fail goto*//*Label 344*/ GIMT_Encode4(10624), // Rule ID 2593 // |
| 4768 | /* 10567 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 4769 | /* 10570 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4770 | /* 10574 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4771 | /* 10578 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4772 | /* 10582 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4773 | /* 10586 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4774 | /* 10589 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4775 | /* 10593 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4776 | /* 10597 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4777 | /* 10599 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4778 | /* 10606 */ // (sub:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4779 | /* 10606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBBYrm), |
| 4780 | /* 10609 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4781 | /* 10611 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4782 | /* 10613 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4783 | /* 10617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4784 | /* 10622 */ GIR_RootConstrainSelectedInstOperands, |
| 4785 | /* 10623 */ // GIR_Coverage, 2593, |
| 4786 | /* 10623 */ GIR_EraseRootFromParent_Done, |
| 4787 | /* 10624 */ // Label 344: @10624 |
| 4788 | /* 10624 */ GIM_Try, /*On fail goto*//*Label 345*/ GIMT_Encode4(10686), // Rule ID 4804 // |
| 4789 | /* 10629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4790 | /* 10632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4791 | /* 10636 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4792 | /* 10640 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4793 | /* 10644 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4794 | /* 10648 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4795 | /* 10651 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4796 | /* 10655 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4797 | /* 10659 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4798 | /* 10661 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4799 | /* 10668 */ // (sub:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4800 | /* 10668 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBBZ256rm), |
| 4801 | /* 10671 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4802 | /* 10673 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4803 | /* 10675 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4804 | /* 10679 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4805 | /* 10684 */ GIR_RootConstrainSelectedInstOperands, |
| 4806 | /* 10685 */ // GIR_Coverage, 4804, |
| 4807 | /* 10685 */ GIR_EraseRootFromParent_Done, |
| 4808 | /* 10686 */ // Label 345: @10686 |
| 4809 | /* 10686 */ GIM_Try, /*On fail goto*//*Label 346*/ GIMT_Encode4(10713), // Rule ID 2592 // |
| 4810 | /* 10691 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 4811 | /* 10694 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4812 | /* 10698 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4813 | /* 10702 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4814 | /* 10706 */ // (sub:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPSUBBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 4815 | /* 10706 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBBYrr), |
| 4816 | /* 10711 */ GIR_RootConstrainSelectedInstOperands, |
| 4817 | /* 10712 */ // GIR_Coverage, 2592, |
| 4818 | /* 10712 */ GIR_Done, |
| 4819 | /* 10713 */ // Label 346: @10713 |
| 4820 | /* 10713 */ GIM_Try, /*On fail goto*//*Label 347*/ GIMT_Encode4(10740), // Rule ID 4801 // |
| 4821 | /* 10718 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4822 | /* 10721 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4823 | /* 10725 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4824 | /* 10729 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4825 | /* 10733 */ // (sub:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPSUBBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 4826 | /* 10733 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBBZ256rr), |
| 4827 | /* 10738 */ GIR_RootConstrainSelectedInstOperands, |
| 4828 | /* 10739 */ // GIR_Coverage, 4801, |
| 4829 | /* 10739 */ GIR_Done, |
| 4830 | /* 10740 */ // Label 347: @10740 |
| 4831 | /* 10740 */ GIM_Reject, |
| 4832 | /* 10741 */ // Label 343: @10741 |
| 4833 | /* 10741 */ GIM_Reject, |
| 4834 | /* 10742 */ // Label 255: @10742 |
| 4835 | /* 10742 */ GIM_Try, /*On fail goto*//*Label 348*/ GIMT_Encode4(10835), |
| 4836 | /* 10747 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 4837 | /* 10750 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 4838 | /* 10753 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4839 | /* 10757 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4840 | /* 10761 */ GIM_Try, /*On fail goto*//*Label 349*/ GIMT_Encode4(10815), // Rule ID 4780 // |
| 4841 | /* 10766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 4842 | /* 10769 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4843 | /* 10773 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4844 | /* 10777 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4845 | /* 10780 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4846 | /* 10784 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4847 | /* 10788 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4848 | /* 10790 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4849 | /* 10797 */ // (sub:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4850 | /* 10797 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBWZrm), |
| 4851 | /* 10800 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4852 | /* 10802 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4853 | /* 10804 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4854 | /* 10808 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4855 | /* 10813 */ GIR_RootConstrainSelectedInstOperands, |
| 4856 | /* 10814 */ // GIR_Coverage, 4780, |
| 4857 | /* 10814 */ GIR_EraseRootFromParent_Done, |
| 4858 | /* 10815 */ // Label 349: @10815 |
| 4859 | /* 10815 */ GIM_Try, /*On fail goto*//*Label 350*/ GIMT_Encode4(10834), // Rule ID 4777 // |
| 4860 | /* 10820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 4861 | /* 10823 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4862 | /* 10827 */ // (sub:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPSUBWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 4863 | /* 10827 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBWZrr), |
| 4864 | /* 10832 */ GIR_RootConstrainSelectedInstOperands, |
| 4865 | /* 10833 */ // GIR_Coverage, 4777, |
| 4866 | /* 10833 */ GIR_Done, |
| 4867 | /* 10834 */ // Label 350: @10834 |
| 4868 | /* 10834 */ GIM_Reject, |
| 4869 | /* 10835 */ // Label 348: @10835 |
| 4870 | /* 10835 */ GIM_Reject, |
| 4871 | /* 10836 */ // Label 256: @10836 |
| 4872 | /* 10836 */ GIM_Try, /*On fail goto*//*Label 351*/ GIMT_Encode4(10929), |
| 4873 | /* 10841 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 4874 | /* 10844 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 4875 | /* 10847 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4876 | /* 10851 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4877 | /* 10855 */ GIM_Try, /*On fail goto*//*Label 352*/ GIMT_Encode4(10909), // Rule ID 4798 // |
| 4878 | /* 10860 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 4879 | /* 10863 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4880 | /* 10867 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4881 | /* 10871 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4882 | /* 10874 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4883 | /* 10878 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4884 | /* 10882 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4885 | /* 10884 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4886 | /* 10891 */ // (sub:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4887 | /* 10891 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBBZrm), |
| 4888 | /* 10894 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4889 | /* 10896 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4890 | /* 10898 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4891 | /* 10902 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4892 | /* 10907 */ GIR_RootConstrainSelectedInstOperands, |
| 4893 | /* 10908 */ // GIR_Coverage, 4798, |
| 4894 | /* 10908 */ GIR_EraseRootFromParent_Done, |
| 4895 | /* 10909 */ // Label 352: @10909 |
| 4896 | /* 10909 */ GIM_Try, /*On fail goto*//*Label 353*/ GIMT_Encode4(10928), // Rule ID 4795 // |
| 4897 | /* 10914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 4898 | /* 10917 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4899 | /* 10921 */ // (sub:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPSUBBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 4900 | /* 10921 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBBZrr), |
| 4901 | /* 10926 */ GIR_RootConstrainSelectedInstOperands, |
| 4902 | /* 10927 */ // GIR_Coverage, 4795, |
| 4903 | /* 10927 */ GIR_Done, |
| 4904 | /* 10928 */ // Label 353: @10928 |
| 4905 | /* 10928 */ GIM_Reject, |
| 4906 | /* 10929 */ // Label 351: @10929 |
| 4907 | /* 10929 */ GIM_Reject, |
| 4908 | /* 10930 */ // Label 257: @10930 |
| 4909 | /* 10930 */ GIM_Reject, |
| 4910 | /* 10931 */ // Label 2: @10931 |
| 4911 | /* 10931 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 366*/ GIMT_Encode4(14713), |
| 4912 | /* 10942 */ /*GILLT_s16*//*Label 354*/ GIMT_Encode4(11026), |
| 4913 | /* 10946 */ /*GILLT_s32*//*Label 355*/ GIMT_Encode4(11443), |
| 4914 | /* 10950 */ /*GILLT_s64*//*Label 356*/ GIMT_Encode4(11860), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 4915 | /* 10966 */ /*GILLT_v2s64*//*Label 357*/ GIMT_Encode4(12285), GIMT_Encode4(0), |
| 4916 | /* 10974 */ /*GILLT_v4s32*//*Label 358*/ GIMT_Encode4(12614), |
| 4917 | /* 10978 */ /*GILLT_v4s64*//*Label 359*/ GIMT_Encode4(12956), GIMT_Encode4(0), |
| 4918 | /* 10986 */ /*GILLT_v8s16*//*Label 360*/ GIMT_Encode4(13273), |
| 4919 | /* 10990 */ /*GILLT_v8s32*//*Label 361*/ GIMT_Encode4(13615), |
| 4920 | /* 10994 */ /*GILLT_v8s64*//*Label 362*/ GIMT_Encode4(13930), GIMT_Encode4(0), GIMT_Encode4(0), |
| 4921 | /* 11006 */ /*GILLT_v16s16*//*Label 363*/ GIMT_Encode4(14086), |
| 4922 | /* 11010 */ /*GILLT_v16s32*//*Label 364*/ GIMT_Encode4(14401), GIMT_Encode4(0), GIMT_Encode4(0), |
| 4923 | /* 11022 */ /*GILLT_v32s16*//*Label 365*/ GIMT_Encode4(14557), |
| 4924 | /* 11026 */ // Label 354: @11026 |
| 4925 | /* 11026 */ GIM_Try, /*On fail goto*//*Label 367*/ GIMT_Encode4(11442), |
| 4926 | /* 11031 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 4927 | /* 11034 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 4928 | /* 11037 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4929 | /* 11041 */ GIM_Try, /*On fail goto*//*Label 368*/ GIMT_Encode4(11105), // Rule ID 22979 // |
| 4930 | /* 11046 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4931 | /* 11050 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4932 | /* 11054 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4933 | /* 11057 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4934 | /* 11061 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 4935 | /* 11065 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 4936 | /* 11069 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 4937 | /* 11073 */ // MIs[2] Operand 1 |
| 4938 | /* 11073 */ // No operand predicates |
| 4939 | /* 11073 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 4940 | /* 11075 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4941 | /* 11082 */ // (mul:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i16] }):$src2) => (IMUL16rmi:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i16] }):$src2) |
| 4942 | /* 11082 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL16rmi), |
| 4943 | /* 11085 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4944 | /* 11087 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 4945 | /* 11091 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 4946 | /* 11094 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4947 | /* 11097 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 4948 | /* 11103 */ GIR_RootConstrainSelectedInstOperands, |
| 4949 | /* 11104 */ // GIR_Coverage, 22979, |
| 4950 | /* 11104 */ GIR_EraseRootFromParent_Done, |
| 4951 | /* 11105 */ // Label 368: @11105 |
| 4952 | /* 11105 */ GIM_Try, /*On fail goto*//*Label 369*/ GIMT_Encode4(11166), // Rule ID 26058 // |
| 4953 | /* 11110 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4954 | /* 11113 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4955 | /* 11117 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4956 | /* 11121 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4957 | /* 11124 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4958 | /* 11128 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 4959 | /* 11132 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4960 | /* 11136 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4961 | /* 11138 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4962 | /* 11145 */ // (mul:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, GR16:{ *:[i16] }:$src1) => (IMUL16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4963 | /* 11145 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL16rm), |
| 4964 | /* 11148 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4965 | /* 11150 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 4966 | /* 11152 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4967 | /* 11156 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4968 | /* 11159 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4969 | /* 11164 */ GIR_RootConstrainSelectedInstOperands, |
| 4970 | /* 11165 */ // GIR_Coverage, 26058, |
| 4971 | /* 11165 */ GIR_EraseRootFromParent_Done, |
| 4972 | /* 11166 */ // Label 369: @11166 |
| 4973 | /* 11166 */ GIM_Try, /*On fail goto*//*Label 370*/ GIMT_Encode4(11227), // Rule ID 26077 // |
| 4974 | /* 11171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 4975 | /* 11174 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4976 | /* 11178 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4977 | /* 11182 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4978 | /* 11185 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4979 | /* 11189 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 4980 | /* 11193 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4981 | /* 11197 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4982 | /* 11199 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4983 | /* 11206 */ // (mul:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, GR16:{ *:[i16] }:$src1) => (IMUL16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4984 | /* 11206 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL16rm_ND), |
| 4985 | /* 11209 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4986 | /* 11211 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 4987 | /* 11213 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4988 | /* 11217 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4989 | /* 11220 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4990 | /* 11225 */ GIR_RootConstrainSelectedInstOperands, |
| 4991 | /* 11226 */ // GIR_Coverage, 26077, |
| 4992 | /* 11226 */ GIR_EraseRootFromParent_Done, |
| 4993 | /* 11227 */ // Label 370: @11227 |
| 4994 | /* 11227 */ GIM_Try, /*On fail goto*//*Label 371*/ GIMT_Encode4(11288), // Rule ID 22823 // |
| 4995 | /* 11232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4996 | /* 11235 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4997 | /* 11239 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4998 | /* 11243 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4999 | /* 11247 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5000 | /* 11250 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5001 | /* 11254 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 5002 | /* 11258 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5003 | /* 11260 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5004 | /* 11267 */ // (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (IMUL16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5005 | /* 11267 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL16rm), |
| 5006 | /* 11270 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5007 | /* 11272 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5008 | /* 11274 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5009 | /* 11278 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5010 | /* 11281 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5011 | /* 11286 */ GIR_RootConstrainSelectedInstOperands, |
| 5012 | /* 11287 */ // GIR_Coverage, 22823, |
| 5013 | /* 11287 */ GIR_EraseRootFromParent_Done, |
| 5014 | /* 11288 */ // Label 371: @11288 |
| 5015 | /* 11288 */ GIM_Try, /*On fail goto*//*Label 372*/ GIMT_Encode4(11349), // Rule ID 22913 // |
| 5016 | /* 11293 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 5017 | /* 11296 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 5018 | /* 11300 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5019 | /* 11304 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5020 | /* 11308 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5021 | /* 11311 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5022 | /* 11315 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 5023 | /* 11319 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5024 | /* 11321 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5025 | /* 11328 */ // (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (IMUL16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5026 | /* 11328 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL16rm_ND), |
| 5027 | /* 11331 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5028 | /* 11333 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5029 | /* 11335 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5030 | /* 11339 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5031 | /* 11342 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5032 | /* 11347 */ GIR_RootConstrainSelectedInstOperands, |
| 5033 | /* 11348 */ // GIR_Coverage, 22913, |
| 5034 | /* 11348 */ GIR_EraseRootFromParent_Done, |
| 5035 | /* 11349 */ // Label 372: @11349 |
| 5036 | /* 11349 */ GIM_Try, /*On fail goto*//*Label 373*/ GIMT_Encode4(11383), // Rule ID 22976 // |
| 5037 | /* 11354 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 5038 | /* 11358 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5039 | /* 11362 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5040 | /* 11366 */ // MIs[1] Operand 1 |
| 5041 | /* 11366 */ // No operand predicates |
| 5042 | /* 11366 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5043 | /* 11368 */ // (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (IMUL16rri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 5044 | /* 11368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL16rri), |
| 5045 | /* 11371 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5046 | /* 11373 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5047 | /* 11375 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 5048 | /* 11378 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5049 | /* 11381 */ GIR_RootConstrainSelectedInstOperands, |
| 5050 | /* 11382 */ // GIR_Coverage, 22976, |
| 5051 | /* 11382 */ GIR_EraseRootFromParent_Done, |
| 5052 | /* 11383 */ // Label 373: @11383 |
| 5053 | /* 11383 */ GIM_Try, /*On fail goto*//*Label 374*/ GIMT_Encode4(11412), // Rule ID 22820 // |
| 5054 | /* 11388 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 5055 | /* 11391 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 5056 | /* 11395 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 5057 | /* 11399 */ // (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (IMUL16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 5058 | /* 11399 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL16rr), |
| 5059 | /* 11404 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 5060 | /* 11410 */ GIR_RootConstrainSelectedInstOperands, |
| 5061 | /* 11411 */ // GIR_Coverage, 22820, |
| 5062 | /* 11411 */ GIR_Done, |
| 5063 | /* 11412 */ // Label 374: @11412 |
| 5064 | /* 11412 */ GIM_Try, /*On fail goto*//*Label 375*/ GIMT_Encode4(11441), // Rule ID 22910 // |
| 5065 | /* 11417 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 5066 | /* 11420 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 5067 | /* 11424 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 5068 | /* 11428 */ // (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (IMUL16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 5069 | /* 11428 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL16rr_ND), |
| 5070 | /* 11433 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 5071 | /* 11439 */ GIR_RootConstrainSelectedInstOperands, |
| 5072 | /* 11440 */ // GIR_Coverage, 22910, |
| 5073 | /* 11440 */ GIR_Done, |
| 5074 | /* 11441 */ // Label 375: @11441 |
| 5075 | /* 11441 */ GIM_Reject, |
| 5076 | /* 11442 */ // Label 367: @11442 |
| 5077 | /* 11442 */ GIM_Reject, |
| 5078 | /* 11443 */ // Label 355: @11443 |
| 5079 | /* 11443 */ GIM_Try, /*On fail goto*//*Label 376*/ GIMT_Encode4(11859), |
| 5080 | /* 11448 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 5081 | /* 11451 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 5082 | /* 11454 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 5083 | /* 11458 */ GIM_Try, /*On fail goto*//*Label 377*/ GIMT_Encode4(11522), // Rule ID 22980 // |
| 5084 | /* 11463 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5085 | /* 11467 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5086 | /* 11471 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5087 | /* 11474 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5088 | /* 11478 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 5089 | /* 11482 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 5090 | /* 11486 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5091 | /* 11490 */ // MIs[2] Operand 1 |
| 5092 | /* 11490 */ // No operand predicates |
| 5093 | /* 11490 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 5094 | /* 11492 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5095 | /* 11499 */ // (mul:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i32] }):$src2) => (IMUL32rmi:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i32] }):$src2) |
| 5096 | /* 11499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL32rmi), |
| 5097 | /* 11502 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5098 | /* 11504 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 5099 | /* 11508 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 5100 | /* 11511 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5101 | /* 11514 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 5102 | /* 11520 */ GIR_RootConstrainSelectedInstOperands, |
| 5103 | /* 11521 */ // GIR_Coverage, 22980, |
| 5104 | /* 11521 */ GIR_EraseRootFromParent_Done, |
| 5105 | /* 11522 */ // Label 377: @11522 |
| 5106 | /* 11522 */ GIM_Try, /*On fail goto*//*Label 378*/ GIMT_Encode4(11583), // Rule ID 26059 // |
| 5107 | /* 11527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 5108 | /* 11530 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5109 | /* 11534 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5110 | /* 11538 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5111 | /* 11541 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5112 | /* 11545 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 5113 | /* 11549 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 5114 | /* 11553 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5115 | /* 11555 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5116 | /* 11562 */ // (mul:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src1) => (IMUL32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5117 | /* 11562 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL32rm), |
| 5118 | /* 11565 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5119 | /* 11567 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5120 | /* 11569 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5121 | /* 11573 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5122 | /* 11576 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5123 | /* 11581 */ GIR_RootConstrainSelectedInstOperands, |
| 5124 | /* 11582 */ // GIR_Coverage, 26059, |
| 5125 | /* 11582 */ GIR_EraseRootFromParent_Done, |
| 5126 | /* 11583 */ // Label 378: @11583 |
| 5127 | /* 11583 */ GIM_Try, /*On fail goto*//*Label 379*/ GIMT_Encode4(11644), // Rule ID 26078 // |
| 5128 | /* 11588 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 5129 | /* 11591 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5130 | /* 11595 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5131 | /* 11599 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5132 | /* 11602 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5133 | /* 11606 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 5134 | /* 11610 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 5135 | /* 11614 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5136 | /* 11616 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5137 | /* 11623 */ // (mul:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src1) => (IMUL32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5138 | /* 11623 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL32rm_ND), |
| 5139 | /* 11626 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5140 | /* 11628 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5141 | /* 11630 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5142 | /* 11634 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5143 | /* 11637 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5144 | /* 11642 */ GIR_RootConstrainSelectedInstOperands, |
| 5145 | /* 11643 */ // GIR_Coverage, 26078, |
| 5146 | /* 11643 */ GIR_EraseRootFromParent_Done, |
| 5147 | /* 11644 */ // Label 379: @11644 |
| 5148 | /* 11644 */ GIM_Try, /*On fail goto*//*Label 380*/ GIMT_Encode4(11705), // Rule ID 22824 // |
| 5149 | /* 11649 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 5150 | /* 11652 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 5151 | /* 11656 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5152 | /* 11660 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5153 | /* 11664 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5154 | /* 11667 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5155 | /* 11671 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 5156 | /* 11675 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5157 | /* 11677 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5158 | /* 11684 */ // (mul:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (IMUL32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5159 | /* 11684 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL32rm), |
| 5160 | /* 11687 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5161 | /* 11689 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5162 | /* 11691 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5163 | /* 11695 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5164 | /* 11698 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5165 | /* 11703 */ GIR_RootConstrainSelectedInstOperands, |
| 5166 | /* 11704 */ // GIR_Coverage, 22824, |
| 5167 | /* 11704 */ GIR_EraseRootFromParent_Done, |
| 5168 | /* 11705 */ // Label 380: @11705 |
| 5169 | /* 11705 */ GIM_Try, /*On fail goto*//*Label 381*/ GIMT_Encode4(11766), // Rule ID 22914 // |
| 5170 | /* 11710 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 5171 | /* 11713 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 5172 | /* 11717 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5173 | /* 11721 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5174 | /* 11725 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5175 | /* 11728 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5176 | /* 11732 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 5177 | /* 11736 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5178 | /* 11738 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5179 | /* 11745 */ // (mul:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (IMUL32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5180 | /* 11745 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL32rm_ND), |
| 5181 | /* 11748 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5182 | /* 11750 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5183 | /* 11752 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5184 | /* 11756 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5185 | /* 11759 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5186 | /* 11764 */ GIR_RootConstrainSelectedInstOperands, |
| 5187 | /* 11765 */ // GIR_Coverage, 22914, |
| 5188 | /* 11765 */ GIR_EraseRootFromParent_Done, |
| 5189 | /* 11766 */ // Label 381: @11766 |
| 5190 | /* 11766 */ GIM_Try, /*On fail goto*//*Label 382*/ GIMT_Encode4(11800), // Rule ID 22977 // |
| 5191 | /* 11771 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 5192 | /* 11775 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5193 | /* 11779 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5194 | /* 11783 */ // MIs[1] Operand 1 |
| 5195 | /* 11783 */ // No operand predicates |
| 5196 | /* 11783 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5197 | /* 11785 */ // (mul:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (IMUL32rri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 5198 | /* 11785 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL32rri), |
| 5199 | /* 11788 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5200 | /* 11790 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5201 | /* 11792 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 5202 | /* 11795 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5203 | /* 11798 */ GIR_RootConstrainSelectedInstOperands, |
| 5204 | /* 11799 */ // GIR_Coverage, 22977, |
| 5205 | /* 11799 */ GIR_EraseRootFromParent_Done, |
| 5206 | /* 11800 */ // Label 382: @11800 |
| 5207 | /* 11800 */ GIM_Try, /*On fail goto*//*Label 383*/ GIMT_Encode4(11829), // Rule ID 22821 // |
| 5208 | /* 11805 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 5209 | /* 11808 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 5210 | /* 11812 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 5211 | /* 11816 */ // (mul:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (IMUL32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 5212 | /* 11816 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL32rr), |
| 5213 | /* 11821 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 5214 | /* 11827 */ GIR_RootConstrainSelectedInstOperands, |
| 5215 | /* 11828 */ // GIR_Coverage, 22821, |
| 5216 | /* 11828 */ GIR_Done, |
| 5217 | /* 11829 */ // Label 383: @11829 |
| 5218 | /* 11829 */ GIM_Try, /*On fail goto*//*Label 384*/ GIMT_Encode4(11858), // Rule ID 22911 // |
| 5219 | /* 11834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 5220 | /* 11837 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 5221 | /* 11841 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 5222 | /* 11845 */ // (mul:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (IMUL32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 5223 | /* 11845 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL32rr_ND), |
| 5224 | /* 11850 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 5225 | /* 11856 */ GIR_RootConstrainSelectedInstOperands, |
| 5226 | /* 11857 */ // GIR_Coverage, 22911, |
| 5227 | /* 11857 */ GIR_Done, |
| 5228 | /* 11858 */ // Label 384: @11858 |
| 5229 | /* 11858 */ GIM_Reject, |
| 5230 | /* 11859 */ // Label 376: @11859 |
| 5231 | /* 11859 */ GIM_Reject, |
| 5232 | /* 11860 */ // Label 356: @11860 |
| 5233 | /* 11860 */ GIM_Try, /*On fail goto*//*Label 385*/ GIMT_Encode4(12284), |
| 5234 | /* 11865 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 5235 | /* 11868 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 5236 | /* 11871 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 5237 | /* 11875 */ GIM_Try, /*On fail goto*//*Label 386*/ GIMT_Encode4(11943), // Rule ID 22981 // |
| 5238 | /* 11880 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5239 | /* 11884 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5240 | /* 11888 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5241 | /* 11891 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5242 | /* 11895 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5243 | /* 11899 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 5244 | /* 11903 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5245 | /* 11907 */ GIM_CheckI64ImmPredicate, /*MI*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 5246 | /* 11911 */ // MIs[2] Operand 1 |
| 5247 | /* 11911 */ // No operand predicates |
| 5248 | /* 11911 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 5249 | /* 11913 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5250 | /* 11920 */ // (mul:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (IMUL64rmi32:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 5251 | /* 11920 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL64rmi32), |
| 5252 | /* 11923 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5253 | /* 11925 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 5254 | /* 11929 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 5255 | /* 11932 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5256 | /* 11935 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 5257 | /* 11941 */ GIR_RootConstrainSelectedInstOperands, |
| 5258 | /* 11942 */ // GIR_Coverage, 22981, |
| 5259 | /* 11942 */ GIR_EraseRootFromParent_Done, |
| 5260 | /* 11943 */ // Label 386: @11943 |
| 5261 | /* 11943 */ GIM_Try, /*On fail goto*//*Label 387*/ GIMT_Encode4(12004), // Rule ID 26060 // |
| 5262 | /* 11948 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 5263 | /* 11951 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5264 | /* 11955 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5265 | /* 11959 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5266 | /* 11962 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5267 | /* 11966 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5268 | /* 11970 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 5269 | /* 11974 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5270 | /* 11976 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5271 | /* 11983 */ // (mul:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src1) => (IMUL64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5272 | /* 11983 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL64rm), |
| 5273 | /* 11986 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5274 | /* 11988 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5275 | /* 11990 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5276 | /* 11994 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5277 | /* 11997 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5278 | /* 12002 */ GIR_RootConstrainSelectedInstOperands, |
| 5279 | /* 12003 */ // GIR_Coverage, 26060, |
| 5280 | /* 12003 */ GIR_EraseRootFromParent_Done, |
| 5281 | /* 12004 */ // Label 387: @12004 |
| 5282 | /* 12004 */ GIM_Try, /*On fail goto*//*Label 388*/ GIMT_Encode4(12065), // Rule ID 26079 // |
| 5283 | /* 12009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 5284 | /* 12012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5285 | /* 12016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5286 | /* 12020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5287 | /* 12023 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5288 | /* 12027 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5289 | /* 12031 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 5290 | /* 12035 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5291 | /* 12037 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5292 | /* 12044 */ // (mul:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src1) => (IMUL64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5293 | /* 12044 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL64rm_ND), |
| 5294 | /* 12047 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5295 | /* 12049 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5296 | /* 12051 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5297 | /* 12055 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5298 | /* 12058 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5299 | /* 12063 */ GIR_RootConstrainSelectedInstOperands, |
| 5300 | /* 12064 */ // GIR_Coverage, 26079, |
| 5301 | /* 12064 */ GIR_EraseRootFromParent_Done, |
| 5302 | /* 12065 */ // Label 388: @12065 |
| 5303 | /* 12065 */ GIM_Try, /*On fail goto*//*Label 389*/ GIMT_Encode4(12126), // Rule ID 22825 // |
| 5304 | /* 12070 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 5305 | /* 12073 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 5306 | /* 12077 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5307 | /* 12081 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5308 | /* 12085 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5309 | /* 12088 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5310 | /* 12092 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5311 | /* 12096 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5312 | /* 12098 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5313 | /* 12105 */ // (mul:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (IMUL64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5314 | /* 12105 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL64rm), |
| 5315 | /* 12108 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5316 | /* 12110 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5317 | /* 12112 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5318 | /* 12116 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5319 | /* 12119 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5320 | /* 12124 */ GIR_RootConstrainSelectedInstOperands, |
| 5321 | /* 12125 */ // GIR_Coverage, 22825, |
| 5322 | /* 12125 */ GIR_EraseRootFromParent_Done, |
| 5323 | /* 12126 */ // Label 389: @12126 |
| 5324 | /* 12126 */ GIM_Try, /*On fail goto*//*Label 390*/ GIMT_Encode4(12187), // Rule ID 22915 // |
| 5325 | /* 12131 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 5326 | /* 12134 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 5327 | /* 12138 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5328 | /* 12142 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5329 | /* 12146 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5330 | /* 12149 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5331 | /* 12153 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5332 | /* 12157 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5333 | /* 12159 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5334 | /* 12166 */ // (mul:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (IMUL64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5335 | /* 12166 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL64rm_ND), |
| 5336 | /* 12169 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5337 | /* 12171 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5338 | /* 12173 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5339 | /* 12177 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5340 | /* 12180 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5341 | /* 12185 */ GIR_RootConstrainSelectedInstOperands, |
| 5342 | /* 12186 */ // GIR_Coverage, 22915, |
| 5343 | /* 12186 */ GIR_EraseRootFromParent_Done, |
| 5344 | /* 12187 */ // Label 390: @12187 |
| 5345 | /* 12187 */ GIM_Try, /*On fail goto*//*Label 391*/ GIMT_Encode4(12225), // Rule ID 22978 // |
| 5346 | /* 12192 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 5347 | /* 12196 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5348 | /* 12200 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5349 | /* 12204 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 5350 | /* 12208 */ // MIs[1] Operand 1 |
| 5351 | /* 12208 */ // No operand predicates |
| 5352 | /* 12208 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5353 | /* 12210 */ // (mul:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (IMUL64rri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 5354 | /* 12210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL64rri32), |
| 5355 | /* 12213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5356 | /* 12215 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5357 | /* 12217 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 5358 | /* 12220 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5359 | /* 12223 */ GIR_RootConstrainSelectedInstOperands, |
| 5360 | /* 12224 */ // GIR_Coverage, 22978, |
| 5361 | /* 12224 */ GIR_EraseRootFromParent_Done, |
| 5362 | /* 12225 */ // Label 391: @12225 |
| 5363 | /* 12225 */ GIM_Try, /*On fail goto*//*Label 392*/ GIMT_Encode4(12254), // Rule ID 22822 // |
| 5364 | /* 12230 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 5365 | /* 12233 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 5366 | /* 12237 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 5367 | /* 12241 */ // (mul:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (IMUL64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 5368 | /* 12241 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL64rr), |
| 5369 | /* 12246 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 5370 | /* 12252 */ GIR_RootConstrainSelectedInstOperands, |
| 5371 | /* 12253 */ // GIR_Coverage, 22822, |
| 5372 | /* 12253 */ GIR_Done, |
| 5373 | /* 12254 */ // Label 392: @12254 |
| 5374 | /* 12254 */ GIM_Try, /*On fail goto*//*Label 393*/ GIMT_Encode4(12283), // Rule ID 22912 // |
| 5375 | /* 12259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 5376 | /* 12262 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 5377 | /* 12266 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 5378 | /* 12270 */ // (mul:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (IMUL64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 5379 | /* 12270 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL64rr_ND), |
| 5380 | /* 12275 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 5381 | /* 12281 */ GIR_RootConstrainSelectedInstOperands, |
| 5382 | /* 12282 */ // GIR_Coverage, 22912, |
| 5383 | /* 12282 */ GIR_Done, |
| 5384 | /* 12283 */ // Label 393: @12283 |
| 5385 | /* 12283 */ GIM_Reject, |
| 5386 | /* 12284 */ // Label 385: @12284 |
| 5387 | /* 12284 */ GIM_Reject, |
| 5388 | /* 12285 */ // Label 357: @12285 |
| 5389 | /* 12285 */ GIM_Try, /*On fail goto*//*Label 394*/ GIMT_Encode4(12613), |
| 5390 | /* 12290 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 5391 | /* 12293 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 5392 | /* 12296 */ GIM_Try, /*On fail goto*//*Label 395*/ GIMT_Encode4(12358), // Rule ID 23825 // |
| 5393 | /* 12301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 5394 | /* 12304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5395 | /* 12308 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5396 | /* 12312 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5397 | /* 12316 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5398 | /* 12319 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5399 | /* 12323 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5400 | /* 12327 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5401 | /* 12331 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5402 | /* 12333 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5403 | /* 12340 */ // (mul:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPMULLQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5404 | /* 12340 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ128rm), |
| 5405 | /* 12343 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5406 | /* 12345 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5407 | /* 12347 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5408 | /* 12351 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5409 | /* 12356 */ GIR_RootConstrainSelectedInstOperands, |
| 5410 | /* 12357 */ // GIR_Coverage, 23825, |
| 5411 | /* 12357 */ GIR_EraseRootFromParent_Done, |
| 5412 | /* 12358 */ // Label 395: @12358 |
| 5413 | /* 12358 */ GIM_Try, /*On fail goto*//*Label 396*/ GIMT_Encode4(12420), // Rule ID 5023 // |
| 5414 | /* 12363 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 5415 | /* 12366 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5416 | /* 12370 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5417 | /* 12374 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5418 | /* 12378 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5419 | /* 12382 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5420 | /* 12385 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5421 | /* 12389 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5422 | /* 12393 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5423 | /* 12395 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5424 | /* 12402 */ // (mul:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5425 | /* 12402 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ128rm), |
| 5426 | /* 12405 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5427 | /* 12407 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5428 | /* 12409 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5429 | /* 12413 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5430 | /* 12418 */ GIR_RootConstrainSelectedInstOperands, |
| 5431 | /* 12419 */ // GIR_Coverage, 5023, |
| 5432 | /* 12419 */ GIR_EraseRootFromParent_Done, |
| 5433 | /* 12420 */ // Label 396: @12420 |
| 5434 | /* 12420 */ GIM_Try, /*On fail goto*//*Label 397*/ GIMT_Encode4(12447), // Rule ID 5020 // |
| 5435 | /* 12425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 5436 | /* 12428 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5437 | /* 12432 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5438 | /* 12436 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5439 | /* 12440 */ // (mul:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPMULLQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 5440 | /* 12440 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ128rr), |
| 5441 | /* 12445 */ GIR_RootConstrainSelectedInstOperands, |
| 5442 | /* 12446 */ // GIR_Coverage, 5020, |
| 5443 | /* 12446 */ GIR_Done, |
| 5444 | /* 12447 */ // Label 397: @12447 |
| 5445 | /* 12447 */ GIM_Try, /*On fail goto*//*Label 398*/ GIMT_Encode4(12612), // Rule ID 19998 // |
| 5446 | /* 12452 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasEVEX512_NoVLX), |
| 5447 | /* 12455 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 5448 | /* 12459 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5449 | /* 12463 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5450 | /* 12467 */ // (mul:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPMULLQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 5451 | /* 12467 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 5452 | /* 12470 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 5453 | /* 12474 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 5454 | /* 12479 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 5455 | /* 12481 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 5456 | /* 12484 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 5457 | /* 12488 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 5458 | /* 12493 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 5459 | /* 12496 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 5460 | /* 12500 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 5461 | /* 12503 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 5462 | /* 12508 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5463 | /* 12513 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 5464 | /* 12518 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 5465 | /* 12521 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 5466 | /* 12525 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 5467 | /* 12530 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 5468 | /* 12532 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 5469 | /* 12535 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 5470 | /* 12539 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 5471 | /* 12544 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 5472 | /* 12547 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 5473 | /* 12551 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 5474 | /* 12554 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 5475 | /* 12559 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5476 | /* 12564 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 5477 | /* 12569 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 5478 | /* 12572 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMULLQZrr), |
| 5479 | /* 12576 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 5480 | /* 12581 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 5481 | /* 12584 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 5482 | /* 12587 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 5483 | /* 12589 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5484 | /* 12592 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5485 | /* 12594 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 5486 | /* 12601 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 5487 | /* 12606 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5488 | /* 12611 */ // GIR_Coverage, 19998, |
| 5489 | /* 12611 */ GIR_EraseRootFromParent_Done, |
| 5490 | /* 12612 */ // Label 398: @12612 |
| 5491 | /* 12612 */ GIM_Reject, |
| 5492 | /* 12613 */ // Label 394: @12613 |
| 5493 | /* 12613 */ GIM_Reject, |
| 5494 | /* 12614 */ // Label 358: @12614 |
| 5495 | /* 12614 */ GIM_Try, /*On fail goto*//*Label 399*/ GIMT_Encode4(12955), |
| 5496 | /* 12619 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 5497 | /* 12622 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 5498 | /* 12625 */ GIM_Try, /*On fail goto*//*Label 400*/ GIMT_Encode4(12687), // Rule ID 23528 // |
| 5499 | /* 12630 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 5500 | /* 12633 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5501 | /* 12637 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5502 | /* 12641 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5503 | /* 12645 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5504 | /* 12648 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5505 | /* 12652 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5506 | /* 12656 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5507 | /* 12660 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5508 | /* 12662 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5509 | /* 12669 */ // (mul:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPMULLDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5510 | /* 12669 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDrm), |
| 5511 | /* 12672 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5512 | /* 12674 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5513 | /* 12676 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5514 | /* 12680 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5515 | /* 12685 */ GIR_RootConstrainSelectedInstOperands, |
| 5516 | /* 12686 */ // GIR_Coverage, 23528, |
| 5517 | /* 12686 */ GIR_EraseRootFromParent_Done, |
| 5518 | /* 12687 */ // Label 400: @12687 |
| 5519 | /* 12687 */ GIM_Try, /*On fail goto*//*Label 401*/ GIMT_Encode4(12749), // Rule ID 23798 // |
| 5520 | /* 12692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5521 | /* 12695 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5522 | /* 12699 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5523 | /* 12703 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5524 | /* 12707 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5525 | /* 12710 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5526 | /* 12714 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5527 | /* 12718 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5528 | /* 12722 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5529 | /* 12724 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5530 | /* 12731 */ // (mul:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPMULLDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5531 | /* 12731 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ128rm), |
| 5532 | /* 12734 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5533 | /* 12736 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5534 | /* 12738 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5535 | /* 12742 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5536 | /* 12747 */ GIR_RootConstrainSelectedInstOperands, |
| 5537 | /* 12748 */ // GIR_Coverage, 23798, |
| 5538 | /* 12748 */ GIR_EraseRootFromParent_Done, |
| 5539 | /* 12749 */ // Label 401: @12749 |
| 5540 | /* 12749 */ GIM_Try, /*On fail goto*//*Label 402*/ GIMT_Encode4(12811), // Rule ID 3240 // |
| 5541 | /* 12754 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 5542 | /* 12757 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5543 | /* 12761 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5544 | /* 12765 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5545 | /* 12769 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5546 | /* 12773 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5547 | /* 12776 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5548 | /* 12780 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5549 | /* 12784 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5550 | /* 12786 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5551 | /* 12793 */ // (mul:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5552 | /* 12793 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDrm), |
| 5553 | /* 12796 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5554 | /* 12798 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5555 | /* 12800 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5556 | /* 12804 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5557 | /* 12809 */ GIR_RootConstrainSelectedInstOperands, |
| 5558 | /* 12810 */ // GIR_Coverage, 3240, |
| 5559 | /* 12810 */ GIR_EraseRootFromParent_Done, |
| 5560 | /* 12811 */ // Label 402: @12811 |
| 5561 | /* 12811 */ GIM_Try, /*On fail goto*//*Label 403*/ GIMT_Encode4(12873), // Rule ID 4978 // |
| 5562 | /* 12816 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5563 | /* 12819 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5564 | /* 12823 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5565 | /* 12827 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5566 | /* 12831 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5567 | /* 12835 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5568 | /* 12838 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5569 | /* 12842 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5570 | /* 12846 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5571 | /* 12848 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5572 | /* 12855 */ // (mul:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5573 | /* 12855 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ128rm), |
| 5574 | /* 12858 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5575 | /* 12860 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5576 | /* 12862 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5577 | /* 12866 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5578 | /* 12871 */ GIR_RootConstrainSelectedInstOperands, |
| 5579 | /* 12872 */ // GIR_Coverage, 4978, |
| 5580 | /* 12872 */ GIR_EraseRootFromParent_Done, |
| 5581 | /* 12873 */ // Label 403: @12873 |
| 5582 | /* 12873 */ GIM_Try, /*On fail goto*//*Label 404*/ GIMT_Encode4(12900), // Rule ID 3239 // |
| 5583 | /* 12878 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 5584 | /* 12881 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5585 | /* 12885 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5586 | /* 12889 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5587 | /* 12893 */ // (mul:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMULLDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 5588 | /* 12893 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLDrr), |
| 5589 | /* 12898 */ GIR_RootConstrainSelectedInstOperands, |
| 5590 | /* 12899 */ // GIR_Coverage, 3239, |
| 5591 | /* 12899 */ GIR_Done, |
| 5592 | /* 12900 */ // Label 404: @12900 |
| 5593 | /* 12900 */ GIM_Try, /*On fail goto*//*Label 405*/ GIMT_Encode4(12927), // Rule ID 3247 // |
| 5594 | /* 12905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 5595 | /* 12908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5596 | /* 12912 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5597 | /* 12916 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5598 | /* 12920 */ // (mul:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PMULLDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 5599 | /* 12920 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMULLDrr), |
| 5600 | /* 12925 */ GIR_RootConstrainSelectedInstOperands, |
| 5601 | /* 12926 */ // GIR_Coverage, 3247, |
| 5602 | /* 12926 */ GIR_Done, |
| 5603 | /* 12927 */ // Label 405: @12927 |
| 5604 | /* 12927 */ GIM_Try, /*On fail goto*//*Label 406*/ GIMT_Encode4(12954), // Rule ID 4975 // |
| 5605 | /* 12932 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5606 | /* 12935 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5607 | /* 12939 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5608 | /* 12943 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5609 | /* 12947 */ // (mul:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPMULLDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 5610 | /* 12947 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ128rr), |
| 5611 | /* 12952 */ GIR_RootConstrainSelectedInstOperands, |
| 5612 | /* 12953 */ // GIR_Coverage, 4975, |
| 5613 | /* 12953 */ GIR_Done, |
| 5614 | /* 12954 */ // Label 406: @12954 |
| 5615 | /* 12954 */ GIM_Reject, |
| 5616 | /* 12955 */ // Label 399: @12955 |
| 5617 | /* 12955 */ GIM_Reject, |
| 5618 | /* 12956 */ // Label 359: @12956 |
| 5619 | /* 12956 */ GIM_Try, /*On fail goto*//*Label 407*/ GIMT_Encode4(13272), |
| 5620 | /* 12961 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 5621 | /* 12964 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 5622 | /* 12967 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5623 | /* 12971 */ GIM_Try, /*On fail goto*//*Label 408*/ GIMT_Encode4(13029), // Rule ID 23819 // |
| 5624 | /* 12976 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 5625 | /* 12979 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5626 | /* 12983 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5627 | /* 12987 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5628 | /* 12990 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5629 | /* 12994 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5630 | /* 12998 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5631 | /* 13002 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5632 | /* 13004 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5633 | /* 13011 */ // (mul:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPMULLQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5634 | /* 13011 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ256rm), |
| 5635 | /* 13014 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5636 | /* 13016 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5637 | /* 13018 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5638 | /* 13022 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5639 | /* 13027 */ GIR_RootConstrainSelectedInstOperands, |
| 5640 | /* 13028 */ // GIR_Coverage, 23819, |
| 5641 | /* 13028 */ GIR_EraseRootFromParent_Done, |
| 5642 | /* 13029 */ // Label 408: @13029 |
| 5643 | /* 13029 */ GIM_Try, /*On fail goto*//*Label 409*/ GIMT_Encode4(13087), // Rule ID 5014 // |
| 5644 | /* 13034 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 5645 | /* 13037 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5646 | /* 13041 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5647 | /* 13045 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5648 | /* 13049 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5649 | /* 13052 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5650 | /* 13056 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5651 | /* 13060 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5652 | /* 13062 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5653 | /* 13069 */ // (mul:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5654 | /* 13069 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ256rm), |
| 5655 | /* 13072 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5656 | /* 13074 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5657 | /* 13076 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5658 | /* 13080 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5659 | /* 13085 */ GIR_RootConstrainSelectedInstOperands, |
| 5660 | /* 13086 */ // GIR_Coverage, 5014, |
| 5661 | /* 13086 */ GIR_EraseRootFromParent_Done, |
| 5662 | /* 13087 */ // Label 409: @13087 |
| 5663 | /* 13087 */ GIM_Try, /*On fail goto*//*Label 410*/ GIMT_Encode4(13110), // Rule ID 5011 // |
| 5664 | /* 13092 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 5665 | /* 13095 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5666 | /* 13099 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5667 | /* 13103 */ // (mul:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPMULLQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 5668 | /* 13103 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ256rr), |
| 5669 | /* 13108 */ GIR_RootConstrainSelectedInstOperands, |
| 5670 | /* 13109 */ // GIR_Coverage, 5011, |
| 5671 | /* 13109 */ GIR_Done, |
| 5672 | /* 13110 */ // Label 410: @13110 |
| 5673 | /* 13110 */ GIM_Try, /*On fail goto*//*Label 411*/ GIMT_Encode4(13271), // Rule ID 19996 // |
| 5674 | /* 13115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasEVEX512_NoVLX), |
| 5675 | /* 13118 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5676 | /* 13122 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5677 | /* 13126 */ // (mul:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPMULLQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 5678 | /* 13126 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 5679 | /* 13129 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 5680 | /* 13133 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 5681 | /* 13138 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 5682 | /* 13140 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 5683 | /* 13143 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 5684 | /* 13147 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 5685 | /* 13152 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 5686 | /* 13155 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 5687 | /* 13159 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 5688 | /* 13162 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 5689 | /* 13167 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5690 | /* 13172 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 5691 | /* 13177 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 5692 | /* 13180 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 5693 | /* 13184 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 5694 | /* 13189 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 5695 | /* 13191 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 5696 | /* 13194 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 5697 | /* 13198 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 5698 | /* 13203 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 5699 | /* 13206 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 5700 | /* 13210 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 5701 | /* 13213 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 5702 | /* 13218 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5703 | /* 13223 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 5704 | /* 13228 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 5705 | /* 13231 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMULLQZrr), |
| 5706 | /* 13235 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 5707 | /* 13240 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 5708 | /* 13243 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 5709 | /* 13246 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 5710 | /* 13248 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5711 | /* 13251 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5712 | /* 13253 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 5713 | /* 13260 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 5714 | /* 13265 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5715 | /* 13270 */ // GIR_Coverage, 19996, |
| 5716 | /* 13270 */ GIR_EraseRootFromParent_Done, |
| 5717 | /* 13271 */ // Label 411: @13271 |
| 5718 | /* 13271 */ GIM_Reject, |
| 5719 | /* 13272 */ // Label 407: @13272 |
| 5720 | /* 13272 */ GIM_Reject, |
| 5721 | /* 13273 */ // Label 360: @13273 |
| 5722 | /* 13273 */ GIM_Try, /*On fail goto*//*Label 412*/ GIMT_Encode4(13614), |
| 5723 | /* 13278 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 5724 | /* 13281 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 5725 | /* 13284 */ GIM_Try, /*On fail goto*//*Label 413*/ GIMT_Encode4(13346), // Rule ID 23453 // |
| 5726 | /* 13289 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 5727 | /* 13292 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5728 | /* 13296 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5729 | /* 13300 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5730 | /* 13304 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5731 | /* 13307 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5732 | /* 13311 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5733 | /* 13315 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5734 | /* 13319 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5735 | /* 13321 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5736 | /* 13328 */ // (mul:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMULLWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5737 | /* 13328 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWrm), |
| 5738 | /* 13331 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5739 | /* 13333 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5740 | /* 13335 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5741 | /* 13339 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5742 | /* 13344 */ GIR_RootConstrainSelectedInstOperands, |
| 5743 | /* 13345 */ // GIR_Coverage, 23453, |
| 5744 | /* 13345 */ GIR_EraseRootFromParent_Done, |
| 5745 | /* 13346 */ // Label 413: @13346 |
| 5746 | /* 13346 */ GIM_Try, /*On fail goto*//*Label 414*/ GIMT_Encode4(13408), // Rule ID 23810 // |
| 5747 | /* 13351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 5748 | /* 13354 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5749 | /* 13358 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5750 | /* 13362 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5751 | /* 13366 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5752 | /* 13369 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5753 | /* 13373 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5754 | /* 13377 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5755 | /* 13381 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5756 | /* 13383 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5757 | /* 13390 */ // (mul:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMULLWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5758 | /* 13390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ128rm), |
| 5759 | /* 13393 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5760 | /* 13395 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5761 | /* 13397 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5762 | /* 13401 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5763 | /* 13406 */ GIR_RootConstrainSelectedInstOperands, |
| 5764 | /* 13407 */ // GIR_Coverage, 23810, |
| 5765 | /* 13407 */ GIR_EraseRootFromParent_Done, |
| 5766 | /* 13408 */ // Label 414: @13408 |
| 5767 | /* 13408 */ GIM_Try, /*On fail goto*//*Label 415*/ GIMT_Encode4(13470), // Rule ID 2571 // |
| 5768 | /* 13413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 5769 | /* 13416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5770 | /* 13420 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5771 | /* 13424 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5772 | /* 13428 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5773 | /* 13432 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5774 | /* 13435 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5775 | /* 13439 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5776 | /* 13443 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5777 | /* 13445 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5778 | /* 13452 */ // (mul:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5779 | /* 13452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWrm), |
| 5780 | /* 13455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5781 | /* 13457 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5782 | /* 13459 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5783 | /* 13463 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5784 | /* 13468 */ GIR_RootConstrainSelectedInstOperands, |
| 5785 | /* 13469 */ // GIR_Coverage, 2571, |
| 5786 | /* 13469 */ GIR_EraseRootFromParent_Done, |
| 5787 | /* 13470 */ // Label 415: @13470 |
| 5788 | /* 13470 */ GIM_Try, /*On fail goto*//*Label 416*/ GIMT_Encode4(13532), // Rule ID 4999 // |
| 5789 | /* 13475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 5790 | /* 13478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5791 | /* 13482 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5792 | /* 13486 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5793 | /* 13490 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5794 | /* 13494 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5795 | /* 13497 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5796 | /* 13501 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5797 | /* 13505 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5798 | /* 13507 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5799 | /* 13514 */ // (mul:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5800 | /* 13514 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ128rm), |
| 5801 | /* 13517 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5802 | /* 13519 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5803 | /* 13521 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5804 | /* 13525 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5805 | /* 13530 */ GIR_RootConstrainSelectedInstOperands, |
| 5806 | /* 13531 */ // GIR_Coverage, 4999, |
| 5807 | /* 13531 */ GIR_EraseRootFromParent_Done, |
| 5808 | /* 13532 */ // Label 416: @13532 |
| 5809 | /* 13532 */ GIM_Try, /*On fail goto*//*Label 417*/ GIMT_Encode4(13559), // Rule ID 2570 // |
| 5810 | /* 13537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 5811 | /* 13540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5812 | /* 13544 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5813 | /* 13548 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5814 | /* 13552 */ // (mul:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMULLWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 5815 | /* 13552 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLWrr), |
| 5816 | /* 13557 */ GIR_RootConstrainSelectedInstOperands, |
| 5817 | /* 13558 */ // GIR_Coverage, 2570, |
| 5818 | /* 13558 */ GIR_Done, |
| 5819 | /* 13559 */ // Label 417: @13559 |
| 5820 | /* 13559 */ GIM_Try, /*On fail goto*//*Label 418*/ GIMT_Encode4(13586), // Rule ID 2572 // |
| 5821 | /* 13564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 5822 | /* 13567 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5823 | /* 13571 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5824 | /* 13575 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5825 | /* 13579 */ // (mul:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMULLWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 5826 | /* 13579 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMULLWrr), |
| 5827 | /* 13584 */ GIR_RootConstrainSelectedInstOperands, |
| 5828 | /* 13585 */ // GIR_Coverage, 2572, |
| 5829 | /* 13585 */ GIR_Done, |
| 5830 | /* 13586 */ // Label 418: @13586 |
| 5831 | /* 13586 */ GIM_Try, /*On fail goto*//*Label 419*/ GIMT_Encode4(13613), // Rule ID 4996 // |
| 5832 | /* 13591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 5833 | /* 13594 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5834 | /* 13598 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5835 | /* 13602 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5836 | /* 13606 */ // (mul:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMULLWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 5837 | /* 13606 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ128rr), |
| 5838 | /* 13611 */ GIR_RootConstrainSelectedInstOperands, |
| 5839 | /* 13612 */ // GIR_Coverage, 4996, |
| 5840 | /* 13612 */ GIR_Done, |
| 5841 | /* 13613 */ // Label 419: @13613 |
| 5842 | /* 13613 */ GIM_Reject, |
| 5843 | /* 13614 */ // Label 412: @13614 |
| 5844 | /* 13614 */ GIM_Reject, |
| 5845 | /* 13615 */ // Label 361: @13615 |
| 5846 | /* 13615 */ GIM_Try, /*On fail goto*//*Label 420*/ GIMT_Encode4(13929), |
| 5847 | /* 13620 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 5848 | /* 13623 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 5849 | /* 13626 */ GIM_Try, /*On fail goto*//*Label 421*/ GIMT_Encode4(13688), // Rule ID 23530 // |
| 5850 | /* 13631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 5851 | /* 13634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5852 | /* 13638 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5853 | /* 13642 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5854 | /* 13646 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5855 | /* 13649 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5856 | /* 13653 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5857 | /* 13657 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5858 | /* 13661 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5859 | /* 13663 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5860 | /* 13670 */ // (mul:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPMULLDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5861 | /* 13670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDYrm), |
| 5862 | /* 13673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5863 | /* 13675 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5864 | /* 13677 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5865 | /* 13681 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5866 | /* 13686 */ GIR_RootConstrainSelectedInstOperands, |
| 5867 | /* 13687 */ // GIR_Coverage, 23530, |
| 5868 | /* 13687 */ GIR_EraseRootFromParent_Done, |
| 5869 | /* 13688 */ // Label 421: @13688 |
| 5870 | /* 13688 */ GIM_Try, /*On fail goto*//*Label 422*/ GIMT_Encode4(13750), // Rule ID 23792 // |
| 5871 | /* 13693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5872 | /* 13696 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5873 | /* 13700 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5874 | /* 13704 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5875 | /* 13708 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5876 | /* 13711 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5877 | /* 13715 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5878 | /* 13719 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5879 | /* 13723 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5880 | /* 13725 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5881 | /* 13732 */ // (mul:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPMULLDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5882 | /* 13732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ256rm), |
| 5883 | /* 13735 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5884 | /* 13737 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5885 | /* 13739 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5886 | /* 13743 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5887 | /* 13748 */ GIR_RootConstrainSelectedInstOperands, |
| 5888 | /* 13749 */ // GIR_Coverage, 23792, |
| 5889 | /* 13749 */ GIR_EraseRootFromParent_Done, |
| 5890 | /* 13750 */ // Label 422: @13750 |
| 5891 | /* 13750 */ GIM_Try, /*On fail goto*//*Label 423*/ GIMT_Encode4(13812), // Rule ID 3244 // |
| 5892 | /* 13755 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 5893 | /* 13758 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5894 | /* 13762 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5895 | /* 13766 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5896 | /* 13770 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5897 | /* 13774 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5898 | /* 13777 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5899 | /* 13781 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5900 | /* 13785 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5901 | /* 13787 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5902 | /* 13794 */ // (mul:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5903 | /* 13794 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDYrm), |
| 5904 | /* 13797 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5905 | /* 13799 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5906 | /* 13801 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5907 | /* 13805 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5908 | /* 13810 */ GIR_RootConstrainSelectedInstOperands, |
| 5909 | /* 13811 */ // GIR_Coverage, 3244, |
| 5910 | /* 13811 */ GIR_EraseRootFromParent_Done, |
| 5911 | /* 13812 */ // Label 423: @13812 |
| 5912 | /* 13812 */ GIM_Try, /*On fail goto*//*Label 424*/ GIMT_Encode4(13874), // Rule ID 4969 // |
| 5913 | /* 13817 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5914 | /* 13820 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5915 | /* 13824 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5916 | /* 13828 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5917 | /* 13832 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5918 | /* 13836 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5919 | /* 13839 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5920 | /* 13843 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5921 | /* 13847 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5922 | /* 13849 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5923 | /* 13856 */ // (mul:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5924 | /* 13856 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ256rm), |
| 5925 | /* 13859 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5926 | /* 13861 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5927 | /* 13863 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5928 | /* 13867 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5929 | /* 13872 */ GIR_RootConstrainSelectedInstOperands, |
| 5930 | /* 13873 */ // GIR_Coverage, 4969, |
| 5931 | /* 13873 */ GIR_EraseRootFromParent_Done, |
| 5932 | /* 13874 */ // Label 424: @13874 |
| 5933 | /* 13874 */ GIM_Try, /*On fail goto*//*Label 425*/ GIMT_Encode4(13901), // Rule ID 3243 // |
| 5934 | /* 13879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 5935 | /* 13882 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5936 | /* 13886 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5937 | /* 13890 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5938 | /* 13894 */ // (mul:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMULLDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 5939 | /* 13894 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLDYrr), |
| 5940 | /* 13899 */ GIR_RootConstrainSelectedInstOperands, |
| 5941 | /* 13900 */ // GIR_Coverage, 3243, |
| 5942 | /* 13900 */ GIR_Done, |
| 5943 | /* 13901 */ // Label 425: @13901 |
| 5944 | /* 13901 */ GIM_Try, /*On fail goto*//*Label 426*/ GIMT_Encode4(13928), // Rule ID 4966 // |
| 5945 | /* 13906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5946 | /* 13909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5947 | /* 13913 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5948 | /* 13917 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5949 | /* 13921 */ // (mul:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPMULLDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 5950 | /* 13921 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ256rr), |
| 5951 | /* 13926 */ GIR_RootConstrainSelectedInstOperands, |
| 5952 | /* 13927 */ // GIR_Coverage, 4966, |
| 5953 | /* 13927 */ GIR_Done, |
| 5954 | /* 13928 */ // Label 426: @13928 |
| 5955 | /* 13928 */ GIM_Reject, |
| 5956 | /* 13929 */ // Label 420: @13929 |
| 5957 | /* 13929 */ GIM_Reject, |
| 5958 | /* 13930 */ // Label 362: @13930 |
| 5959 | /* 13930 */ GIM_Try, /*On fail goto*//*Label 427*/ GIMT_Encode4(14085), |
| 5960 | /* 13935 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 5961 | /* 13938 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 5962 | /* 13941 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5963 | /* 13945 */ GIM_Try, /*On fail goto*//*Label 428*/ GIMT_Encode4(14003), // Rule ID 23813 // |
| 5964 | /* 13950 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 5965 | /* 13953 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5966 | /* 13957 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5967 | /* 13961 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5968 | /* 13964 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5969 | /* 13968 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5970 | /* 13972 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5971 | /* 13976 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5972 | /* 13978 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5973 | /* 13985 */ // (mul:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPMULLQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5974 | /* 13985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZrm), |
| 5975 | /* 13988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5976 | /* 13990 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5977 | /* 13992 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5978 | /* 13996 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5979 | /* 14001 */ GIR_RootConstrainSelectedInstOperands, |
| 5980 | /* 14002 */ // GIR_Coverage, 23813, |
| 5981 | /* 14002 */ GIR_EraseRootFromParent_Done, |
| 5982 | /* 14003 */ // Label 428: @14003 |
| 5983 | /* 14003 */ GIM_Try, /*On fail goto*//*Label 429*/ GIMT_Encode4(14061), // Rule ID 5005 // |
| 5984 | /* 14008 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 5985 | /* 14011 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5986 | /* 14015 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5987 | /* 14019 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5988 | /* 14023 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5989 | /* 14026 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5990 | /* 14030 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5991 | /* 14034 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5992 | /* 14036 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5993 | /* 14043 */ // (mul:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5994 | /* 14043 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZrm), |
| 5995 | /* 14046 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5996 | /* 14048 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5997 | /* 14050 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5998 | /* 14054 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5999 | /* 14059 */ GIR_RootConstrainSelectedInstOperands, |
| 6000 | /* 14060 */ // GIR_Coverage, 5005, |
| 6001 | /* 14060 */ GIR_EraseRootFromParent_Done, |
| 6002 | /* 14061 */ // Label 429: @14061 |
| 6003 | /* 14061 */ GIM_Try, /*On fail goto*//*Label 430*/ GIMT_Encode4(14084), // Rule ID 5002 // |
| 6004 | /* 14066 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 6005 | /* 14069 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6006 | /* 14073 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6007 | /* 14077 */ // (mul:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPMULLQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 6008 | /* 14077 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLQZrr), |
| 6009 | /* 14082 */ GIR_RootConstrainSelectedInstOperands, |
| 6010 | /* 14083 */ // GIR_Coverage, 5002, |
| 6011 | /* 14083 */ GIR_Done, |
| 6012 | /* 14084 */ // Label 430: @14084 |
| 6013 | /* 14084 */ GIM_Reject, |
| 6014 | /* 14085 */ // Label 427: @14085 |
| 6015 | /* 14085 */ GIM_Reject, |
| 6016 | /* 14086 */ // Label 363: @14086 |
| 6017 | /* 14086 */ GIM_Try, /*On fail goto*//*Label 431*/ GIMT_Encode4(14400), |
| 6018 | /* 14091 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 6019 | /* 14094 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 6020 | /* 14097 */ GIM_Try, /*On fail goto*//*Label 432*/ GIMT_Encode4(14159), // Rule ID 23455 // |
| 6021 | /* 14102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 6022 | /* 14105 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 6023 | /* 14109 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6024 | /* 14113 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6025 | /* 14117 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6026 | /* 14120 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6027 | /* 14124 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6028 | /* 14128 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 6029 | /* 14132 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6030 | /* 14134 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6031 | /* 14141 */ // (mul:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMULLWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6032 | /* 14141 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWYrm), |
| 6033 | /* 14144 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6034 | /* 14146 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6035 | /* 14148 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6036 | /* 14152 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6037 | /* 14157 */ GIR_RootConstrainSelectedInstOperands, |
| 6038 | /* 14158 */ // GIR_Coverage, 23455, |
| 6039 | /* 14158 */ GIR_EraseRootFromParent_Done, |
| 6040 | /* 14159 */ // Label 432: @14159 |
| 6041 | /* 14159 */ GIM_Try, /*On fail goto*//*Label 433*/ GIMT_Encode4(14221), // Rule ID 23807 // |
| 6042 | /* 14164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 6043 | /* 14167 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 6044 | /* 14171 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6045 | /* 14175 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6046 | /* 14179 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6047 | /* 14182 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6048 | /* 14186 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6049 | /* 14190 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 6050 | /* 14194 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6051 | /* 14196 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6052 | /* 14203 */ // (mul:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMULLWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6053 | /* 14203 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ256rm), |
| 6054 | /* 14206 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6055 | /* 14208 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6056 | /* 14210 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6057 | /* 14214 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6058 | /* 14219 */ GIR_RootConstrainSelectedInstOperands, |
| 6059 | /* 14220 */ // GIR_Coverage, 23807, |
| 6060 | /* 14220 */ GIR_EraseRootFromParent_Done, |
| 6061 | /* 14221 */ // Label 433: @14221 |
| 6062 | /* 14221 */ GIM_Try, /*On fail goto*//*Label 434*/ GIMT_Encode4(14283), // Rule ID 2575 // |
| 6063 | /* 14226 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 6064 | /* 14229 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 6065 | /* 14233 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 6066 | /* 14237 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6067 | /* 14241 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6068 | /* 14245 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6069 | /* 14248 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6070 | /* 14252 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6071 | /* 14256 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6072 | /* 14258 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6073 | /* 14265 */ // (mul:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6074 | /* 14265 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWYrm), |
| 6075 | /* 14268 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6076 | /* 14270 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6077 | /* 14272 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6078 | /* 14276 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6079 | /* 14281 */ GIR_RootConstrainSelectedInstOperands, |
| 6080 | /* 14282 */ // GIR_Coverage, 2575, |
| 6081 | /* 14282 */ GIR_EraseRootFromParent_Done, |
| 6082 | /* 14283 */ // Label 434: @14283 |
| 6083 | /* 14283 */ GIM_Try, /*On fail goto*//*Label 435*/ GIMT_Encode4(14345), // Rule ID 4993 // |
| 6084 | /* 14288 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 6085 | /* 14291 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 6086 | /* 14295 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 6087 | /* 14299 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6088 | /* 14303 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6089 | /* 14307 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6090 | /* 14310 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6091 | /* 14314 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6092 | /* 14318 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6093 | /* 14320 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6094 | /* 14327 */ // (mul:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6095 | /* 14327 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ256rm), |
| 6096 | /* 14330 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6097 | /* 14332 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6098 | /* 14334 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6099 | /* 14338 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6100 | /* 14343 */ GIR_RootConstrainSelectedInstOperands, |
| 6101 | /* 14344 */ // GIR_Coverage, 4993, |
| 6102 | /* 14344 */ GIR_EraseRootFromParent_Done, |
| 6103 | /* 14345 */ // Label 435: @14345 |
| 6104 | /* 14345 */ GIM_Try, /*On fail goto*//*Label 436*/ GIMT_Encode4(14372), // Rule ID 2574 // |
| 6105 | /* 14350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 6106 | /* 14353 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 6107 | /* 14357 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 6108 | /* 14361 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 6109 | /* 14365 */ // (mul:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMULLWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 6110 | /* 14365 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLWYrr), |
| 6111 | /* 14370 */ GIR_RootConstrainSelectedInstOperands, |
| 6112 | /* 14371 */ // GIR_Coverage, 2574, |
| 6113 | /* 14371 */ GIR_Done, |
| 6114 | /* 14372 */ // Label 436: @14372 |
| 6115 | /* 14372 */ GIM_Try, /*On fail goto*//*Label 437*/ GIMT_Encode4(14399), // Rule ID 4990 // |
| 6116 | /* 14377 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 6117 | /* 14380 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 6118 | /* 14384 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 6119 | /* 14388 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 6120 | /* 14392 */ // (mul:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMULLWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 6121 | /* 14392 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ256rr), |
| 6122 | /* 14397 */ GIR_RootConstrainSelectedInstOperands, |
| 6123 | /* 14398 */ // GIR_Coverage, 4990, |
| 6124 | /* 14398 */ GIR_Done, |
| 6125 | /* 14399 */ // Label 437: @14399 |
| 6126 | /* 14399 */ GIM_Reject, |
| 6127 | /* 14400 */ // Label 431: @14400 |
| 6128 | /* 14400 */ GIM_Reject, |
| 6129 | /* 14401 */ // Label 364: @14401 |
| 6130 | /* 14401 */ GIM_Try, /*On fail goto*//*Label 438*/ GIMT_Encode4(14556), |
| 6131 | /* 14406 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 6132 | /* 14409 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 6133 | /* 14412 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6134 | /* 14416 */ GIM_Try, /*On fail goto*//*Label 439*/ GIMT_Encode4(14474), // Rule ID 23786 // |
| 6135 | /* 14421 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 6136 | /* 14424 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6137 | /* 14428 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6138 | /* 14432 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6139 | /* 14435 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6140 | /* 14439 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6141 | /* 14443 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6142 | /* 14447 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6143 | /* 14449 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6144 | /* 14456 */ // (mul:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPMULLDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6145 | /* 14456 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZrm), |
| 6146 | /* 14459 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6147 | /* 14461 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6148 | /* 14463 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6149 | /* 14467 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6150 | /* 14472 */ GIR_RootConstrainSelectedInstOperands, |
| 6151 | /* 14473 */ // GIR_Coverage, 23786, |
| 6152 | /* 14473 */ GIR_EraseRootFromParent_Done, |
| 6153 | /* 14474 */ // Label 439: @14474 |
| 6154 | /* 14474 */ GIM_Try, /*On fail goto*//*Label 440*/ GIMT_Encode4(14532), // Rule ID 4960 // |
| 6155 | /* 14479 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 6156 | /* 14482 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6157 | /* 14486 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6158 | /* 14490 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6159 | /* 14494 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6160 | /* 14497 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6161 | /* 14501 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6162 | /* 14505 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6163 | /* 14507 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6164 | /* 14514 */ // (mul:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6165 | /* 14514 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZrm), |
| 6166 | /* 14517 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6167 | /* 14519 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6168 | /* 14521 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6169 | /* 14525 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6170 | /* 14530 */ GIR_RootConstrainSelectedInstOperands, |
| 6171 | /* 14531 */ // GIR_Coverage, 4960, |
| 6172 | /* 14531 */ GIR_EraseRootFromParent_Done, |
| 6173 | /* 14532 */ // Label 440: @14532 |
| 6174 | /* 14532 */ GIM_Try, /*On fail goto*//*Label 441*/ GIMT_Encode4(14555), // Rule ID 4957 // |
| 6175 | /* 14537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 6176 | /* 14540 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6177 | /* 14544 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6178 | /* 14548 */ // (mul:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPMULLDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 6179 | /* 14548 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLDZrr), |
| 6180 | /* 14553 */ GIR_RootConstrainSelectedInstOperands, |
| 6181 | /* 14554 */ // GIR_Coverage, 4957, |
| 6182 | /* 14554 */ GIR_Done, |
| 6183 | /* 14555 */ // Label 441: @14555 |
| 6184 | /* 14555 */ GIM_Reject, |
| 6185 | /* 14556 */ // Label 438: @14556 |
| 6186 | /* 14556 */ GIM_Reject, |
| 6187 | /* 14557 */ // Label 365: @14557 |
| 6188 | /* 14557 */ GIM_Try, /*On fail goto*//*Label 442*/ GIMT_Encode4(14712), |
| 6189 | /* 14562 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 6190 | /* 14565 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 6191 | /* 14568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6192 | /* 14572 */ GIM_Try, /*On fail goto*//*Label 443*/ GIMT_Encode4(14630), // Rule ID 23804 // |
| 6193 | /* 14577 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 6194 | /* 14580 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6195 | /* 14584 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6196 | /* 14588 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6197 | /* 14591 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6198 | /* 14595 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6199 | /* 14599 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6200 | /* 14603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6201 | /* 14605 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6202 | /* 14612 */ // (mul:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMULLWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6203 | /* 14612 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZrm), |
| 6204 | /* 14615 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6205 | /* 14617 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6206 | /* 14619 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6207 | /* 14623 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6208 | /* 14628 */ GIR_RootConstrainSelectedInstOperands, |
| 6209 | /* 14629 */ // GIR_Coverage, 23804, |
| 6210 | /* 14629 */ GIR_EraseRootFromParent_Done, |
| 6211 | /* 14630 */ // Label 443: @14630 |
| 6212 | /* 14630 */ GIM_Try, /*On fail goto*//*Label 444*/ GIMT_Encode4(14688), // Rule ID 4987 // |
| 6213 | /* 14635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 6214 | /* 14638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6215 | /* 14642 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6216 | /* 14646 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6217 | /* 14650 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6218 | /* 14653 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6219 | /* 14657 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6220 | /* 14661 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6221 | /* 14663 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6222 | /* 14670 */ // (mul:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6223 | /* 14670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZrm), |
| 6224 | /* 14673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6225 | /* 14675 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6226 | /* 14677 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6227 | /* 14681 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6228 | /* 14686 */ GIR_RootConstrainSelectedInstOperands, |
| 6229 | /* 14687 */ // GIR_Coverage, 4987, |
| 6230 | /* 14687 */ GIR_EraseRootFromParent_Done, |
| 6231 | /* 14688 */ // Label 444: @14688 |
| 6232 | /* 14688 */ GIM_Try, /*On fail goto*//*Label 445*/ GIMT_Encode4(14711), // Rule ID 4984 // |
| 6233 | /* 14693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 6234 | /* 14696 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6235 | /* 14700 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 6236 | /* 14704 */ // (mul:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMULLWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 6237 | /* 14704 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLWZrr), |
| 6238 | /* 14709 */ GIR_RootConstrainSelectedInstOperands, |
| 6239 | /* 14710 */ // GIR_Coverage, 4984, |
| 6240 | /* 14710 */ GIR_Done, |
| 6241 | /* 14711 */ // Label 445: @14711 |
| 6242 | /* 14711 */ GIM_Reject, |
| 6243 | /* 14712 */ // Label 442: @14712 |
| 6244 | /* 14712 */ GIM_Reject, |
| 6245 | /* 14713 */ // Label 366: @14713 |
| 6246 | /* 14713 */ GIM_Reject, |
| 6247 | /* 14714 */ // Label 3: @14714 |
| 6248 | /* 14714 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(25), /*)*//*default:*//*Label 469*/ GIMT_Encode4(25305), |
| 6249 | /* 14725 */ /*GILLT_s1*//*Label 446*/ GIMT_Encode4(14825), |
| 6250 | /* 14729 */ /*GILLT_s8*//*Label 447*/ GIMT_Encode4(15171), |
| 6251 | /* 14733 */ /*GILLT_s16*//*Label 448*/ GIMT_Encode4(15564), |
| 6252 | /* 14737 */ /*GILLT_s32*//*Label 449*/ GIMT_Encode4(16249), |
| 6253 | /* 14741 */ /*GILLT_s64*//*Label 450*/ GIMT_Encode4(18075), GIMT_Encode4(0), GIMT_Encode4(0), |
| 6254 | /* 14753 */ /*GILLT_v2s1*//*Label 451*/ GIMT_Encode4(19779), |
| 6255 | /* 14757 */ /*GILLT_v2s64*//*Label 452*/ GIMT_Encode4(20125), |
| 6256 | /* 14761 */ /*GILLT_v4s1*//*Label 453*/ GIMT_Encode4(20467), |
| 6257 | /* 14765 */ /*GILLT_v4s32*//*Label 454*/ GIMT_Encode4(20813), |
| 6258 | /* 14769 */ /*GILLT_v4s64*//*Label 455*/ GIMT_Encode4(21155), |
| 6259 | /* 14773 */ /*GILLT_v8s1*//*Label 456*/ GIMT_Encode4(21621), |
| 6260 | /* 14777 */ /*GILLT_v8s16*//*Label 457*/ GIMT_Encode4(22119), |
| 6261 | /* 14781 */ /*GILLT_v8s32*//*Label 458*/ GIMT_Encode4(22461), |
| 6262 | /* 14785 */ /*GILLT_v8s64*//*Label 459*/ GIMT_Encode4(22927), |
| 6263 | /* 14789 */ /*GILLT_v16s1*//*Label 460*/ GIMT_Encode4(23083), |
| 6264 | /* 14793 */ /*GILLT_v16s8*//*Label 461*/ GIMT_Encode4(23243), |
| 6265 | /* 14797 */ /*GILLT_v16s16*//*Label 462*/ GIMT_Encode4(23585), |
| 6266 | /* 14801 */ /*GILLT_v16s32*//*Label 463*/ GIMT_Encode4(24051), |
| 6267 | /* 14805 */ /*GILLT_v32s1*//*Label 464*/ GIMT_Encode4(24207), |
| 6268 | /* 14809 */ /*GILLT_v32s8*//*Label 465*/ GIMT_Encode4(24367), |
| 6269 | /* 14813 */ /*GILLT_v32s16*//*Label 466*/ GIMT_Encode4(24833), |
| 6270 | /* 14817 */ /*GILLT_v64s1*//*Label 467*/ GIMT_Encode4(24989), |
| 6271 | /* 14821 */ /*GILLT_v64s8*//*Label 468*/ GIMT_Encode4(25149), |
| 6272 | /* 14825 */ // Label 446: @14825 |
| 6273 | /* 14825 */ GIM_Try, /*On fail goto*//*Label 470*/ GIMT_Encode4(15170), |
| 6274 | /* 14830 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s1, |
| 6275 | /* 14833 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s1, |
| 6276 | /* 14836 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 6277 | /* 14840 */ GIM_Try, /*On fail goto*//*Label 471*/ GIMT_Encode4(14960), // Rule ID 19488 // |
| 6278 | /* 14845 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6279 | /* 14849 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6280 | /* 14853 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s1, |
| 6281 | /* 14857 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s1, |
| 6282 | /* 14861 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 6283 | /* 14866 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 6284 | /* 14870 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 6285 | /* 14876 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 6286 | /* 14878 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 6287 | /* 14882 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6288 | /* 14884 */ // (and:{ *:[v1i1] } (xor:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src1, immAllOnesV:{ *:[v1i1] }), VK1:{ *:[v1i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v1i1] } (KANDNWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src2, VK16:{ *:[i32] })), VK1:{ *:[i32] }) |
| 6289 | /* 14884 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 6290 | /* 14887 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6291 | /* 14891 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6292 | /* 14896 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 6293 | /* 14900 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 6294 | /* 14905 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 6295 | /* 14908 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6296 | /* 14912 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6297 | /* 14917 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6298 | /* 14921 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 6299 | /* 14926 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 6300 | /* 14929 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 6301 | /* 14933 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6302 | /* 14938 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6303 | /* 14941 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 6304 | /* 14944 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6305 | /* 14946 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6306 | /* 14949 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6307 | /* 14951 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6308 | /* 14954 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 6309 | /* 14959 */ // GIR_Coverage, 19488, |
| 6310 | /* 14959 */ GIR_EraseRootFromParent_Done, |
| 6311 | /* 14960 */ // Label 471: @14960 |
| 6312 | /* 14960 */ GIM_Try, /*On fail goto*//*Label 472*/ GIMT_Encode4(15080), // Rule ID 25367 // |
| 6313 | /* 14965 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 6314 | /* 14969 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6315 | /* 14973 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6316 | /* 14977 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s1, |
| 6317 | /* 14981 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s1, |
| 6318 | /* 14985 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 6319 | /* 14990 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 6320 | /* 14994 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 6321 | /* 15000 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 6322 | /* 15002 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6323 | /* 15004 */ // (and:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src2, (xor:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src1, immAllOnesV:{ *:[v1i1] })) => (COPY_TO_REGCLASS:{ *:[v1i1] } (KANDNWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src2, VK16:{ *:[i32] })), VK1:{ *:[i32] }) |
| 6324 | /* 15004 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 6325 | /* 15007 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6326 | /* 15011 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6327 | /* 15016 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 6328 | /* 15020 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 6329 | /* 15025 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 6330 | /* 15028 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6331 | /* 15032 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6332 | /* 15037 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6333 | /* 15041 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 6334 | /* 15046 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 6335 | /* 15049 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 6336 | /* 15053 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6337 | /* 15058 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6338 | /* 15061 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 6339 | /* 15064 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6340 | /* 15066 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6341 | /* 15069 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6342 | /* 15071 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6343 | /* 15074 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 6344 | /* 15079 */ // GIR_Coverage, 25367, |
| 6345 | /* 15079 */ GIR_EraseRootFromParent_Done, |
| 6346 | /* 15080 */ // Label 472: @15080 |
| 6347 | /* 15080 */ GIM_Try, /*On fail goto*//*Label 473*/ GIMT_Encode4(15169), // Rule ID 19484 // |
| 6348 | /* 15085 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 6349 | /* 15089 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 6350 | /* 15093 */ // (and:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src1, VK1:{ *:[v1i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v1i1] } (KANDWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src2, VK16:{ *:[i32] })), VK1:{ *:[i32] }) |
| 6351 | /* 15093 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 6352 | /* 15096 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6353 | /* 15100 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6354 | /* 15105 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 6355 | /* 15109 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 6356 | /* 15114 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 6357 | /* 15117 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6358 | /* 15121 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6359 | /* 15126 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 6360 | /* 15130 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 6361 | /* 15135 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 6362 | /* 15138 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDWkk), |
| 6363 | /* 15142 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6364 | /* 15147 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6365 | /* 15150 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 6366 | /* 15153 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6367 | /* 15155 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6368 | /* 15158 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6369 | /* 15160 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6370 | /* 15163 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 6371 | /* 15168 */ // GIR_Coverage, 19484, |
| 6372 | /* 15168 */ GIR_EraseRootFromParent_Done, |
| 6373 | /* 15169 */ // Label 473: @15169 |
| 6374 | /* 15169 */ GIM_Reject, |
| 6375 | /* 15170 */ // Label 470: @15170 |
| 6376 | /* 15170 */ GIM_Reject, |
| 6377 | /* 15171 */ // Label 447: @15171 |
| 6378 | /* 15171 */ GIM_Try, /*On fail goto*//*Label 474*/ GIMT_Encode4(15563), |
| 6379 | /* 15176 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 6380 | /* 15179 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 6381 | /* 15182 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6382 | /* 15186 */ GIM_Try, /*On fail goto*//*Label 475*/ GIMT_Encode4(15247), // Rule ID 26069 // |
| 6383 | /* 15191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6384 | /* 15194 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6385 | /* 15198 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6386 | /* 15202 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6387 | /* 15205 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6388 | /* 15209 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 6389 | /* 15213 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6390 | /* 15217 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6391 | /* 15219 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6392 | /* 15226 */ // (and:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, GR8:{ *:[i8] }:$src1) => (AND8rm:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6393 | /* 15226 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8rm), |
| 6394 | /* 15229 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6395 | /* 15231 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6396 | /* 15233 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6397 | /* 15237 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6398 | /* 15240 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6399 | /* 15245 */ GIR_RootConstrainSelectedInstOperands, |
| 6400 | /* 15246 */ // GIR_Coverage, 26069, |
| 6401 | /* 15246 */ GIR_EraseRootFromParent_Done, |
| 6402 | /* 15247 */ // Label 475: @15247 |
| 6403 | /* 15247 */ GIM_Try, /*On fail goto*//*Label 476*/ GIMT_Encode4(15308), // Rule ID 26088 // |
| 6404 | /* 15252 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6405 | /* 15255 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6406 | /* 15259 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6407 | /* 15263 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6408 | /* 15266 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6409 | /* 15270 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 6410 | /* 15274 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6411 | /* 15278 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6412 | /* 15280 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6413 | /* 15287 */ // (and:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, GR8:{ *:[i8] }:$src1) => (AND8rm_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6414 | /* 15287 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8rm_ND), |
| 6415 | /* 15290 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6416 | /* 15292 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6417 | /* 15294 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6418 | /* 15298 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6419 | /* 15301 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6420 | /* 15306 */ GIR_RootConstrainSelectedInstOperands, |
| 6421 | /* 15307 */ // GIR_Coverage, 26088, |
| 6422 | /* 15307 */ GIR_EraseRootFromParent_Done, |
| 6423 | /* 15308 */ // Label 476: @15308 |
| 6424 | /* 15308 */ GIM_Try, /*On fail goto*//*Label 477*/ GIMT_Encode4(15369), // Rule ID 22854 // |
| 6425 | /* 15313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6426 | /* 15316 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6427 | /* 15320 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6428 | /* 15324 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6429 | /* 15328 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6430 | /* 15331 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6431 | /* 15335 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 6432 | /* 15339 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6433 | /* 15341 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6434 | /* 15348 */ // (and:{ *:[i8] } GR8:{ *:[i8] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>) => (AND8rm:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6435 | /* 15348 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8rm), |
| 6436 | /* 15351 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6437 | /* 15353 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6438 | /* 15355 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6439 | /* 15359 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6440 | /* 15362 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6441 | /* 15367 */ GIR_RootConstrainSelectedInstOperands, |
| 6442 | /* 15368 */ // GIR_Coverage, 22854, |
| 6443 | /* 15368 */ GIR_EraseRootFromParent_Done, |
| 6444 | /* 15369 */ // Label 477: @15369 |
| 6445 | /* 15369 */ GIM_Try, /*On fail goto*//*Label 478*/ GIMT_Encode4(15430), // Rule ID 22944 // |
| 6446 | /* 15374 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6447 | /* 15377 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6448 | /* 15381 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6449 | /* 15385 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6450 | /* 15389 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6451 | /* 15392 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6452 | /* 15396 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 6453 | /* 15400 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6454 | /* 15402 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6455 | /* 15409 */ // (and:{ *:[i8] } GR8:{ *:[i8] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>) => (AND8rm_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6456 | /* 15409 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8rm_ND), |
| 6457 | /* 15412 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6458 | /* 15414 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6459 | /* 15416 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6460 | /* 15420 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6461 | /* 15423 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6462 | /* 15428 */ GIR_RootConstrainSelectedInstOperands, |
| 6463 | /* 15429 */ // GIR_Coverage, 22944, |
| 6464 | /* 15429 */ GIR_EraseRootFromParent_Done, |
| 6465 | /* 15430 */ // Label 478: @15430 |
| 6466 | /* 15430 */ GIM_Try, /*On fail goto*//*Label 479*/ GIMT_Encode4(15467), // Rule ID 22858 // |
| 6467 | /* 15435 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6468 | /* 15438 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6469 | /* 15442 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6470 | /* 15446 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 6471 | /* 15450 */ // MIs[1] Operand 1 |
| 6472 | /* 15450 */ // No operand predicates |
| 6473 | /* 15450 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6474 | /* 15452 */ // (and:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (AND8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 6475 | /* 15452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8ri), |
| 6476 | /* 15455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6477 | /* 15457 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6478 | /* 15459 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 6479 | /* 15462 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6480 | /* 15465 */ GIR_RootConstrainSelectedInstOperands, |
| 6481 | /* 15466 */ // GIR_Coverage, 22858, |
| 6482 | /* 15466 */ GIR_EraseRootFromParent_Done, |
| 6483 | /* 15467 */ // Label 479: @15467 |
| 6484 | /* 15467 */ GIM_Try, /*On fail goto*//*Label 480*/ GIMT_Encode4(15504), // Rule ID 22948 // |
| 6485 | /* 15472 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6486 | /* 15475 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6487 | /* 15479 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6488 | /* 15483 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 6489 | /* 15487 */ // MIs[1] Operand 1 |
| 6490 | /* 15487 */ // No operand predicates |
| 6491 | /* 15487 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6492 | /* 15489 */ // (and:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (AND8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 6493 | /* 15489 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8ri_ND), |
| 6494 | /* 15492 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6495 | /* 15494 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6496 | /* 15496 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 6497 | /* 15499 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6498 | /* 15502 */ GIR_RootConstrainSelectedInstOperands, |
| 6499 | /* 15503 */ // GIR_Coverage, 22948, |
| 6500 | /* 15503 */ GIR_EraseRootFromParent_Done, |
| 6501 | /* 15504 */ // Label 480: @15504 |
| 6502 | /* 15504 */ GIM_Try, /*On fail goto*//*Label 481*/ GIMT_Encode4(15533), // Rule ID 22850 // |
| 6503 | /* 15509 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6504 | /* 15512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6505 | /* 15516 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6506 | /* 15520 */ // (and:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (AND8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 6507 | /* 15520 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND8rr), |
| 6508 | /* 15525 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 6509 | /* 15531 */ GIR_RootConstrainSelectedInstOperands, |
| 6510 | /* 15532 */ // GIR_Coverage, 22850, |
| 6511 | /* 15532 */ GIR_Done, |
| 6512 | /* 15533 */ // Label 481: @15533 |
| 6513 | /* 15533 */ GIM_Try, /*On fail goto*//*Label 482*/ GIMT_Encode4(15562), // Rule ID 22940 // |
| 6514 | /* 15538 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6515 | /* 15541 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6516 | /* 15545 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6517 | /* 15549 */ // (and:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (AND8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 6518 | /* 15549 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND8rr_ND), |
| 6519 | /* 15554 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 6520 | /* 15560 */ GIR_RootConstrainSelectedInstOperands, |
| 6521 | /* 15561 */ // GIR_Coverage, 22940, |
| 6522 | /* 15561 */ GIR_Done, |
| 6523 | /* 15562 */ // Label 482: @15562 |
| 6524 | /* 15562 */ GIM_Reject, |
| 6525 | /* 15563 */ // Label 474: @15563 |
| 6526 | /* 15563 */ GIM_Reject, |
| 6527 | /* 15564 */ // Label 448: @15564 |
| 6528 | /* 15564 */ GIM_Try, /*On fail goto*//*Label 483*/ GIMT_Encode4(16248), |
| 6529 | /* 15569 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 6530 | /* 15572 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 6531 | /* 15575 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6532 | /* 15579 */ GIM_Try, /*On fail goto*//*Label 484*/ GIMT_Encode4(15640), // Rule ID 26070 // |
| 6533 | /* 15584 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6534 | /* 15587 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6535 | /* 15591 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6536 | /* 15595 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6537 | /* 15598 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6538 | /* 15602 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 6539 | /* 15606 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6540 | /* 15610 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6541 | /* 15612 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6542 | /* 15619 */ // (and:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, GR16:{ *:[i16] }:$src1) => (AND16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6543 | /* 15619 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16rm), |
| 6544 | /* 15622 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6545 | /* 15624 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6546 | /* 15626 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6547 | /* 15630 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6548 | /* 15633 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6549 | /* 15638 */ GIR_RootConstrainSelectedInstOperands, |
| 6550 | /* 15639 */ // GIR_Coverage, 26070, |
| 6551 | /* 15639 */ GIR_EraseRootFromParent_Done, |
| 6552 | /* 15640 */ // Label 484: @15640 |
| 6553 | /* 15640 */ GIM_Try, /*On fail goto*//*Label 485*/ GIMT_Encode4(15701), // Rule ID 26089 // |
| 6554 | /* 15645 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6555 | /* 15648 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6556 | /* 15652 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6557 | /* 15656 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6558 | /* 15659 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6559 | /* 15663 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 6560 | /* 15667 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6561 | /* 15671 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6562 | /* 15673 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6563 | /* 15680 */ // (and:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, GR16:{ *:[i16] }:$src1) => (AND16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6564 | /* 15680 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16rm_ND), |
| 6565 | /* 15683 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6566 | /* 15685 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6567 | /* 15687 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6568 | /* 15691 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6569 | /* 15694 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6570 | /* 15699 */ GIR_RootConstrainSelectedInstOperands, |
| 6571 | /* 15700 */ // GIR_Coverage, 26089, |
| 6572 | /* 15700 */ GIR_EraseRootFromParent_Done, |
| 6573 | /* 15701 */ // Label 485: @15701 |
| 6574 | /* 15701 */ GIM_Try, /*On fail goto*//*Label 486*/ GIMT_Encode4(15762), // Rule ID 22855 // |
| 6575 | /* 15706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6576 | /* 15709 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6577 | /* 15713 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6578 | /* 15717 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6579 | /* 15721 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6580 | /* 15724 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6581 | /* 15728 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 6582 | /* 15732 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6583 | /* 15734 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6584 | /* 15741 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (AND16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6585 | /* 15741 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16rm), |
| 6586 | /* 15744 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6587 | /* 15746 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6588 | /* 15748 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6589 | /* 15752 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6590 | /* 15755 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6591 | /* 15760 */ GIR_RootConstrainSelectedInstOperands, |
| 6592 | /* 15761 */ // GIR_Coverage, 22855, |
| 6593 | /* 15761 */ GIR_EraseRootFromParent_Done, |
| 6594 | /* 15762 */ // Label 486: @15762 |
| 6595 | /* 15762 */ GIM_Try, /*On fail goto*//*Label 487*/ GIMT_Encode4(15823), // Rule ID 22945 // |
| 6596 | /* 15767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6597 | /* 15770 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6598 | /* 15774 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6599 | /* 15778 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6600 | /* 15782 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6601 | /* 15785 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6602 | /* 15789 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 6603 | /* 15793 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6604 | /* 15795 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6605 | /* 15802 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (AND16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6606 | /* 15802 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16rm_ND), |
| 6607 | /* 15805 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6608 | /* 15807 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6609 | /* 15809 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6610 | /* 15813 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6611 | /* 15816 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6612 | /* 15821 */ GIR_RootConstrainSelectedInstOperands, |
| 6613 | /* 15822 */ // GIR_Coverage, 22945, |
| 6614 | /* 15822 */ GIR_EraseRootFromParent_Done, |
| 6615 | /* 15823 */ // Label 487: @15823 |
| 6616 | /* 15823 */ GIM_Try, /*On fail goto*//*Label 488*/ GIMT_Encode4(15925), // Rule ID 26036 // |
| 6617 | /* 15828 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6618 | /* 15832 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 6619 | /* 15836 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 6620 | /* 15840 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 6621 | /* 15844 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, uint8_t(-2), |
| 6622 | /* 15848 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6623 | /* 15853 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6624 | /* 15857 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6625 | /* 15859 */ // (and:{ *:[i16] } (rotl:{ *:[i16] } -2:{ *:[i16] }, GR8:{ *:[i8] }:$src2), GR16:{ *:[i16] }:$src1) => (BTR16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (INSERT_SUBREG:{ *:[i16] } (IMPLICIT_DEF:{ *:[i16] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 6626 | /* 15859 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 6627 | /* 15862 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 6628 | /* 15866 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6629 | /* 15871 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 6630 | /* 15873 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 6631 | /* 15876 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 6632 | /* 15880 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6633 | /* 15885 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6634 | /* 15888 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 6635 | /* 15892 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 6636 | /* 15895 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 6637 | /* 15900 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 6638 | /* 15905 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 6639 | /* 15910 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR16rr), |
| 6640 | /* 15913 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6641 | /* 15915 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6642 | /* 15917 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6643 | /* 15920 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6644 | /* 15923 */ GIR_RootConstrainSelectedInstOperands, |
| 6645 | /* 15924 */ // GIR_Coverage, 26036, |
| 6646 | /* 15924 */ GIR_EraseRootFromParent_Done, |
| 6647 | /* 15925 */ // Label 488: @15925 |
| 6648 | /* 15925 */ GIM_Try, /*On fail goto*//*Label 489*/ GIMT_Encode4(16027), // Rule ID 22774 // |
| 6649 | /* 15930 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6650 | /* 15934 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6651 | /* 15938 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 6652 | /* 15942 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 6653 | /* 15946 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 6654 | /* 15950 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, uint8_t(-2), |
| 6655 | /* 15954 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6656 | /* 15959 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6657 | /* 15961 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, (rotl:{ *:[i16] } -2:{ *:[i16] }, GR8:{ *:[i8] }:$src2)) => (BTR16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (INSERT_SUBREG:{ *:[i16] } (IMPLICIT_DEF:{ *:[i16] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 6658 | /* 15961 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 6659 | /* 15964 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 6660 | /* 15968 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6661 | /* 15973 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 6662 | /* 15975 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 6663 | /* 15978 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 6664 | /* 15982 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6665 | /* 15987 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6666 | /* 15990 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 6667 | /* 15994 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 6668 | /* 15997 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 6669 | /* 16002 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 6670 | /* 16007 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 6671 | /* 16012 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR16rr), |
| 6672 | /* 16015 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6673 | /* 16017 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6674 | /* 16019 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6675 | /* 16022 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6676 | /* 16025 */ GIR_RootConstrainSelectedInstOperands, |
| 6677 | /* 16026 */ // GIR_Coverage, 22774, |
| 6678 | /* 16026 */ GIR_EraseRootFromParent_Done, |
| 6679 | /* 16027 */ // Label 489: @16027 |
| 6680 | /* 16027 */ GIM_Try, /*On fail goto*//*Label 490*/ GIMT_Encode4(16115), // Rule ID 22634 // |
| 6681 | /* 16032 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6682 | /* 16036 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(255), |
| 6683 | /* 16047 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, 255:{ *:[i16] }) => (EXTRACT_SUBREG:{ *:[i16] } (MOVZX32rr8:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i8] } GR16:{ *:[i16] }:$src1, sub_8bit:{ *:[i32] })), sub_16bit:{ *:[i32] }) |
| 6684 | /* 16047 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s8, |
| 6685 | /* 16050 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6686 | /* 16054 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6687 | /* 16059 */ GIR_CopySubReg, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src1 |
| 6688 | /* 16065 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 6689 | /* 16070 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 6690 | /* 16075 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6691 | /* 16078 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 6692 | /* 16082 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 6693 | /* 16087 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6694 | /* 16090 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6695 | /* 16092 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6696 | /* 16095 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6697 | /* 16097 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 6698 | /* 16104 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 6699 | /* 16109 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 6700 | /* 16114 */ // GIR_Coverage, 22634, |
| 6701 | /* 16114 */ GIR_EraseRootFromParent_Done, |
| 6702 | /* 16115 */ // Label 490: @16115 |
| 6703 | /* 16115 */ GIM_Try, /*On fail goto*//*Label 491*/ GIMT_Encode4(16152), // Rule ID 22859 // |
| 6704 | /* 16120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6705 | /* 16123 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6706 | /* 16127 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6707 | /* 16131 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 6708 | /* 16135 */ // MIs[1] Operand 1 |
| 6709 | /* 16135 */ // No operand predicates |
| 6710 | /* 16135 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6711 | /* 16137 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (AND16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 6712 | /* 16137 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16ri), |
| 6713 | /* 16140 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6714 | /* 16142 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6715 | /* 16144 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 6716 | /* 16147 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6717 | /* 16150 */ GIR_RootConstrainSelectedInstOperands, |
| 6718 | /* 16151 */ // GIR_Coverage, 22859, |
| 6719 | /* 16151 */ GIR_EraseRootFromParent_Done, |
| 6720 | /* 16152 */ // Label 491: @16152 |
| 6721 | /* 16152 */ GIM_Try, /*On fail goto*//*Label 492*/ GIMT_Encode4(16189), // Rule ID 22949 // |
| 6722 | /* 16157 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6723 | /* 16160 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6724 | /* 16164 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6725 | /* 16168 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 6726 | /* 16172 */ // MIs[1] Operand 1 |
| 6727 | /* 16172 */ // No operand predicates |
| 6728 | /* 16172 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6729 | /* 16174 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (AND16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 6730 | /* 16174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16ri_ND), |
| 6731 | /* 16177 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6732 | /* 16179 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6733 | /* 16181 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 6734 | /* 16184 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6735 | /* 16187 */ GIR_RootConstrainSelectedInstOperands, |
| 6736 | /* 16188 */ // GIR_Coverage, 22949, |
| 6737 | /* 16188 */ GIR_EraseRootFromParent_Done, |
| 6738 | /* 16189 */ // Label 492: @16189 |
| 6739 | /* 16189 */ GIM_Try, /*On fail goto*//*Label 493*/ GIMT_Encode4(16218), // Rule ID 22851 // |
| 6740 | /* 16194 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6741 | /* 16197 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6742 | /* 16201 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6743 | /* 16205 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (AND16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 6744 | /* 16205 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND16rr), |
| 6745 | /* 16210 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 6746 | /* 16216 */ GIR_RootConstrainSelectedInstOperands, |
| 6747 | /* 16217 */ // GIR_Coverage, 22851, |
| 6748 | /* 16217 */ GIR_Done, |
| 6749 | /* 16218 */ // Label 493: @16218 |
| 6750 | /* 16218 */ GIM_Try, /*On fail goto*//*Label 494*/ GIMT_Encode4(16247), // Rule ID 22941 // |
| 6751 | /* 16223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6752 | /* 16226 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6753 | /* 16230 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6754 | /* 16234 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (AND16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 6755 | /* 16234 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND16rr_ND), |
| 6756 | /* 16239 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 6757 | /* 16245 */ GIR_RootConstrainSelectedInstOperands, |
| 6758 | /* 16246 */ // GIR_Coverage, 22941, |
| 6759 | /* 16246 */ GIR_Done, |
| 6760 | /* 16247 */ // Label 494: @16247 |
| 6761 | /* 16247 */ GIM_Reject, |
| 6762 | /* 16248 */ // Label 483: @16248 |
| 6763 | /* 16248 */ GIM_Reject, |
| 6764 | /* 16249 */ // Label 449: @16249 |
| 6765 | /* 16249 */ GIM_Try, /*On fail goto*//*Label 495*/ GIMT_Encode4(18074), |
| 6766 | /* 16254 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 6767 | /* 16257 */ GIM_Try, /*On fail goto*//*Label 496*/ GIMT_Encode4(16349), // Rule ID 17546 // |
| 6768 | /* 16262 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 6769 | /* 16265 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6770 | /* 16268 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6771 | /* 16272 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6772 | /* 16276 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6773 | /* 16280 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6774 | /* 16284 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6775 | /* 16288 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6776 | /* 16293 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 6777 | /* 16297 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6778 | /* 16301 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6779 | /* 16305 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6780 | /* 16308 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 6781 | /* 16312 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6782 | /* 16316 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6783 | /* 16318 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6784 | /* 16325 */ // (and:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] }), (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (ANDN32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6785 | /* 16325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rm), |
| 6786 | /* 16328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6787 | /* 16330 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6788 | /* 16334 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6789 | /* 16338 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6790 | /* 16341 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6791 | /* 16347 */ GIR_RootConstrainSelectedInstOperands, |
| 6792 | /* 16348 */ // GIR_Coverage, 17546, |
| 6793 | /* 16348 */ GIR_EraseRootFromParent_Done, |
| 6794 | /* 16349 */ // Label 496: @16349 |
| 6795 | /* 16349 */ GIM_Try, /*On fail goto*//*Label 497*/ GIMT_Encode4(16441), // Rule ID 17550 // |
| 6796 | /* 16354 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 6797 | /* 16357 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6798 | /* 16360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6799 | /* 16364 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6800 | /* 16368 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6801 | /* 16372 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6802 | /* 16376 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6803 | /* 16380 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6804 | /* 16385 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 6805 | /* 16389 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6806 | /* 16393 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6807 | /* 16397 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6808 | /* 16400 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 6809 | /* 16404 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6810 | /* 16408 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6811 | /* 16410 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6812 | /* 16417 */ // (and:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] }), (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (ANDN32rm_EVEX:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6813 | /* 16417 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rm_EVEX), |
| 6814 | /* 16420 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6815 | /* 16422 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6816 | /* 16426 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6817 | /* 16430 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6818 | /* 16433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6819 | /* 16439 */ GIR_RootConstrainSelectedInstOperands, |
| 6820 | /* 16440 */ // GIR_Coverage, 17550, |
| 6821 | /* 16440 */ GIR_EraseRootFromParent_Done, |
| 6822 | /* 16441 */ // Label 497: @16441 |
| 6823 | /* 16441 */ GIM_Try, /*On fail goto*//*Label 498*/ GIMT_Encode4(16533), // Rule ID 25103 // |
| 6824 | /* 16446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 6825 | /* 16449 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6826 | /* 16452 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6827 | /* 16456 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6828 | /* 16460 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6829 | /* 16464 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6830 | /* 16467 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6831 | /* 16471 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6832 | /* 16475 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6833 | /* 16479 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6834 | /* 16483 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 6835 | /* 16487 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 6836 | /* 16491 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6837 | /* 16496 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 6838 | /* 16500 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6839 | /* 16502 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6840 | /* 16509 */ // (and:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] })) => (ANDN32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6841 | /* 16509 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rm), |
| 6842 | /* 16512 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6843 | /* 16514 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src1 |
| 6844 | /* 16518 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6845 | /* 16522 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6846 | /* 16525 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6847 | /* 16531 */ GIR_RootConstrainSelectedInstOperands, |
| 6848 | /* 16532 */ // GIR_Coverage, 25103, |
| 6849 | /* 16532 */ GIR_EraseRootFromParent_Done, |
| 6850 | /* 16533 */ // Label 498: @16533 |
| 6851 | /* 16533 */ GIM_Try, /*On fail goto*//*Label 499*/ GIMT_Encode4(16625), // Rule ID 25107 // |
| 6852 | /* 16538 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 6853 | /* 16541 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6854 | /* 16544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6855 | /* 16548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6856 | /* 16552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6857 | /* 16556 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6858 | /* 16559 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6859 | /* 16563 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6860 | /* 16567 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6861 | /* 16571 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6862 | /* 16575 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 6863 | /* 16579 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 6864 | /* 16583 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6865 | /* 16588 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 6866 | /* 16592 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6867 | /* 16594 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6868 | /* 16601 */ // (and:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] })) => (ANDN32rm_EVEX:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6869 | /* 16601 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rm_EVEX), |
| 6870 | /* 16604 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6871 | /* 16606 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src1 |
| 6872 | /* 16610 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6873 | /* 16614 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6874 | /* 16617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6875 | /* 16623 */ GIR_RootConstrainSelectedInstOperands, |
| 6876 | /* 16624 */ // GIR_Coverage, 25107, |
| 6877 | /* 16624 */ GIR_EraseRootFromParent_Done, |
| 6878 | /* 16625 */ // Label 499: @16625 |
| 6879 | /* 16625 */ GIM_Try, /*On fail goto*//*Label 500*/ GIMT_Encode4(16693), // Rule ID 26071 // |
| 6880 | /* 16630 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6881 | /* 16633 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6882 | /* 16636 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6883 | /* 16640 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6884 | /* 16644 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6885 | /* 16648 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6886 | /* 16651 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6887 | /* 16655 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6888 | /* 16659 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6889 | /* 16663 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6890 | /* 16665 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6891 | /* 16672 */ // (and:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src1) => (AND32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6892 | /* 16672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32rm), |
| 6893 | /* 16675 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6894 | /* 16677 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6895 | /* 16679 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6896 | /* 16683 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6897 | /* 16686 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6898 | /* 16691 */ GIR_RootConstrainSelectedInstOperands, |
| 6899 | /* 16692 */ // GIR_Coverage, 26071, |
| 6900 | /* 16692 */ GIR_EraseRootFromParent_Done, |
| 6901 | /* 16693 */ // Label 500: @16693 |
| 6902 | /* 16693 */ GIM_Try, /*On fail goto*//*Label 501*/ GIMT_Encode4(16761), // Rule ID 26090 // |
| 6903 | /* 16698 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6904 | /* 16701 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6905 | /* 16704 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6906 | /* 16708 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6907 | /* 16712 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6908 | /* 16716 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6909 | /* 16719 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6910 | /* 16723 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6911 | /* 16727 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6912 | /* 16731 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6913 | /* 16733 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6914 | /* 16740 */ // (and:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src1) => (AND32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6915 | /* 16740 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32rm_ND), |
| 6916 | /* 16743 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6917 | /* 16745 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6918 | /* 16747 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6919 | /* 16751 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6920 | /* 16754 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6921 | /* 16759 */ GIR_RootConstrainSelectedInstOperands, |
| 6922 | /* 16760 */ // GIR_Coverage, 26090, |
| 6923 | /* 16760 */ GIR_EraseRootFromParent_Done, |
| 6924 | /* 16761 */ // Label 501: @16761 |
| 6925 | /* 16761 */ GIM_Try, /*On fail goto*//*Label 502*/ GIMT_Encode4(16829), // Rule ID 22856 // |
| 6926 | /* 16766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6927 | /* 16769 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6928 | /* 16772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6929 | /* 16776 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6930 | /* 16780 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6931 | /* 16784 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6932 | /* 16788 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6933 | /* 16791 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6934 | /* 16795 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6935 | /* 16799 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6936 | /* 16801 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6937 | /* 16808 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (AND32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6938 | /* 16808 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32rm), |
| 6939 | /* 16811 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6940 | /* 16813 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6941 | /* 16815 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6942 | /* 16819 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6943 | /* 16822 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6944 | /* 16827 */ GIR_RootConstrainSelectedInstOperands, |
| 6945 | /* 16828 */ // GIR_Coverage, 22856, |
| 6946 | /* 16828 */ GIR_EraseRootFromParent_Done, |
| 6947 | /* 16829 */ // Label 502: @16829 |
| 6948 | /* 16829 */ GIM_Try, /*On fail goto*//*Label 503*/ GIMT_Encode4(16897), // Rule ID 22946 // |
| 6949 | /* 16834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6950 | /* 16837 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6951 | /* 16840 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6952 | /* 16844 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6953 | /* 16848 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6954 | /* 16852 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6955 | /* 16856 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6956 | /* 16859 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6957 | /* 16863 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6958 | /* 16867 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6959 | /* 16869 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6960 | /* 16876 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (AND32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 6961 | /* 16876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32rm_ND), |
| 6962 | /* 16879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6963 | /* 16881 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6964 | /* 16883 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6965 | /* 16887 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6966 | /* 16890 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6967 | /* 16895 */ GIR_RootConstrainSelectedInstOperands, |
| 6968 | /* 16896 */ // GIR_Coverage, 22946, |
| 6969 | /* 16896 */ GIR_EraseRootFromParent_Done, |
| 6970 | /* 16897 */ // Label 503: @16897 |
| 6971 | /* 16897 */ GIM_Try, /*On fail goto*//*Label 504*/ GIMT_Encode4(16974), // Rule ID 24995 // |
| 6972 | /* 16902 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 6973 | /* 16905 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6974 | /* 16908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6975 | /* 16912 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6976 | /* 16916 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 6977 | /* 16920 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6978 | /* 16924 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6979 | /* 16928 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6980 | /* 16933 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 6981 | /* 16937 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6982 | /* 16941 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6983 | /* 16945 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 6984 | /* 16949 */ // MIs[2] src |
| 6985 | /* 16949 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 6986 | /* 16954 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 6987 | /* 16958 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6988 | /* 16960 */ // (and:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (BLCIC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 6989 | /* 16960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCIC32rr), |
| 6990 | /* 16963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6991 | /* 16965 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 6992 | /* 16969 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6993 | /* 16972 */ GIR_RootConstrainSelectedInstOperands, |
| 6994 | /* 16973 */ // GIR_Coverage, 24995, |
| 6995 | /* 16973 */ GIR_EraseRootFromParent_Done, |
| 6996 | /* 16974 */ // Label 504: @16974 |
| 6997 | /* 16974 */ GIM_Try, /*On fail goto*//*Label 505*/ GIMT_Encode4(17051), // Rule ID 25007 // |
| 6998 | /* 16979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 6999 | /* 16982 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7000 | /* 16985 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7001 | /* 16989 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7002 | /* 16993 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7003 | /* 16997 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 7004 | /* 17001 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7005 | /* 17005 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7006 | /* 17010 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7007 | /* 17014 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7008 | /* 17018 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7009 | /* 17022 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 7010 | /* 17026 */ // MIs[2] src |
| 7011 | /* 17026 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7012 | /* 17031 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 7013 | /* 17035 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7014 | /* 17037 */ // (and:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (TZMSK32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 7015 | /* 17037 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZMSK32rr), |
| 7016 | /* 17040 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7017 | /* 17042 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7018 | /* 17046 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7019 | /* 17049 */ GIR_RootConstrainSelectedInstOperands, |
| 7020 | /* 17050 */ // GIR_Coverage, 25007, |
| 7021 | /* 17050 */ GIR_EraseRootFromParent_Done, |
| 7022 | /* 17051 */ // Label 505: @17051 |
| 7023 | /* 17051 */ GIM_Try, /*On fail goto*//*Label 506*/ GIMT_Encode4(17128), // Rule ID 17356 // |
| 7024 | /* 17056 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7025 | /* 17059 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7026 | /* 17062 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7027 | /* 17066 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7028 | /* 17070 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7029 | /* 17074 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 7030 | /* 17078 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7031 | /* 17082 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7032 | /* 17087 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7033 | /* 17091 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7034 | /* 17095 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7035 | /* 17099 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 7036 | /* 17103 */ // MIs[2] src |
| 7037 | /* 17103 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7038 | /* 17108 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 7039 | /* 17112 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7040 | /* 17114 */ // (and:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] })) => (BLCIC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 7041 | /* 17114 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCIC32rr), |
| 7042 | /* 17117 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7043 | /* 17119 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7044 | /* 17123 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7045 | /* 17126 */ GIR_RootConstrainSelectedInstOperands, |
| 7046 | /* 17127 */ // GIR_Coverage, 17356, |
| 7047 | /* 17127 */ GIR_EraseRootFromParent_Done, |
| 7048 | /* 17128 */ // Label 506: @17128 |
| 7049 | /* 17128 */ GIM_Try, /*On fail goto*//*Label 507*/ GIMT_Encode4(17205), // Rule ID 17368 // |
| 7050 | /* 17133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7051 | /* 17136 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7052 | /* 17139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7053 | /* 17143 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7054 | /* 17147 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7055 | /* 17151 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 7056 | /* 17155 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7057 | /* 17159 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7058 | /* 17164 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7059 | /* 17168 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7060 | /* 17172 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7061 | /* 17176 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 7062 | /* 17180 */ // MIs[2] src |
| 7063 | /* 17180 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7064 | /* 17185 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 7065 | /* 17189 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7066 | /* 17191 */ // (and:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (TZMSK32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 7067 | /* 17191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZMSK32rr), |
| 7068 | /* 17194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7069 | /* 17196 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7070 | /* 17200 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7071 | /* 17203 */ GIR_RootConstrainSelectedInstOperands, |
| 7072 | /* 17204 */ // GIR_Coverage, 17368, |
| 7073 | /* 17204 */ GIR_EraseRootFromParent_Done, |
| 7074 | /* 17205 */ // Label 507: @17205 |
| 7075 | /* 17205 */ GIM_Try, /*On fail goto*//*Label 508*/ GIMT_Encode4(17263), // Rule ID 24989 // |
| 7076 | /* 17210 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7077 | /* 17213 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7078 | /* 17217 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7079 | /* 17221 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7080 | /* 17225 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 7081 | /* 17229 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7082 | /* 17233 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7083 | /* 17238 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 7084 | /* 17242 */ // MIs[0] src |
| 7085 | /* 17242 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7086 | /* 17247 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7087 | /* 17249 */ // (and:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), GR32:{ *:[i32] }:$src) => (BLCFILL32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 7088 | /* 17249 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCFILL32rr), |
| 7089 | /* 17252 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7090 | /* 17254 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7091 | /* 17258 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7092 | /* 17261 */ GIR_RootConstrainSelectedInstOperands, |
| 7093 | /* 17262 */ // GIR_Coverage, 24989, |
| 7094 | /* 17262 */ GIR_EraseRootFromParent_Done, |
| 7095 | /* 17263 */ // Label 508: @17263 |
| 7096 | /* 17263 */ GIM_Try, /*On fail goto*//*Label 509*/ GIMT_Encode4(17372), // Rule ID 26042 // |
| 7097 | /* 17268 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7098 | /* 17271 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7099 | /* 17275 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7100 | /* 17279 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 7101 | /* 17283 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 7102 | /* 17287 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 7103 | /* 17291 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, uint8_t(-2), |
| 7104 | /* 17295 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 7105 | /* 17300 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7106 | /* 17304 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7107 | /* 17306 */ // (and:{ *:[i32] } (rotl:{ *:[i32] } -2:{ *:[i32] }, GR8:{ *:[i8] }:$src2), GR32:{ *:[i32] }:$src1) => (BTR32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 7108 | /* 17306 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 7109 | /* 17309 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 7110 | /* 17313 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7111 | /* 17318 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 7112 | /* 17320 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7113 | /* 17323 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 7114 | /* 17327 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7115 | /* 17332 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7116 | /* 17335 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 7117 | /* 17339 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 7118 | /* 17342 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 7119 | /* 17347 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 7120 | /* 17352 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 7121 | /* 17357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR32rr), |
| 7122 | /* 17360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7123 | /* 17362 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7124 | /* 17364 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7125 | /* 17367 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7126 | /* 17370 */ GIR_RootConstrainSelectedInstOperands, |
| 7127 | /* 17371 */ // GIR_Coverage, 26042, |
| 7128 | /* 17371 */ GIR_EraseRootFromParent_Done, |
| 7129 | /* 17372 */ // Label 509: @17372 |
| 7130 | /* 17372 */ GIM_Try, /*On fail goto*//*Label 510*/ GIMT_Encode4(17426), // Rule ID 17350 // |
| 7131 | /* 17377 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7132 | /* 17380 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7133 | /* 17383 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7134 | /* 17387 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7135 | /* 17391 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7136 | /* 17395 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7137 | /* 17399 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7138 | /* 17403 */ // MIs[1] src |
| 7139 | /* 17403 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 7140 | /* 17408 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 7141 | /* 17412 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7142 | /* 17414 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src, (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] })) => (BLCFILL32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 7143 | /* 17414 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCFILL32rr), |
| 7144 | /* 17417 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7145 | /* 17419 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 7146 | /* 17421 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7147 | /* 17424 */ GIR_RootConstrainSelectedInstOperands, |
| 7148 | /* 17425 */ // GIR_Coverage, 17350, |
| 7149 | /* 17425 */ GIR_EraseRootFromParent_Done, |
| 7150 | /* 17426 */ // Label 510: @17426 |
| 7151 | /* 17426 */ GIM_Try, /*On fail goto*//*Label 511*/ GIMT_Encode4(17535), // Rule ID 22780 // |
| 7152 | /* 17431 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7153 | /* 17434 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7154 | /* 17438 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7155 | /* 17442 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7156 | /* 17446 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 7157 | /* 17450 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 7158 | /* 17454 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 7159 | /* 17458 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, uint8_t(-2), |
| 7160 | /* 17462 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 7161 | /* 17467 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7162 | /* 17469 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, (rotl:{ *:[i32] } -2:{ *:[i32] }, GR8:{ *:[i8] }:$src2)) => (BTR32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 7163 | /* 17469 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 7164 | /* 17472 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 7165 | /* 17476 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7166 | /* 17481 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 7167 | /* 17483 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7168 | /* 17486 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 7169 | /* 17490 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7170 | /* 17495 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7171 | /* 17498 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 7172 | /* 17502 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 7173 | /* 17505 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 7174 | /* 17510 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 7175 | /* 17515 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 7176 | /* 17520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR32rr), |
| 7177 | /* 17523 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7178 | /* 17525 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7179 | /* 17527 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7180 | /* 17530 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7181 | /* 17533 */ GIR_RootConstrainSelectedInstOperands, |
| 7182 | /* 17534 */ // GIR_Coverage, 22780, |
| 7183 | /* 17534 */ GIR_EraseRootFromParent_Done, |
| 7184 | /* 17535 */ // Label 511: @17535 |
| 7185 | /* 17535 */ GIM_Try, /*On fail goto*//*Label 512*/ GIMT_Encode4(17600), // Rule ID 22632 // |
| 7186 | /* 17540 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7187 | /* 17543 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7188 | /* 17547 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7189 | /* 17551 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(65535), |
| 7190 | /* 17562 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, 65535:{ *:[i32] }) => (MOVZX32rr16:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i16] } GR32:{ *:[i32] }:$src1, sub_16bit:{ *:[i32] })) |
| 7191 | /* 17562 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 7192 | /* 17565 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7193 | /* 17569 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7194 | /* 17574 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(4), // src1 |
| 7195 | /* 17580 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 7196 | /* 17585 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 7197 | /* 17590 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr16), |
| 7198 | /* 17593 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7199 | /* 17595 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7200 | /* 17598 */ GIR_RootConstrainSelectedInstOperands, |
| 7201 | /* 17599 */ // GIR_Coverage, 22632, |
| 7202 | /* 17599 */ GIR_EraseRootFromParent_Done, |
| 7203 | /* 17600 */ // Label 512: @17600 |
| 7204 | /* 17600 */ GIM_Try, /*On fail goto*//*Label 513*/ GIMT_Encode4(17665), // Rule ID 22633 // |
| 7205 | /* 17605 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7206 | /* 17608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7207 | /* 17612 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7208 | /* 17616 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(255), |
| 7209 | /* 17627 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, 255:{ *:[i32] }) => (MOVZX32rr8:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i8] } GR32:{ *:[i32] }:$src1, sub_8bit:{ *:[i32] })) |
| 7210 | /* 17627 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s8, |
| 7211 | /* 17630 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7212 | /* 17634 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7213 | /* 17639 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src1 |
| 7214 | /* 17645 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 7215 | /* 17650 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 7216 | /* 17655 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 7217 | /* 17658 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7218 | /* 17660 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7219 | /* 17663 */ GIR_RootConstrainSelectedInstOperands, |
| 7220 | /* 17664 */ // GIR_Coverage, 22633, |
| 7221 | /* 17664 */ GIR_EraseRootFromParent_Done, |
| 7222 | /* 17665 */ // Label 513: @17665 |
| 7223 | /* 17665 */ GIM_Try, /*On fail goto*//*Label 514*/ GIMT_Encode4(17709), // Rule ID 22860 // |
| 7224 | /* 17670 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 7225 | /* 17673 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7226 | /* 17676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7227 | /* 17680 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7228 | /* 17684 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7229 | /* 17688 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 7230 | /* 17692 */ // MIs[1] Operand 1 |
| 7231 | /* 17692 */ // No operand predicates |
| 7232 | /* 17692 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7233 | /* 17694 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (AND32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 7234 | /* 17694 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32ri), |
| 7235 | /* 17697 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7236 | /* 17699 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7237 | /* 17701 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 7238 | /* 17704 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7239 | /* 17707 */ GIR_RootConstrainSelectedInstOperands, |
| 7240 | /* 17708 */ // GIR_Coverage, 22860, |
| 7241 | /* 17708 */ GIR_EraseRootFromParent_Done, |
| 7242 | /* 17709 */ // Label 514: @17709 |
| 7243 | /* 17709 */ GIM_Try, /*On fail goto*//*Label 515*/ GIMT_Encode4(17753), // Rule ID 22950 // |
| 7244 | /* 17714 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 7245 | /* 17717 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7246 | /* 17720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7247 | /* 17724 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7248 | /* 17728 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7249 | /* 17732 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 7250 | /* 17736 */ // MIs[1] Operand 1 |
| 7251 | /* 17736 */ // No operand predicates |
| 7252 | /* 17736 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7253 | /* 17738 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (AND32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 7254 | /* 17738 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32ri_ND), |
| 7255 | /* 17741 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7256 | /* 17743 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7257 | /* 17745 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 7258 | /* 17748 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7259 | /* 17751 */ GIR_RootConstrainSelectedInstOperands, |
| 7260 | /* 17752 */ // GIR_Coverage, 22950, |
| 7261 | /* 17752 */ GIR_EraseRootFromParent_Done, |
| 7262 | /* 17753 */ // Label 515: @17753 |
| 7263 | /* 17753 */ GIM_Try, /*On fail goto*//*Label 516*/ GIMT_Encode4(17815), // Rule ID 17544 // |
| 7264 | /* 17758 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 7265 | /* 17761 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7266 | /* 17764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7267 | /* 17768 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7268 | /* 17772 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7269 | /* 17776 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 7270 | /* 17780 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7271 | /* 17784 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7272 | /* 17789 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7273 | /* 17793 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7274 | /* 17797 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7275 | /* 17799 */ // (and:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] }), GR32:{ *:[i32] }:$src2) => (ANDN32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 7276 | /* 17799 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rr), |
| 7277 | /* 17802 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7278 | /* 17804 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7279 | /* 17808 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 7280 | /* 17810 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7281 | /* 17813 */ GIR_RootConstrainSelectedInstOperands, |
| 7282 | /* 17814 */ // GIR_Coverage, 17544, |
| 7283 | /* 17814 */ GIR_EraseRootFromParent_Done, |
| 7284 | /* 17815 */ // Label 516: @17815 |
| 7285 | /* 17815 */ GIM_Try, /*On fail goto*//*Label 517*/ GIMT_Encode4(17877), // Rule ID 17548 // |
| 7286 | /* 17820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 7287 | /* 17823 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7288 | /* 17826 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7289 | /* 17830 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7290 | /* 17834 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7291 | /* 17838 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 7292 | /* 17842 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7293 | /* 17846 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7294 | /* 17851 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7295 | /* 17855 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7296 | /* 17859 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7297 | /* 17861 */ // (and:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] }), GR32:{ *:[i32] }:$src2) => (ANDN32rr_EVEX:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 7298 | /* 17861 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rr_EVEX), |
| 7299 | /* 17864 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7300 | /* 17866 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7301 | /* 17870 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 7302 | /* 17872 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7303 | /* 17875 */ GIR_RootConstrainSelectedInstOperands, |
| 7304 | /* 17876 */ // GIR_Coverage, 17548, |
| 7305 | /* 17876 */ GIR_EraseRootFromParent_Done, |
| 7306 | /* 17877 */ // Label 517: @17877 |
| 7307 | /* 17877 */ GIM_Try, /*On fail goto*//*Label 518*/ GIMT_Encode4(17939), // Rule ID 25101 // |
| 7308 | /* 17882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 7309 | /* 17885 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7310 | /* 17888 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7311 | /* 17892 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7312 | /* 17896 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7313 | /* 17900 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7314 | /* 17904 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 7315 | /* 17908 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7316 | /* 17912 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7317 | /* 17917 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7318 | /* 17921 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7319 | /* 17923 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src2, (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] })) => (ANDN32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 7320 | /* 17923 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rr), |
| 7321 | /* 17926 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7322 | /* 17928 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7323 | /* 17932 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 7324 | /* 17934 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7325 | /* 17937 */ GIR_RootConstrainSelectedInstOperands, |
| 7326 | /* 17938 */ // GIR_Coverage, 25101, |
| 7327 | /* 17938 */ GIR_EraseRootFromParent_Done, |
| 7328 | /* 17939 */ // Label 518: @17939 |
| 7329 | /* 17939 */ GIM_Try, /*On fail goto*//*Label 519*/ GIMT_Encode4(18001), // Rule ID 25105 // |
| 7330 | /* 17944 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 7331 | /* 17947 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7332 | /* 17950 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7333 | /* 17954 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7334 | /* 17958 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7335 | /* 17962 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7336 | /* 17966 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 7337 | /* 17970 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7338 | /* 17974 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7339 | /* 17979 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7340 | /* 17983 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7341 | /* 17985 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src2, (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] })) => (ANDN32rr_EVEX:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 7342 | /* 17985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rr_EVEX), |
| 7343 | /* 17988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7344 | /* 17990 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7345 | /* 17994 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 7346 | /* 17996 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7347 | /* 17999 */ GIR_RootConstrainSelectedInstOperands, |
| 7348 | /* 18000 */ // GIR_Coverage, 25105, |
| 7349 | /* 18000 */ GIR_EraseRootFromParent_Done, |
| 7350 | /* 18001 */ // Label 519: @18001 |
| 7351 | /* 18001 */ GIM_Try, /*On fail goto*//*Label 520*/ GIMT_Encode4(18037), // Rule ID 22852 // |
| 7352 | /* 18006 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 7353 | /* 18009 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7354 | /* 18012 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7355 | /* 18016 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7356 | /* 18020 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7357 | /* 18024 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (AND32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 7358 | /* 18024 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND32rr), |
| 7359 | /* 18029 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 7360 | /* 18035 */ GIR_RootConstrainSelectedInstOperands, |
| 7361 | /* 18036 */ // GIR_Coverage, 22852, |
| 7362 | /* 18036 */ GIR_Done, |
| 7363 | /* 18037 */ // Label 520: @18037 |
| 7364 | /* 18037 */ GIM_Try, /*On fail goto*//*Label 521*/ GIMT_Encode4(18073), // Rule ID 22942 // |
| 7365 | /* 18042 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 7366 | /* 18045 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7367 | /* 18048 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7368 | /* 18052 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7369 | /* 18056 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 7370 | /* 18060 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (AND32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 7371 | /* 18060 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND32rr_ND), |
| 7372 | /* 18065 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 7373 | /* 18071 */ GIR_RootConstrainSelectedInstOperands, |
| 7374 | /* 18072 */ // GIR_Coverage, 22942, |
| 7375 | /* 18072 */ GIR_Done, |
| 7376 | /* 18073 */ // Label 521: @18073 |
| 7377 | /* 18073 */ GIM_Reject, |
| 7378 | /* 18074 */ // Label 495: @18074 |
| 7379 | /* 18074 */ GIM_Reject, |
| 7380 | /* 18075 */ // Label 450: @18075 |
| 7381 | /* 18075 */ GIM_Try, /*On fail goto*//*Label 522*/ GIMT_Encode4(19778), |
| 7382 | /* 18080 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 7383 | /* 18083 */ GIM_Try, /*On fail goto*//*Label 523*/ GIMT_Encode4(18175), // Rule ID 17547 // |
| 7384 | /* 18088 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 7385 | /* 18091 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7386 | /* 18094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7387 | /* 18098 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7388 | /* 18102 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7389 | /* 18106 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7390 | /* 18110 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7391 | /* 18114 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7392 | /* 18119 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7393 | /* 18123 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7394 | /* 18127 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7395 | /* 18131 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7396 | /* 18134 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 7397 | /* 18138 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 7398 | /* 18142 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7399 | /* 18144 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7400 | /* 18151 */ // (and:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] }), (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ANDN64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7401 | /* 18151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rm), |
| 7402 | /* 18154 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7403 | /* 18156 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7404 | /* 18160 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7405 | /* 18164 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7406 | /* 18167 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 7407 | /* 18173 */ GIR_RootConstrainSelectedInstOperands, |
| 7408 | /* 18174 */ // GIR_Coverage, 17547, |
| 7409 | /* 18174 */ GIR_EraseRootFromParent_Done, |
| 7410 | /* 18175 */ // Label 523: @18175 |
| 7411 | /* 18175 */ GIM_Try, /*On fail goto*//*Label 524*/ GIMT_Encode4(18267), // Rule ID 17551 // |
| 7412 | /* 18180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 7413 | /* 18183 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7414 | /* 18186 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7415 | /* 18190 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7416 | /* 18194 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7417 | /* 18198 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7418 | /* 18202 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7419 | /* 18206 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7420 | /* 18211 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7421 | /* 18215 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7422 | /* 18219 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7423 | /* 18223 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7424 | /* 18226 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 7425 | /* 18230 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 7426 | /* 18234 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7427 | /* 18236 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7428 | /* 18243 */ // (and:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] }), (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ANDN64rm_EVEX:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7429 | /* 18243 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rm_EVEX), |
| 7430 | /* 18246 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7431 | /* 18248 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7432 | /* 18252 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7433 | /* 18256 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7434 | /* 18259 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 7435 | /* 18265 */ GIR_RootConstrainSelectedInstOperands, |
| 7436 | /* 18266 */ // GIR_Coverage, 17551, |
| 7437 | /* 18266 */ GIR_EraseRootFromParent_Done, |
| 7438 | /* 18267 */ // Label 524: @18267 |
| 7439 | /* 18267 */ GIM_Try, /*On fail goto*//*Label 525*/ GIMT_Encode4(18359), // Rule ID 25104 // |
| 7440 | /* 18272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 7441 | /* 18275 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7442 | /* 18278 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7443 | /* 18282 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7444 | /* 18286 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7445 | /* 18290 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7446 | /* 18293 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7447 | /* 18297 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7448 | /* 18301 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7449 | /* 18305 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7450 | /* 18309 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 7451 | /* 18313 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 7452 | /* 18317 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7453 | /* 18322 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 7454 | /* 18326 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7455 | /* 18328 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7456 | /* 18335 */ // (and:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] })) => (ANDN64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7457 | /* 18335 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rm), |
| 7458 | /* 18338 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7459 | /* 18340 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src1 |
| 7460 | /* 18344 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7461 | /* 18348 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7462 | /* 18351 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 7463 | /* 18357 */ GIR_RootConstrainSelectedInstOperands, |
| 7464 | /* 18358 */ // GIR_Coverage, 25104, |
| 7465 | /* 18358 */ GIR_EraseRootFromParent_Done, |
| 7466 | /* 18359 */ // Label 525: @18359 |
| 7467 | /* 18359 */ GIM_Try, /*On fail goto*//*Label 526*/ GIMT_Encode4(18451), // Rule ID 25108 // |
| 7468 | /* 18364 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 7469 | /* 18367 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7470 | /* 18370 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7471 | /* 18374 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7472 | /* 18378 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7473 | /* 18382 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7474 | /* 18385 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7475 | /* 18389 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7476 | /* 18393 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7477 | /* 18397 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7478 | /* 18401 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 7479 | /* 18405 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 7480 | /* 18409 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7481 | /* 18414 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 7482 | /* 18418 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7483 | /* 18420 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7484 | /* 18427 */ // (and:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] })) => (ANDN64rm_EVEX:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7485 | /* 18427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rm_EVEX), |
| 7486 | /* 18430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7487 | /* 18432 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src1 |
| 7488 | /* 18436 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7489 | /* 18440 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7490 | /* 18443 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 7491 | /* 18449 */ GIR_RootConstrainSelectedInstOperands, |
| 7492 | /* 18450 */ // GIR_Coverage, 25108, |
| 7493 | /* 18450 */ GIR_EraseRootFromParent_Done, |
| 7494 | /* 18451 */ // Label 526: @18451 |
| 7495 | /* 18451 */ GIM_Try, /*On fail goto*//*Label 527*/ GIMT_Encode4(18519), // Rule ID 26072 // |
| 7496 | /* 18456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 7497 | /* 18459 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7498 | /* 18462 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7499 | /* 18466 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7500 | /* 18470 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7501 | /* 18474 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7502 | /* 18477 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7503 | /* 18481 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7504 | /* 18485 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7505 | /* 18489 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7506 | /* 18491 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7507 | /* 18498 */ // (and:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src1) => (AND64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7508 | /* 18498 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64rm), |
| 7509 | /* 18501 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7510 | /* 18503 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7511 | /* 18505 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7512 | /* 18509 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7513 | /* 18512 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7514 | /* 18517 */ GIR_RootConstrainSelectedInstOperands, |
| 7515 | /* 18518 */ // GIR_Coverage, 26072, |
| 7516 | /* 18518 */ GIR_EraseRootFromParent_Done, |
| 7517 | /* 18519 */ // Label 527: @18519 |
| 7518 | /* 18519 */ GIM_Try, /*On fail goto*//*Label 528*/ GIMT_Encode4(18587), // Rule ID 26091 // |
| 7519 | /* 18524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 7520 | /* 18527 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7521 | /* 18530 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7522 | /* 18534 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7523 | /* 18538 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7524 | /* 18542 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7525 | /* 18545 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7526 | /* 18549 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7527 | /* 18553 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7528 | /* 18557 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7529 | /* 18559 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7530 | /* 18566 */ // (and:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src1) => (AND64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7531 | /* 18566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64rm_ND), |
| 7532 | /* 18569 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7533 | /* 18571 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7534 | /* 18573 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7535 | /* 18577 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7536 | /* 18580 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7537 | /* 18585 */ GIR_RootConstrainSelectedInstOperands, |
| 7538 | /* 18586 */ // GIR_Coverage, 26091, |
| 7539 | /* 18586 */ GIR_EraseRootFromParent_Done, |
| 7540 | /* 18587 */ // Label 528: @18587 |
| 7541 | /* 18587 */ GIM_Try, /*On fail goto*//*Label 529*/ GIMT_Encode4(18655), // Rule ID 22857 // |
| 7542 | /* 18592 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 7543 | /* 18595 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7544 | /* 18598 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7545 | /* 18602 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7546 | /* 18606 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7547 | /* 18610 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7548 | /* 18614 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7549 | /* 18617 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7550 | /* 18621 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7551 | /* 18625 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7552 | /* 18627 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7553 | /* 18634 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (AND64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7554 | /* 18634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64rm), |
| 7555 | /* 18637 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7556 | /* 18639 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7557 | /* 18641 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7558 | /* 18645 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7559 | /* 18648 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7560 | /* 18653 */ GIR_RootConstrainSelectedInstOperands, |
| 7561 | /* 18654 */ // GIR_Coverage, 22857, |
| 7562 | /* 18654 */ GIR_EraseRootFromParent_Done, |
| 7563 | /* 18655 */ // Label 529: @18655 |
| 7564 | /* 18655 */ GIM_Try, /*On fail goto*//*Label 530*/ GIMT_Encode4(18723), // Rule ID 22947 // |
| 7565 | /* 18660 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 7566 | /* 18663 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7567 | /* 18666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7568 | /* 18670 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7569 | /* 18674 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7570 | /* 18678 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7571 | /* 18682 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7572 | /* 18685 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7573 | /* 18689 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7574 | /* 18693 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7575 | /* 18695 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7576 | /* 18702 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (AND64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7577 | /* 18702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64rm_ND), |
| 7578 | /* 18705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7579 | /* 18707 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7580 | /* 18709 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7581 | /* 18713 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7582 | /* 18716 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7583 | /* 18721 */ GIR_RootConstrainSelectedInstOperands, |
| 7584 | /* 18722 */ // GIR_Coverage, 22947, |
| 7585 | /* 18722 */ GIR_EraseRootFromParent_Done, |
| 7586 | /* 18723 */ // Label 530: @18723 |
| 7587 | /* 18723 */ GIM_Try, /*On fail goto*//*Label 531*/ GIMT_Encode4(18800), // Rule ID 24996 // |
| 7588 | /* 18728 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7589 | /* 18731 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7590 | /* 18734 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7591 | /* 18738 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7592 | /* 18742 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7593 | /* 18746 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7594 | /* 18750 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7595 | /* 18754 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7596 | /* 18759 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 7597 | /* 18763 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7598 | /* 18767 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7599 | /* 18771 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 7600 | /* 18775 */ // MIs[2] src |
| 7601 | /* 18775 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7602 | /* 18780 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 7603 | /* 18784 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7604 | /* 18786 */ // (and:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (BLCIC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7605 | /* 18786 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCIC64rr), |
| 7606 | /* 18789 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7607 | /* 18791 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7608 | /* 18795 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7609 | /* 18798 */ GIR_RootConstrainSelectedInstOperands, |
| 7610 | /* 18799 */ // GIR_Coverage, 24996, |
| 7611 | /* 18799 */ GIR_EraseRootFromParent_Done, |
| 7612 | /* 18800 */ // Label 531: @18800 |
| 7613 | /* 18800 */ GIM_Try, /*On fail goto*//*Label 532*/ GIMT_Encode4(18877), // Rule ID 25008 // |
| 7614 | /* 18805 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7615 | /* 18808 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7616 | /* 18811 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7617 | /* 18815 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7618 | /* 18819 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7619 | /* 18823 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7620 | /* 18827 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7621 | /* 18831 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7622 | /* 18836 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7623 | /* 18840 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7624 | /* 18844 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7625 | /* 18848 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 7626 | /* 18852 */ // MIs[2] src |
| 7627 | /* 18852 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7628 | /* 18857 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 7629 | /* 18861 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7630 | /* 18863 */ // (and:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (TZMSK64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7631 | /* 18863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZMSK64rr), |
| 7632 | /* 18866 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7633 | /* 18868 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7634 | /* 18872 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7635 | /* 18875 */ GIR_RootConstrainSelectedInstOperands, |
| 7636 | /* 18876 */ // GIR_Coverage, 25008, |
| 7637 | /* 18876 */ GIR_EraseRootFromParent_Done, |
| 7638 | /* 18877 */ // Label 532: @18877 |
| 7639 | /* 18877 */ GIM_Try, /*On fail goto*//*Label 533*/ GIMT_Encode4(18954), // Rule ID 17357 // |
| 7640 | /* 18882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7641 | /* 18885 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7642 | /* 18888 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7643 | /* 18892 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7644 | /* 18896 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7645 | /* 18900 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7646 | /* 18904 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7647 | /* 18908 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7648 | /* 18913 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7649 | /* 18917 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7650 | /* 18921 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7651 | /* 18925 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 7652 | /* 18929 */ // MIs[2] src |
| 7653 | /* 18929 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7654 | /* 18934 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 7655 | /* 18938 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7656 | /* 18940 */ // (and:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] })) => (BLCIC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7657 | /* 18940 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCIC64rr), |
| 7658 | /* 18943 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7659 | /* 18945 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7660 | /* 18949 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7661 | /* 18952 */ GIR_RootConstrainSelectedInstOperands, |
| 7662 | /* 18953 */ // GIR_Coverage, 17357, |
| 7663 | /* 18953 */ GIR_EraseRootFromParent_Done, |
| 7664 | /* 18954 */ // Label 533: @18954 |
| 7665 | /* 18954 */ GIM_Try, /*On fail goto*//*Label 534*/ GIMT_Encode4(19031), // Rule ID 17369 // |
| 7666 | /* 18959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7667 | /* 18962 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7668 | /* 18965 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7669 | /* 18969 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7670 | /* 18973 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7671 | /* 18977 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7672 | /* 18981 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7673 | /* 18985 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7674 | /* 18990 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7675 | /* 18994 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7676 | /* 18998 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7677 | /* 19002 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 7678 | /* 19006 */ // MIs[2] src |
| 7679 | /* 19006 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7680 | /* 19011 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 7681 | /* 19015 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7682 | /* 19017 */ // (and:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (TZMSK64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7683 | /* 19017 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZMSK64rr), |
| 7684 | /* 19020 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7685 | /* 19022 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7686 | /* 19026 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7687 | /* 19029 */ GIR_RootConstrainSelectedInstOperands, |
| 7688 | /* 19030 */ // GIR_Coverage, 17369, |
| 7689 | /* 19030 */ GIR_EraseRootFromParent_Done, |
| 7690 | /* 19031 */ // Label 534: @19031 |
| 7691 | /* 19031 */ GIM_Try, /*On fail goto*//*Label 535*/ GIMT_Encode4(19089), // Rule ID 24990 // |
| 7692 | /* 19036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7693 | /* 19039 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7694 | /* 19043 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7695 | /* 19047 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7696 | /* 19051 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7697 | /* 19055 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7698 | /* 19059 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7699 | /* 19064 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 7700 | /* 19068 */ // MIs[0] src |
| 7701 | /* 19068 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7702 | /* 19073 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7703 | /* 19075 */ // (and:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), GR64:{ *:[i64] }:$src) => (BLCFILL64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7704 | /* 19075 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCFILL64rr), |
| 7705 | /* 19078 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7706 | /* 19080 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7707 | /* 19084 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7708 | /* 19087 */ GIR_RootConstrainSelectedInstOperands, |
| 7709 | /* 19088 */ // GIR_Coverage, 24990, |
| 7710 | /* 19088 */ GIR_EraseRootFromParent_Done, |
| 7711 | /* 19089 */ // Label 535: @19089 |
| 7712 | /* 19089 */ GIM_Try, /*On fail goto*//*Label 536*/ GIMT_Encode4(19198), // Rule ID 26048 // |
| 7713 | /* 19094 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7714 | /* 19097 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7715 | /* 19101 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7716 | /* 19105 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 7717 | /* 19109 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7718 | /* 19113 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 7719 | /* 19117 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, uint8_t(-2), |
| 7720 | /* 19121 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 7721 | /* 19126 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7722 | /* 19130 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7723 | /* 19132 */ // (and:{ *:[i64] } (rotl:{ *:[i64] } -2:{ *:[i64] }, GR8:{ *:[i8] }:$src2), GR64:{ *:[i64] }:$src1) => (BTR64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 7724 | /* 19132 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 7725 | /* 19135 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 7726 | /* 19139 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7727 | /* 19144 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 7728 | /* 19146 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 7729 | /* 19149 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 7730 | /* 19153 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7731 | /* 19158 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7732 | /* 19161 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 7733 | /* 19165 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 7734 | /* 19168 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 7735 | /* 19173 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 7736 | /* 19178 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 7737 | /* 19183 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR64rr), |
| 7738 | /* 19186 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7739 | /* 19188 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7740 | /* 19190 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7741 | /* 19193 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7742 | /* 19196 */ GIR_RootConstrainSelectedInstOperands, |
| 7743 | /* 19197 */ // GIR_Coverage, 26048, |
| 7744 | /* 19197 */ GIR_EraseRootFromParent_Done, |
| 7745 | /* 19198 */ // Label 536: @19198 |
| 7746 | /* 19198 */ GIM_Try, /*On fail goto*//*Label 537*/ GIMT_Encode4(19252), // Rule ID 17351 // |
| 7747 | /* 19203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7748 | /* 19206 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7749 | /* 19209 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7750 | /* 19213 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7751 | /* 19217 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7752 | /* 19221 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7753 | /* 19225 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7754 | /* 19229 */ // MIs[1] src |
| 7755 | /* 19229 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 7756 | /* 19234 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 7757 | /* 19238 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7758 | /* 19240 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src, (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] })) => (BLCFILL64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7759 | /* 19240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCFILL64rr), |
| 7760 | /* 19243 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7761 | /* 19245 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 7762 | /* 19247 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7763 | /* 19250 */ GIR_RootConstrainSelectedInstOperands, |
| 7764 | /* 19251 */ // GIR_Coverage, 17351, |
| 7765 | /* 19251 */ GIR_EraseRootFromParent_Done, |
| 7766 | /* 19252 */ // Label 537: @19252 |
| 7767 | /* 19252 */ GIM_Try, /*On fail goto*//*Label 538*/ GIMT_Encode4(19361), // Rule ID 22786 // |
| 7768 | /* 19257 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7769 | /* 19260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7770 | /* 19264 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7771 | /* 19268 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7772 | /* 19272 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 7773 | /* 19276 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7774 | /* 19280 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 7775 | /* 19284 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, uint8_t(-2), |
| 7776 | /* 19288 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 7777 | /* 19293 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7778 | /* 19295 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, (rotl:{ *:[i64] } -2:{ *:[i64] }, GR8:{ *:[i8] }:$src2)) => (BTR64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 7779 | /* 19295 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 7780 | /* 19298 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 7781 | /* 19302 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7782 | /* 19307 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 7783 | /* 19309 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 7784 | /* 19312 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 7785 | /* 19316 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7786 | /* 19321 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7787 | /* 19324 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 7788 | /* 19328 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 7789 | /* 19331 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 7790 | /* 19336 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 7791 | /* 19341 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 7792 | /* 19346 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR64rr), |
| 7793 | /* 19349 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7794 | /* 19351 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7795 | /* 19353 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7796 | /* 19356 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7797 | /* 19359 */ GIR_RootConstrainSelectedInstOperands, |
| 7798 | /* 19360 */ // GIR_Coverage, 22786, |
| 7799 | /* 19360 */ GIR_EraseRootFromParent_Done, |
| 7800 | /* 19361 */ // Label 538: @19361 |
| 7801 | /* 19361 */ GIM_Try, /*On fail goto*//*Label 539*/ GIMT_Encode4(19409), // Rule ID 22861 // |
| 7802 | /* 19366 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 7803 | /* 19369 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7804 | /* 19372 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7805 | /* 19376 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7806 | /* 19380 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7807 | /* 19384 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 7808 | /* 19388 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 7809 | /* 19392 */ // MIs[1] Operand 1 |
| 7810 | /* 19392 */ // No operand predicates |
| 7811 | /* 19392 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7812 | /* 19394 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (AND64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 7813 | /* 19394 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64ri32), |
| 7814 | /* 19397 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7815 | /* 19399 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7816 | /* 19401 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 7817 | /* 19404 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7818 | /* 19407 */ GIR_RootConstrainSelectedInstOperands, |
| 7819 | /* 19408 */ // GIR_Coverage, 22861, |
| 7820 | /* 19408 */ GIR_EraseRootFromParent_Done, |
| 7821 | /* 19409 */ // Label 539: @19409 |
| 7822 | /* 19409 */ GIM_Try, /*On fail goto*//*Label 540*/ GIMT_Encode4(19457), // Rule ID 22951 // |
| 7823 | /* 19414 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 7824 | /* 19417 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7825 | /* 19420 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7826 | /* 19424 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7827 | /* 19428 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7828 | /* 19432 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 7829 | /* 19436 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 7830 | /* 19440 */ // MIs[1] Operand 1 |
| 7831 | /* 19440 */ // No operand predicates |
| 7832 | /* 19440 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7833 | /* 19442 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (AND64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 7834 | /* 19442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64ri32_ND), |
| 7835 | /* 19445 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7836 | /* 19447 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7837 | /* 19449 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 7838 | /* 19452 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7839 | /* 19455 */ GIR_RootConstrainSelectedInstOperands, |
| 7840 | /* 19456 */ // GIR_Coverage, 22951, |
| 7841 | /* 19456 */ GIR_EraseRootFromParent_Done, |
| 7842 | /* 19457 */ // Label 540: @19457 |
| 7843 | /* 19457 */ GIM_Try, /*On fail goto*//*Label 541*/ GIMT_Encode4(19519), // Rule ID 17545 // |
| 7844 | /* 19462 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 7845 | /* 19465 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7846 | /* 19468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7847 | /* 19472 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7848 | /* 19476 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7849 | /* 19480 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7850 | /* 19484 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7851 | /* 19488 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7852 | /* 19493 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7853 | /* 19497 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7854 | /* 19501 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7855 | /* 19503 */ // (and:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] }), GR64:{ *:[i64] }:$src2) => (ANDN64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7856 | /* 19503 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rr), |
| 7857 | /* 19506 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7858 | /* 19508 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7859 | /* 19512 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 7860 | /* 19514 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7861 | /* 19517 */ GIR_RootConstrainSelectedInstOperands, |
| 7862 | /* 19518 */ // GIR_Coverage, 17545, |
| 7863 | /* 19518 */ GIR_EraseRootFromParent_Done, |
| 7864 | /* 19519 */ // Label 541: @19519 |
| 7865 | /* 19519 */ GIM_Try, /*On fail goto*//*Label 542*/ GIMT_Encode4(19581), // Rule ID 17549 // |
| 7866 | /* 19524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 7867 | /* 19527 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7868 | /* 19530 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7869 | /* 19534 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7870 | /* 19538 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7871 | /* 19542 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7872 | /* 19546 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7873 | /* 19550 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7874 | /* 19555 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7875 | /* 19559 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7876 | /* 19563 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7877 | /* 19565 */ // (and:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] }), GR64:{ *:[i64] }:$src2) => (ANDN64rr_EVEX:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7878 | /* 19565 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rr_EVEX), |
| 7879 | /* 19568 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7880 | /* 19570 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7881 | /* 19574 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 7882 | /* 19576 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7883 | /* 19579 */ GIR_RootConstrainSelectedInstOperands, |
| 7884 | /* 19580 */ // GIR_Coverage, 17549, |
| 7885 | /* 19580 */ GIR_EraseRootFromParent_Done, |
| 7886 | /* 19581 */ // Label 542: @19581 |
| 7887 | /* 19581 */ GIM_Try, /*On fail goto*//*Label 543*/ GIMT_Encode4(19643), // Rule ID 25102 // |
| 7888 | /* 19586 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 7889 | /* 19589 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7890 | /* 19592 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7891 | /* 19596 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7892 | /* 19600 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7893 | /* 19604 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7894 | /* 19608 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7895 | /* 19612 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7896 | /* 19616 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7897 | /* 19621 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7898 | /* 19625 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7899 | /* 19627 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src2, (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] })) => (ANDN64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7900 | /* 19627 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rr), |
| 7901 | /* 19630 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7902 | /* 19632 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7903 | /* 19636 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 7904 | /* 19638 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7905 | /* 19641 */ GIR_RootConstrainSelectedInstOperands, |
| 7906 | /* 19642 */ // GIR_Coverage, 25102, |
| 7907 | /* 19642 */ GIR_EraseRootFromParent_Done, |
| 7908 | /* 19643 */ // Label 543: @19643 |
| 7909 | /* 19643 */ GIM_Try, /*On fail goto*//*Label 544*/ GIMT_Encode4(19705), // Rule ID 25106 // |
| 7910 | /* 19648 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 7911 | /* 19651 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7912 | /* 19654 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7913 | /* 19658 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7914 | /* 19662 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7915 | /* 19666 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7916 | /* 19670 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7917 | /* 19674 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7918 | /* 19678 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7919 | /* 19683 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 7920 | /* 19687 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7921 | /* 19689 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src2, (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] })) => (ANDN64rr_EVEX:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7922 | /* 19689 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rr_EVEX), |
| 7923 | /* 19692 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7924 | /* 19694 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7925 | /* 19698 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 7926 | /* 19700 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7927 | /* 19703 */ GIR_RootConstrainSelectedInstOperands, |
| 7928 | /* 19704 */ // GIR_Coverage, 25106, |
| 7929 | /* 19704 */ GIR_EraseRootFromParent_Done, |
| 7930 | /* 19705 */ // Label 544: @19705 |
| 7931 | /* 19705 */ GIM_Try, /*On fail goto*//*Label 545*/ GIMT_Encode4(19741), // Rule ID 22853 // |
| 7932 | /* 19710 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 7933 | /* 19713 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7934 | /* 19716 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7935 | /* 19720 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7936 | /* 19724 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7937 | /* 19728 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (AND64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7938 | /* 19728 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND64rr), |
| 7939 | /* 19733 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 7940 | /* 19739 */ GIR_RootConstrainSelectedInstOperands, |
| 7941 | /* 19740 */ // GIR_Coverage, 22853, |
| 7942 | /* 19740 */ GIR_Done, |
| 7943 | /* 19741 */ // Label 545: @19741 |
| 7944 | /* 19741 */ GIM_Try, /*On fail goto*//*Label 546*/ GIMT_Encode4(19777), // Rule ID 22943 // |
| 7945 | /* 19746 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 7946 | /* 19749 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7947 | /* 19752 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7948 | /* 19756 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7949 | /* 19760 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7950 | /* 19764 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (AND64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7951 | /* 19764 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND64rr_ND), |
| 7952 | /* 19769 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 7953 | /* 19775 */ GIR_RootConstrainSelectedInstOperands, |
| 7954 | /* 19776 */ // GIR_Coverage, 22943, |
| 7955 | /* 19776 */ GIR_Done, |
| 7956 | /* 19777 */ // Label 546: @19777 |
| 7957 | /* 19777 */ GIM_Reject, |
| 7958 | /* 19778 */ // Label 522: @19778 |
| 7959 | /* 19778 */ GIM_Reject, |
| 7960 | /* 19779 */ // Label 451: @19779 |
| 7961 | /* 19779 */ GIM_Try, /*On fail goto*//*Label 547*/ GIMT_Encode4(20124), |
| 7962 | /* 19784 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 7963 | /* 19787 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s1, |
| 7964 | /* 19790 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 7965 | /* 19794 */ GIM_Try, /*On fail goto*//*Label 548*/ GIMT_Encode4(19914), // Rule ID 19489 // |
| 7966 | /* 19799 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7967 | /* 19803 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7968 | /* 19807 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s1, |
| 7969 | /* 19811 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s1, |
| 7970 | /* 19815 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 7971 | /* 19820 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 7972 | /* 19824 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 7973 | /* 19830 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 7974 | /* 19832 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 7975 | /* 19836 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7976 | /* 19838 */ // (and:{ *:[v2i1] } (xor:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src1, immAllOnesV:{ *:[v2i1] }), VK2:{ *:[v2i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v2i1] } (KANDNWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src2, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 7977 | /* 19838 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 7978 | /* 19841 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7979 | /* 19845 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7980 | /* 19850 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 7981 | /* 19854 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7982 | /* 19859 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 7983 | /* 19862 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7984 | /* 19866 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7985 | /* 19871 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7986 | /* 19875 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7987 | /* 19880 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 7988 | /* 19883 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 7989 | /* 19887 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 7990 | /* 19892 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7991 | /* 19895 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 7992 | /* 19898 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7993 | /* 19900 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7994 | /* 19903 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7995 | /* 19905 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7996 | /* 19908 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 7997 | /* 19913 */ // GIR_Coverage, 19489, |
| 7998 | /* 19913 */ GIR_EraseRootFromParent_Done, |
| 7999 | /* 19914 */ // Label 548: @19914 |
| 8000 | /* 19914 */ GIM_Try, /*On fail goto*//*Label 549*/ GIMT_Encode4(20034), // Rule ID 25368 // |
| 8001 | /* 19919 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 8002 | /* 19923 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8003 | /* 19927 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8004 | /* 19931 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s1, |
| 8005 | /* 19935 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s1, |
| 8006 | /* 19939 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 8007 | /* 19944 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8008 | /* 19948 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8009 | /* 19954 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8010 | /* 19956 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8011 | /* 19958 */ // (and:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src2, (xor:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src1, immAllOnesV:{ *:[v2i1] })) => (COPY_TO_REGCLASS:{ *:[v2i1] } (KANDNWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src2, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 8012 | /* 19958 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8013 | /* 19961 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8014 | /* 19965 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8015 | /* 19970 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 8016 | /* 19974 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8017 | /* 19979 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8018 | /* 19982 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8019 | /* 19986 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8020 | /* 19991 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8021 | /* 19995 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8022 | /* 20000 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8023 | /* 20003 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 8024 | /* 20007 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8025 | /* 20012 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8026 | /* 20015 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8027 | /* 20018 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8028 | /* 20020 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8029 | /* 20023 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8030 | /* 20025 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8031 | /* 20028 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 8032 | /* 20033 */ // GIR_Coverage, 25368, |
| 8033 | /* 20033 */ GIR_EraseRootFromParent_Done, |
| 8034 | /* 20034 */ // Label 549: @20034 |
| 8035 | /* 20034 */ GIM_Try, /*On fail goto*//*Label 550*/ GIMT_Encode4(20123), // Rule ID 19485 // |
| 8036 | /* 20039 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 8037 | /* 20043 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 8038 | /* 20047 */ // (and:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src1, VK2:{ *:[v2i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v2i1] } (KANDWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src2, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 8039 | /* 20047 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8040 | /* 20050 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8041 | /* 20054 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8042 | /* 20059 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 8043 | /* 20063 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8044 | /* 20068 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8045 | /* 20071 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8046 | /* 20075 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8047 | /* 20080 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 8048 | /* 20084 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8049 | /* 20089 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8050 | /* 20092 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDWkk), |
| 8051 | /* 20096 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8052 | /* 20101 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8053 | /* 20104 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8054 | /* 20107 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8055 | /* 20109 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8056 | /* 20112 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8057 | /* 20114 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8058 | /* 20117 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 8059 | /* 20122 */ // GIR_Coverage, 19485, |
| 8060 | /* 20122 */ GIR_EraseRootFromParent_Done, |
| 8061 | /* 20123 */ // Label 550: @20123 |
| 8062 | /* 20123 */ GIM_Reject, |
| 8063 | /* 20124 */ // Label 547: @20124 |
| 8064 | /* 20124 */ GIM_Reject, |
| 8065 | /* 20125 */ // Label 452: @20125 |
| 8066 | /* 20125 */ GIM_Try, /*On fail goto*//*Label 551*/ GIMT_Encode4(20466), |
| 8067 | /* 20130 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 8068 | /* 20133 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8069 | /* 20136 */ GIM_Try, /*On fail goto*//*Label 552*/ GIMT_Encode4(20198), // Rule ID 23360 // |
| 8070 | /* 20141 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8071 | /* 20144 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8072 | /* 20148 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8073 | /* 20152 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8074 | /* 20156 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8075 | /* 20159 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8076 | /* 20163 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8077 | /* 20167 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8078 | /* 20171 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8079 | /* 20173 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8080 | /* 20180 */ // (and:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src1) => (VPANDrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8081 | /* 20180 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 8082 | /* 20183 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8083 | /* 20185 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8084 | /* 20187 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8085 | /* 20191 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8086 | /* 20196 */ GIR_RootConstrainSelectedInstOperands, |
| 8087 | /* 20197 */ // GIR_Coverage, 23360, |
| 8088 | /* 20197 */ GIR_EraseRootFromParent_Done, |
| 8089 | /* 20198 */ // Label 552: @20198 |
| 8090 | /* 20198 */ GIM_Try, /*On fail goto*//*Label 553*/ GIMT_Encode4(20260), // Rule ID 24149 // |
| 8091 | /* 20203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8092 | /* 20206 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8093 | /* 20210 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8094 | /* 20214 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8095 | /* 20218 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8096 | /* 20221 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8097 | /* 20225 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8098 | /* 20229 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8099 | /* 20233 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8100 | /* 20235 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8101 | /* 20242 */ // (and:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPANDQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8102 | /* 20242 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 8103 | /* 20245 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8104 | /* 20247 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8105 | /* 20249 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8106 | /* 20253 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8107 | /* 20258 */ GIR_RootConstrainSelectedInstOperands, |
| 8108 | /* 20259 */ // GIR_Coverage, 24149, |
| 8109 | /* 20259 */ GIR_EraseRootFromParent_Done, |
| 8110 | /* 20260 */ // Label 553: @20260 |
| 8111 | /* 20260 */ GIM_Try, /*On fail goto*//*Label 554*/ GIMT_Encode4(20322), // Rule ID 2111 // |
| 8112 | /* 20265 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8113 | /* 20268 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8114 | /* 20272 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8115 | /* 20276 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8116 | /* 20280 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8117 | /* 20284 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8118 | /* 20287 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8119 | /* 20291 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8120 | /* 20295 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8121 | /* 20297 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8122 | /* 20304 */ // (and:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8123 | /* 20304 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 8124 | /* 20307 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8125 | /* 20309 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8126 | /* 20311 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8127 | /* 20315 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8128 | /* 20320 */ GIR_RootConstrainSelectedInstOperands, |
| 8129 | /* 20321 */ // GIR_Coverage, 2111, |
| 8130 | /* 20321 */ GIR_EraseRootFromParent_Done, |
| 8131 | /* 20322 */ // Label 554: @20322 |
| 8132 | /* 20322 */ GIM_Try, /*On fail goto*//*Label 555*/ GIMT_Encode4(20384), // Rule ID 5707 // |
| 8133 | /* 20327 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8134 | /* 20330 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8135 | /* 20334 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8136 | /* 20338 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8137 | /* 20342 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8138 | /* 20346 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8139 | /* 20349 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8140 | /* 20353 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8141 | /* 20357 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8142 | /* 20359 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8143 | /* 20366 */ // (and:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8144 | /* 20366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 8145 | /* 20369 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8146 | /* 20371 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8147 | /* 20373 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8148 | /* 20377 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8149 | /* 20382 */ GIR_RootConstrainSelectedInstOperands, |
| 8150 | /* 20383 */ // GIR_Coverage, 5707, |
| 8151 | /* 20383 */ GIR_EraseRootFromParent_Done, |
| 8152 | /* 20384 */ // Label 555: @20384 |
| 8153 | /* 20384 */ GIM_Try, /*On fail goto*//*Label 556*/ GIMT_Encode4(20411), // Rule ID 2110 // |
| 8154 | /* 20389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8155 | /* 20392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8156 | /* 20396 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8157 | /* 20400 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8158 | /* 20404 */ // (and:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPANDrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 8159 | /* 20404 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDrr), |
| 8160 | /* 20409 */ GIR_RootConstrainSelectedInstOperands, |
| 8161 | /* 20410 */ // GIR_Coverage, 2110, |
| 8162 | /* 20410 */ GIR_Done, |
| 8163 | /* 20411 */ // Label 556: @20411 |
| 8164 | /* 20411 */ GIM_Try, /*On fail goto*//*Label 557*/ GIMT_Encode4(20438), // Rule ID 2112 // |
| 8165 | /* 20416 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 8166 | /* 20419 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8167 | /* 20423 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8168 | /* 20427 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8169 | /* 20431 */ // (and:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (PANDrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 8170 | /* 20431 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PANDrr), |
| 8171 | /* 20436 */ GIR_RootConstrainSelectedInstOperands, |
| 8172 | /* 20437 */ // GIR_Coverage, 2112, |
| 8173 | /* 20437 */ GIR_Done, |
| 8174 | /* 20438 */ // Label 557: @20438 |
| 8175 | /* 20438 */ GIM_Try, /*On fail goto*//*Label 558*/ GIMT_Encode4(20465), // Rule ID 5704 // |
| 8176 | /* 20443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8177 | /* 20446 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8178 | /* 20450 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8179 | /* 20454 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8180 | /* 20458 */ // (and:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPANDQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 8181 | /* 20458 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rr), |
| 8182 | /* 20463 */ GIR_RootConstrainSelectedInstOperands, |
| 8183 | /* 20464 */ // GIR_Coverage, 5704, |
| 8184 | /* 20464 */ GIR_Done, |
| 8185 | /* 20465 */ // Label 558: @20465 |
| 8186 | /* 20465 */ GIM_Reject, |
| 8187 | /* 20466 */ // Label 551: @20466 |
| 8188 | /* 20466 */ GIM_Reject, |
| 8189 | /* 20467 */ // Label 453: @20467 |
| 8190 | /* 20467 */ GIM_Try, /*On fail goto*//*Label 559*/ GIMT_Encode4(20812), |
| 8191 | /* 20472 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 8192 | /* 20475 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s1, |
| 8193 | /* 20478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 8194 | /* 20482 */ GIM_Try, /*On fail goto*//*Label 560*/ GIMT_Encode4(20602), // Rule ID 19490 // |
| 8195 | /* 20487 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8196 | /* 20491 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8197 | /* 20495 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s1, |
| 8198 | /* 20499 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s1, |
| 8199 | /* 20503 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 8200 | /* 20508 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8201 | /* 20512 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8202 | /* 20518 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8203 | /* 20520 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 8204 | /* 20524 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8205 | /* 20526 */ // (and:{ *:[v4i1] } (xor:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src1, immAllOnesV:{ *:[v4i1] }), VK4:{ *:[v4i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v4i1] } (KANDNWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src2, VK16:{ *:[i32] })), VK4:{ *:[i32] }) |
| 8206 | /* 20526 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8207 | /* 20529 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8208 | /* 20533 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8209 | /* 20538 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 8210 | /* 20542 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8211 | /* 20547 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8212 | /* 20550 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8213 | /* 20554 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8214 | /* 20559 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8215 | /* 20563 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8216 | /* 20568 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8217 | /* 20571 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 8218 | /* 20575 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8219 | /* 20580 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8220 | /* 20583 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8221 | /* 20586 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8222 | /* 20588 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8223 | /* 20591 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8224 | /* 20593 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8225 | /* 20596 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 8226 | /* 20601 */ // GIR_Coverage, 19490, |
| 8227 | /* 20601 */ GIR_EraseRootFromParent_Done, |
| 8228 | /* 20602 */ // Label 560: @20602 |
| 8229 | /* 20602 */ GIM_Try, /*On fail goto*//*Label 561*/ GIMT_Encode4(20722), // Rule ID 25369 // |
| 8230 | /* 20607 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 8231 | /* 20611 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8232 | /* 20615 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8233 | /* 20619 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s1, |
| 8234 | /* 20623 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s1, |
| 8235 | /* 20627 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 8236 | /* 20632 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8237 | /* 20636 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8238 | /* 20642 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8239 | /* 20644 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8240 | /* 20646 */ // (and:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src2, (xor:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src1, immAllOnesV:{ *:[v4i1] })) => (COPY_TO_REGCLASS:{ *:[v4i1] } (KANDNWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src2, VK16:{ *:[i32] })), VK4:{ *:[i32] }) |
| 8241 | /* 20646 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8242 | /* 20649 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8243 | /* 20653 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8244 | /* 20658 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 8245 | /* 20662 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8246 | /* 20667 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8247 | /* 20670 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8248 | /* 20674 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8249 | /* 20679 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8250 | /* 20683 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8251 | /* 20688 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8252 | /* 20691 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 8253 | /* 20695 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8254 | /* 20700 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8255 | /* 20703 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8256 | /* 20706 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8257 | /* 20708 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8258 | /* 20711 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8259 | /* 20713 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8260 | /* 20716 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 8261 | /* 20721 */ // GIR_Coverage, 25369, |
| 8262 | /* 20721 */ GIR_EraseRootFromParent_Done, |
| 8263 | /* 20722 */ // Label 561: @20722 |
| 8264 | /* 20722 */ GIM_Try, /*On fail goto*//*Label 562*/ GIMT_Encode4(20811), // Rule ID 19486 // |
| 8265 | /* 20727 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 8266 | /* 20731 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 8267 | /* 20735 */ // (and:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src1, VK4:{ *:[v4i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v4i1] } (KANDWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src2, VK16:{ *:[i32] })), VK4:{ *:[i32] }) |
| 8268 | /* 20735 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8269 | /* 20738 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8270 | /* 20742 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8271 | /* 20747 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 8272 | /* 20751 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8273 | /* 20756 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8274 | /* 20759 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8275 | /* 20763 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8276 | /* 20768 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 8277 | /* 20772 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8278 | /* 20777 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8279 | /* 20780 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDWkk), |
| 8280 | /* 20784 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8281 | /* 20789 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8282 | /* 20792 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8283 | /* 20795 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8284 | /* 20797 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8285 | /* 20800 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8286 | /* 20802 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8287 | /* 20805 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 8288 | /* 20810 */ // GIR_Coverage, 19486, |
| 8289 | /* 20810 */ GIR_EraseRootFromParent_Done, |
| 8290 | /* 20811 */ // Label 562: @20811 |
| 8291 | /* 20811 */ GIM_Reject, |
| 8292 | /* 20812 */ // Label 559: @20812 |
| 8293 | /* 20812 */ GIM_Reject, |
| 8294 | /* 20813 */ // Label 454: @20813 |
| 8295 | /* 20813 */ GIM_Try, /*On fail goto*//*Label 563*/ GIMT_Encode4(21154), |
| 8296 | /* 20818 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 8297 | /* 20821 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8298 | /* 20824 */ GIM_Try, /*On fail goto*//*Label 564*/ GIMT_Encode4(20886), // Rule ID 24167 // |
| 8299 | /* 20829 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8300 | /* 20832 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8301 | /* 20836 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8302 | /* 20840 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8303 | /* 20844 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8304 | /* 20847 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8305 | /* 20851 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8306 | /* 20855 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8307 | /* 20859 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8308 | /* 20861 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8309 | /* 20868 */ // (and:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPANDDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8310 | /* 20868 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZ128rm), |
| 8311 | /* 20871 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8312 | /* 20873 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8313 | /* 20875 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8314 | /* 20879 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8315 | /* 20884 */ GIR_RootConstrainSelectedInstOperands, |
| 8316 | /* 20885 */ // GIR_Coverage, 24167, |
| 8317 | /* 20885 */ GIR_EraseRootFromParent_Done, |
| 8318 | /* 20886 */ // Label 564: @20886 |
| 8319 | /* 20886 */ GIM_Try, /*On fail goto*//*Label 565*/ GIMT_Encode4(20948), // Rule ID 25253 // |
| 8320 | /* 20891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8321 | /* 20894 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8322 | /* 20898 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8323 | /* 20902 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8324 | /* 20906 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8325 | /* 20909 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8326 | /* 20913 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8327 | /* 20917 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8328 | /* 20921 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8329 | /* 20923 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8330 | /* 20930 */ // (and:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPANDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8331 | /* 20930 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 8332 | /* 20933 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8333 | /* 20935 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8334 | /* 20937 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8335 | /* 20941 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8336 | /* 20946 */ GIR_RootConstrainSelectedInstOperands, |
| 8337 | /* 20947 */ // GIR_Coverage, 25253, |
| 8338 | /* 20947 */ GIR_EraseRootFromParent_Done, |
| 8339 | /* 20948 */ // Label 565: @20948 |
| 8340 | /* 20948 */ GIM_Try, /*On fail goto*//*Label 566*/ GIMT_Encode4(21010), // Rule ID 5734 // |
| 8341 | /* 20953 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8342 | /* 20956 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8343 | /* 20960 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8344 | /* 20964 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8345 | /* 20968 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8346 | /* 20972 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8347 | /* 20975 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8348 | /* 20979 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8349 | /* 20983 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8350 | /* 20985 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8351 | /* 20992 */ // (and:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8352 | /* 20992 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZ128rm), |
| 8353 | /* 20995 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8354 | /* 20997 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8355 | /* 20999 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8356 | /* 21003 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8357 | /* 21008 */ GIR_RootConstrainSelectedInstOperands, |
| 8358 | /* 21009 */ // GIR_Coverage, 5734, |
| 8359 | /* 21009 */ GIR_EraseRootFromParent_Done, |
| 8360 | /* 21010 */ // Label 566: @21010 |
| 8361 | /* 21010 */ GIM_Try, /*On fail goto*//*Label 567*/ GIMT_Encode4(21072), // Rule ID 18160 // |
| 8362 | /* 21015 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8363 | /* 21018 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8364 | /* 21022 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8365 | /* 21026 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8366 | /* 21030 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8367 | /* 21034 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8368 | /* 21037 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8369 | /* 21041 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8370 | /* 21045 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8371 | /* 21047 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8372 | /* 21054 */ // (and:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8373 | /* 21054 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 8374 | /* 21057 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8375 | /* 21059 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8376 | /* 21061 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8377 | /* 21065 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8378 | /* 21070 */ GIR_RootConstrainSelectedInstOperands, |
| 8379 | /* 21071 */ // GIR_Coverage, 18160, |
| 8380 | /* 21071 */ GIR_EraseRootFromParent_Done, |
| 8381 | /* 21072 */ // Label 567: @21072 |
| 8382 | /* 21072 */ GIM_Try, /*On fail goto*//*Label 568*/ GIMT_Encode4(21099), // Rule ID 5731 // |
| 8383 | /* 21077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8384 | /* 21080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8385 | /* 21084 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8386 | /* 21088 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8387 | /* 21092 */ // (and:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPANDDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 8388 | /* 21092 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDDZ128rr), |
| 8389 | /* 21097 */ GIR_RootConstrainSelectedInstOperands, |
| 8390 | /* 21098 */ // GIR_Coverage, 5731, |
| 8391 | /* 21098 */ GIR_Done, |
| 8392 | /* 21099 */ // Label 568: @21099 |
| 8393 | /* 21099 */ GIM_Try, /*On fail goto*//*Label 569*/ GIMT_Encode4(21126), // Rule ID 18148 // |
| 8394 | /* 21104 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8395 | /* 21107 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8396 | /* 21111 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8397 | /* 21115 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8398 | /* 21119 */ // (and:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPANDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 8399 | /* 21119 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDrr), |
| 8400 | /* 21124 */ GIR_RootConstrainSelectedInstOperands, |
| 8401 | /* 21125 */ // GIR_Coverage, 18148, |
| 8402 | /* 21125 */ GIR_Done, |
| 8403 | /* 21126 */ // Label 569: @21126 |
| 8404 | /* 21126 */ GIM_Try, /*On fail goto*//*Label 570*/ GIMT_Encode4(21153), // Rule ID 18172 // |
| 8405 | /* 21131 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 8406 | /* 21134 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8407 | /* 21138 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8408 | /* 21142 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8409 | /* 21146 */ // (and:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PANDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 8410 | /* 21146 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PANDrr), |
| 8411 | /* 21151 */ GIR_RootConstrainSelectedInstOperands, |
| 8412 | /* 21152 */ // GIR_Coverage, 18172, |
| 8413 | /* 21152 */ GIR_Done, |
| 8414 | /* 21153 */ // Label 570: @21153 |
| 8415 | /* 21153 */ GIM_Reject, |
| 8416 | /* 21154 */ // Label 563: @21154 |
| 8417 | /* 21154 */ GIM_Reject, |
| 8418 | /* 21155 */ // Label 455: @21155 |
| 8419 | /* 21155 */ GIM_Try, /*On fail goto*//*Label 571*/ GIMT_Encode4(21620), |
| 8420 | /* 21160 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 8421 | /* 21163 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 8422 | /* 21166 */ GIM_Try, /*On fail goto*//*Label 572*/ GIMT_Encode4(21228), // Rule ID 23362 // |
| 8423 | /* 21171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8424 | /* 21174 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8425 | /* 21178 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8426 | /* 21182 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8427 | /* 21186 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8428 | /* 21189 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8429 | /* 21193 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8430 | /* 21197 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8431 | /* 21201 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8432 | /* 21203 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8433 | /* 21210 */ // (and:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VPANDYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8434 | /* 21210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 8435 | /* 21213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8436 | /* 21215 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8437 | /* 21217 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8438 | /* 21221 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8439 | /* 21226 */ GIR_RootConstrainSelectedInstOperands, |
| 8440 | /* 21227 */ // GIR_Coverage, 23362, |
| 8441 | /* 21227 */ GIR_EraseRootFromParent_Done, |
| 8442 | /* 21228 */ // Label 572: @21228 |
| 8443 | /* 21228 */ GIM_Try, /*On fail goto*//*Label 573*/ GIMT_Encode4(21290), // Rule ID 24143 // |
| 8444 | /* 21233 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8445 | /* 21236 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8446 | /* 21240 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8447 | /* 21244 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8448 | /* 21248 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8449 | /* 21251 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8450 | /* 21255 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8451 | /* 21259 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8452 | /* 21263 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8453 | /* 21265 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8454 | /* 21272 */ // (and:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPANDQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8455 | /* 21272 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 8456 | /* 21275 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8457 | /* 21277 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8458 | /* 21279 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8459 | /* 21283 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8460 | /* 21288 */ GIR_RootConstrainSelectedInstOperands, |
| 8461 | /* 21289 */ // GIR_Coverage, 24143, |
| 8462 | /* 21289 */ GIR_EraseRootFromParent_Done, |
| 8463 | /* 21290 */ // Label 573: @21290 |
| 8464 | /* 21290 */ GIM_Try, /*On fail goto*//*Label 574*/ GIMT_Encode4(21352), // Rule ID 25242 // |
| 8465 | /* 21295 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8466 | /* 21298 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8467 | /* 21302 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8468 | /* 21306 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8469 | /* 21310 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8470 | /* 21313 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8471 | /* 21317 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8472 | /* 21321 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8473 | /* 21325 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8474 | /* 21327 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8475 | /* 21334 */ // (and:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VANDPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8476 | /* 21334 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 8477 | /* 21337 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8478 | /* 21339 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8479 | /* 21341 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8480 | /* 21345 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8481 | /* 21350 */ GIR_RootConstrainSelectedInstOperands, |
| 8482 | /* 21351 */ // GIR_Coverage, 25242, |
| 8483 | /* 21351 */ GIR_EraseRootFromParent_Done, |
| 8484 | /* 21352 */ // Label 574: @21352 |
| 8485 | /* 21352 */ GIM_Try, /*On fail goto*//*Label 575*/ GIMT_Encode4(21414), // Rule ID 2115 // |
| 8486 | /* 21357 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8487 | /* 21360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8488 | /* 21364 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8489 | /* 21368 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8490 | /* 21372 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8491 | /* 21376 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8492 | /* 21379 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8493 | /* 21383 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8494 | /* 21387 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8495 | /* 21389 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8496 | /* 21396 */ // (and:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8497 | /* 21396 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 8498 | /* 21399 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8499 | /* 21401 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8500 | /* 21403 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8501 | /* 21407 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8502 | /* 21412 */ GIR_RootConstrainSelectedInstOperands, |
| 8503 | /* 21413 */ // GIR_Coverage, 2115, |
| 8504 | /* 21413 */ GIR_EraseRootFromParent_Done, |
| 8505 | /* 21414 */ // Label 575: @21414 |
| 8506 | /* 21414 */ GIM_Try, /*On fail goto*//*Label 576*/ GIMT_Encode4(21476), // Rule ID 5698 // |
| 8507 | /* 21419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8508 | /* 21422 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8509 | /* 21426 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8510 | /* 21430 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8511 | /* 21434 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8512 | /* 21438 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8513 | /* 21441 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8514 | /* 21445 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8515 | /* 21449 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8516 | /* 21451 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8517 | /* 21458 */ // (and:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8518 | /* 21458 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 8519 | /* 21461 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8520 | /* 21463 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8521 | /* 21465 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8522 | /* 21469 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8523 | /* 21474 */ GIR_RootConstrainSelectedInstOperands, |
| 8524 | /* 21475 */ // GIR_Coverage, 5698, |
| 8525 | /* 21475 */ GIR_EraseRootFromParent_Done, |
| 8526 | /* 21476 */ // Label 576: @21476 |
| 8527 | /* 21476 */ GIM_Try, /*On fail goto*//*Label 577*/ GIMT_Encode4(21538), // Rule ID 18133 // |
| 8528 | /* 21481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8529 | /* 21484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8530 | /* 21488 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8531 | /* 21492 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8532 | /* 21496 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8533 | /* 21500 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8534 | /* 21503 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8535 | /* 21507 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8536 | /* 21511 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8537 | /* 21513 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8538 | /* 21520 */ // (and:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VANDPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8539 | /* 21520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 8540 | /* 21523 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8541 | /* 21525 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8542 | /* 21527 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8543 | /* 21531 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8544 | /* 21536 */ GIR_RootConstrainSelectedInstOperands, |
| 8545 | /* 21537 */ // GIR_Coverage, 18133, |
| 8546 | /* 21537 */ GIR_EraseRootFromParent_Done, |
| 8547 | /* 21538 */ // Label 577: @21538 |
| 8548 | /* 21538 */ GIM_Try, /*On fail goto*//*Label 578*/ GIMT_Encode4(21565), // Rule ID 2114 // |
| 8549 | /* 21543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8550 | /* 21546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8551 | /* 21550 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8552 | /* 21554 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8553 | /* 21558 */ // (and:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPANDYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 8554 | /* 21558 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDYrr), |
| 8555 | /* 21563 */ GIR_RootConstrainSelectedInstOperands, |
| 8556 | /* 21564 */ // GIR_Coverage, 2114, |
| 8557 | /* 21564 */ GIR_Done, |
| 8558 | /* 21565 */ // Label 578: @21565 |
| 8559 | /* 21565 */ GIM_Try, /*On fail goto*//*Label 579*/ GIMT_Encode4(21592), // Rule ID 5695 // |
| 8560 | /* 21570 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8561 | /* 21573 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8562 | /* 21577 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8563 | /* 21581 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8564 | /* 21585 */ // (and:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPANDQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 8565 | /* 21585 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rr), |
| 8566 | /* 21590 */ GIR_RootConstrainSelectedInstOperands, |
| 8567 | /* 21591 */ // GIR_Coverage, 5695, |
| 8568 | /* 21591 */ GIR_Done, |
| 8569 | /* 21592 */ // Label 579: @21592 |
| 8570 | /* 21592 */ GIM_Try, /*On fail goto*//*Label 580*/ GIMT_Encode4(21619), // Rule ID 18117 // |
| 8571 | /* 21597 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8572 | /* 21600 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8573 | /* 21604 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8574 | /* 21608 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8575 | /* 21612 */ // (and:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VANDPSYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 8576 | /* 21612 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VANDPSYrr), |
| 8577 | /* 21617 */ GIR_RootConstrainSelectedInstOperands, |
| 8578 | /* 21618 */ // GIR_Coverage, 18117, |
| 8579 | /* 21618 */ GIR_Done, |
| 8580 | /* 21619 */ // Label 580: @21619 |
| 8581 | /* 21619 */ GIM_Reject, |
| 8582 | /* 21620 */ // Label 571: @21620 |
| 8583 | /* 21620 */ GIM_Reject, |
| 8584 | /* 21621 */ // Label 456: @21621 |
| 8585 | /* 21621 */ GIM_Try, /*On fail goto*//*Label 581*/ GIMT_Encode4(22118), |
| 8586 | /* 21626 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 8587 | /* 21629 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 8588 | /* 21632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8589 | /* 21636 */ GIM_Try, /*On fail goto*//*Label 582*/ GIMT_Encode4(21696), // Rule ID 4431 // |
| 8590 | /* 21641 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 8591 | /* 21644 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8592 | /* 21648 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8593 | /* 21652 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 8594 | /* 21656 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 8595 | /* 21660 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8596 | /* 21665 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8597 | /* 21669 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8598 | /* 21675 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8599 | /* 21677 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8600 | /* 21681 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8601 | /* 21683 */ // (and:{ *:[v8i1] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] }), VK8:{ *:[v8i1] }:$src2) => (KANDNBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 8602 | /* 21683 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNBkk), |
| 8603 | /* 21686 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8604 | /* 21688 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8605 | /* 21692 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 8606 | /* 21694 */ GIR_RootConstrainSelectedInstOperands, |
| 8607 | /* 21695 */ // GIR_Coverage, 4431, |
| 8608 | /* 21695 */ GIR_EraseRootFromParent_Done, |
| 8609 | /* 21696 */ // Label 582: @21696 |
| 8610 | /* 21696 */ GIM_Try, /*On fail goto*//*Label 583*/ GIMT_Encode4(21819), // Rule ID 19487 // |
| 8611 | /* 21701 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 8612 | /* 21704 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8613 | /* 21708 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8614 | /* 21712 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 8615 | /* 21716 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 8616 | /* 21720 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8617 | /* 21725 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8618 | /* 21729 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8619 | /* 21735 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8620 | /* 21737 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8621 | /* 21741 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8622 | /* 21743 */ // (and:{ *:[v8i1] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] }), VK8:{ *:[v8i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v8i1] } (KANDNWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src2, VK16:{ *:[i32] })), VK8:{ *:[i32] }) |
| 8623 | /* 21743 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8624 | /* 21746 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8625 | /* 21750 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8626 | /* 21755 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 8627 | /* 21759 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8628 | /* 21764 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8629 | /* 21767 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8630 | /* 21771 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8631 | /* 21776 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8632 | /* 21780 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8633 | /* 21785 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8634 | /* 21788 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 8635 | /* 21792 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8636 | /* 21797 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8637 | /* 21800 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8638 | /* 21803 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8639 | /* 21805 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8640 | /* 21808 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8641 | /* 21810 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8642 | /* 21813 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 8643 | /* 21818 */ // GIR_Coverage, 19487, |
| 8644 | /* 21818 */ GIR_EraseRootFromParent_Done, |
| 8645 | /* 21819 */ // Label 583: @21819 |
| 8646 | /* 21819 */ GIM_Try, /*On fail goto*//*Label 584*/ GIMT_Encode4(21879), // Rule ID 23692 // |
| 8647 | /* 21824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 8648 | /* 21827 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8649 | /* 21831 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8650 | /* 21835 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8651 | /* 21839 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 8652 | /* 21843 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 8653 | /* 21847 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8654 | /* 21852 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8655 | /* 21856 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8656 | /* 21862 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8657 | /* 21864 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8658 | /* 21866 */ // (and:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src2, (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] })) => (KANDNBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 8659 | /* 21866 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNBkk), |
| 8660 | /* 21869 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8661 | /* 21871 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8662 | /* 21875 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 8663 | /* 21877 */ GIR_RootConstrainSelectedInstOperands, |
| 8664 | /* 21878 */ // GIR_Coverage, 23692, |
| 8665 | /* 21878 */ GIR_EraseRootFromParent_Done, |
| 8666 | /* 21879 */ // Label 584: @21879 |
| 8667 | /* 21879 */ GIM_Try, /*On fail goto*//*Label 585*/ GIMT_Encode4(22002), // Rule ID 25366 // |
| 8668 | /* 21884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 8669 | /* 21887 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8670 | /* 21891 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8671 | /* 21895 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8672 | /* 21899 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 8673 | /* 21903 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 8674 | /* 21907 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8675 | /* 21912 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8676 | /* 21916 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8677 | /* 21922 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8678 | /* 21924 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8679 | /* 21926 */ // (and:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src2, (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] })) => (COPY_TO_REGCLASS:{ *:[v8i1] } (KANDNWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src2, VK16:{ *:[i32] })), VK8:{ *:[i32] }) |
| 8680 | /* 21926 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8681 | /* 21929 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8682 | /* 21933 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8683 | /* 21938 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 8684 | /* 21942 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8685 | /* 21947 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8686 | /* 21950 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8687 | /* 21954 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8688 | /* 21959 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8689 | /* 21963 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8690 | /* 21968 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8691 | /* 21971 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 8692 | /* 21975 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8693 | /* 21980 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8694 | /* 21983 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8695 | /* 21986 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8696 | /* 21988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8697 | /* 21991 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8698 | /* 21993 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8699 | /* 21996 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 8700 | /* 22001 */ // GIR_Coverage, 25366, |
| 8701 | /* 22001 */ GIR_EraseRootFromParent_Done, |
| 8702 | /* 22002 */ // Label 585: @22002 |
| 8703 | /* 22002 */ GIM_Try, /*On fail goto*//*Label 586*/ GIMT_Encode4(22025), // Rule ID 4415 // |
| 8704 | /* 22007 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 8705 | /* 22010 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8706 | /* 22014 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8707 | /* 22018 */ // (and:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (KANDBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 8708 | /* 22018 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KANDBkk), |
| 8709 | /* 22023 */ GIR_RootConstrainSelectedInstOperands, |
| 8710 | /* 22024 */ // GIR_Coverage, 4415, |
| 8711 | /* 22024 */ GIR_Done, |
| 8712 | /* 22025 */ // Label 586: @22025 |
| 8713 | /* 22025 */ GIM_Try, /*On fail goto*//*Label 587*/ GIMT_Encode4(22117), // Rule ID 19483 // |
| 8714 | /* 22030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 8715 | /* 22033 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8716 | /* 22037 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8717 | /* 22041 */ // (and:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v8i1] } (KANDWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src2, VK16:{ *:[i32] })), VK8:{ *:[i32] }) |
| 8718 | /* 22041 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8719 | /* 22044 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8720 | /* 22048 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8721 | /* 22053 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 8722 | /* 22057 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8723 | /* 22062 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8724 | /* 22065 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8725 | /* 22069 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8726 | /* 22074 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 8727 | /* 22078 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8728 | /* 22083 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8729 | /* 22086 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDWkk), |
| 8730 | /* 22090 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 8731 | /* 22095 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8732 | /* 22098 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8733 | /* 22101 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8734 | /* 22103 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8735 | /* 22106 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8736 | /* 22108 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8737 | /* 22111 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 8738 | /* 22116 */ // GIR_Coverage, 19483, |
| 8739 | /* 22116 */ GIR_EraseRootFromParent_Done, |
| 8740 | /* 22117 */ // Label 587: @22117 |
| 8741 | /* 22117 */ GIM_Reject, |
| 8742 | /* 22118 */ // Label 581: @22118 |
| 8743 | /* 22118 */ GIM_Reject, |
| 8744 | /* 22119 */ // Label 457: @22119 |
| 8745 | /* 22119 */ GIM_Try, /*On fail goto*//*Label 588*/ GIMT_Encode4(22460), |
| 8746 | /* 22124 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 8747 | /* 22127 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8748 | /* 22130 */ GIM_Try, /*On fail goto*//*Label 589*/ GIMT_Encode4(22192), // Rule ID 25252 // |
| 8749 | /* 22135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8750 | /* 22138 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8751 | /* 22142 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8752 | /* 22146 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8753 | /* 22150 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8754 | /* 22153 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8755 | /* 22157 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8756 | /* 22161 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8757 | /* 22165 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8758 | /* 22167 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8759 | /* 22174 */ // (and:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPANDrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8760 | /* 22174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 8761 | /* 22177 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8762 | /* 22179 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8763 | /* 22181 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8764 | /* 22185 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8765 | /* 22190 */ GIR_RootConstrainSelectedInstOperands, |
| 8766 | /* 22191 */ // GIR_Coverage, 25252, |
| 8767 | /* 22191 */ GIR_EraseRootFromParent_Done, |
| 8768 | /* 22192 */ // Label 589: @22192 |
| 8769 | /* 22192 */ GIM_Try, /*On fail goto*//*Label 590*/ GIMT_Encode4(22254), // Rule ID 25433 // |
| 8770 | /* 22197 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8771 | /* 22200 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8772 | /* 22204 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8773 | /* 22208 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8774 | /* 22212 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8775 | /* 22215 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8776 | /* 22219 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8777 | /* 22223 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8778 | /* 22227 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8779 | /* 22229 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8780 | /* 22236 */ // (and:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPANDQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8781 | /* 22236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 8782 | /* 22239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8783 | /* 22241 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8784 | /* 22243 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8785 | /* 22247 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8786 | /* 22252 */ GIR_RootConstrainSelectedInstOperands, |
| 8787 | /* 22253 */ // GIR_Coverage, 25433, |
| 8788 | /* 22253 */ GIR_EraseRootFromParent_Done, |
| 8789 | /* 22254 */ // Label 590: @22254 |
| 8790 | /* 22254 */ GIM_Try, /*On fail goto*//*Label 591*/ GIMT_Encode4(22316), // Rule ID 18159 // |
| 8791 | /* 22259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8792 | /* 22262 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8793 | /* 22266 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8794 | /* 22270 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8795 | /* 22274 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8796 | /* 22278 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8797 | /* 22281 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8798 | /* 22285 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8799 | /* 22289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8800 | /* 22291 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8801 | /* 22298 */ // (and:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8802 | /* 22298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 8803 | /* 22301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8804 | /* 22303 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8805 | /* 22305 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8806 | /* 22309 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8807 | /* 22314 */ GIR_RootConstrainSelectedInstOperands, |
| 8808 | /* 22315 */ // GIR_Coverage, 18159, |
| 8809 | /* 22315 */ GIR_EraseRootFromParent_Done, |
| 8810 | /* 22316 */ // Label 591: @22316 |
| 8811 | /* 22316 */ GIM_Try, /*On fail goto*//*Label 592*/ GIMT_Encode4(22378), // Rule ID 20025 // |
| 8812 | /* 22321 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8813 | /* 22324 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8814 | /* 22328 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8815 | /* 22332 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8816 | /* 22336 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8817 | /* 22340 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8818 | /* 22343 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8819 | /* 22347 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8820 | /* 22351 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8821 | /* 22353 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8822 | /* 22360 */ // (and:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8823 | /* 22360 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 8824 | /* 22363 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8825 | /* 22365 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8826 | /* 22367 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8827 | /* 22371 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8828 | /* 22376 */ GIR_RootConstrainSelectedInstOperands, |
| 8829 | /* 22377 */ // GIR_Coverage, 20025, |
| 8830 | /* 22377 */ GIR_EraseRootFromParent_Done, |
| 8831 | /* 22378 */ // Label 592: @22378 |
| 8832 | /* 22378 */ GIM_Try, /*On fail goto*//*Label 593*/ GIMT_Encode4(22405), // Rule ID 18147 // |
| 8833 | /* 22383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8834 | /* 22386 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8835 | /* 22390 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8836 | /* 22394 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8837 | /* 22398 */ // (and:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPANDrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 8838 | /* 22398 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDrr), |
| 8839 | /* 22403 */ GIR_RootConstrainSelectedInstOperands, |
| 8840 | /* 22404 */ // GIR_Coverage, 18147, |
| 8841 | /* 22404 */ GIR_Done, |
| 8842 | /* 22405 */ // Label 593: @22405 |
| 8843 | /* 22405 */ GIM_Try, /*On fail goto*//*Label 594*/ GIMT_Encode4(22432), // Rule ID 18171 // |
| 8844 | /* 22410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 8845 | /* 22413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8846 | /* 22417 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8847 | /* 22421 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8848 | /* 22425 */ // (and:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PANDrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 8849 | /* 22425 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PANDrr), |
| 8850 | /* 22430 */ GIR_RootConstrainSelectedInstOperands, |
| 8851 | /* 22431 */ // GIR_Coverage, 18171, |
| 8852 | /* 22431 */ GIR_Done, |
| 8853 | /* 22432 */ // Label 594: @22432 |
| 8854 | /* 22432 */ GIM_Try, /*On fail goto*//*Label 595*/ GIMT_Encode4(22459), // Rule ID 20017 // |
| 8855 | /* 22437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8856 | /* 22440 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8857 | /* 22444 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8858 | /* 22448 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8859 | /* 22452 */ // (and:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPANDQZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 8860 | /* 22452 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rr), |
| 8861 | /* 22457 */ GIR_RootConstrainSelectedInstOperands, |
| 8862 | /* 22458 */ // GIR_Coverage, 20017, |
| 8863 | /* 22458 */ GIR_Done, |
| 8864 | /* 22459 */ // Label 595: @22459 |
| 8865 | /* 22459 */ GIM_Reject, |
| 8866 | /* 22460 */ // Label 588: @22460 |
| 8867 | /* 22460 */ GIM_Reject, |
| 8868 | /* 22461 */ // Label 458: @22461 |
| 8869 | /* 22461 */ GIM_Try, /*On fail goto*//*Label 596*/ GIMT_Encode4(22926), |
| 8870 | /* 22466 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 8871 | /* 22469 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 8872 | /* 22472 */ GIM_Try, /*On fail goto*//*Label 597*/ GIMT_Encode4(22534), // Rule ID 24161 // |
| 8873 | /* 22477 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8874 | /* 22480 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8875 | /* 22484 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8876 | /* 22488 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8877 | /* 22492 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8878 | /* 22495 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8879 | /* 22499 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8880 | /* 22503 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8881 | /* 22507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8882 | /* 22509 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8883 | /* 22516 */ // (and:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPANDDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8884 | /* 22516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZ256rm), |
| 8885 | /* 22519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8886 | /* 22521 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8887 | /* 22523 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8888 | /* 22527 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8889 | /* 22532 */ GIR_RootConstrainSelectedInstOperands, |
| 8890 | /* 22533 */ // GIR_Coverage, 24161, |
| 8891 | /* 22533 */ GIR_EraseRootFromParent_Done, |
| 8892 | /* 22534 */ // Label 597: @22534 |
| 8893 | /* 22534 */ GIM_Try, /*On fail goto*//*Label 598*/ GIMT_Encode4(22596), // Rule ID 25232 // |
| 8894 | /* 22539 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8895 | /* 22542 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8896 | /* 22546 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8897 | /* 22550 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8898 | /* 22554 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8899 | /* 22557 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8900 | /* 22561 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8901 | /* 22565 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8902 | /* 22569 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8903 | /* 22571 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8904 | /* 22578 */ // (and:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPANDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8905 | /* 22578 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 8906 | /* 22581 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8907 | /* 22583 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8908 | /* 22585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8909 | /* 22589 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8910 | /* 22594 */ GIR_RootConstrainSelectedInstOperands, |
| 8911 | /* 22595 */ // GIR_Coverage, 25232, |
| 8912 | /* 22595 */ GIR_EraseRootFromParent_Done, |
| 8913 | /* 22596 */ // Label 598: @22596 |
| 8914 | /* 22596 */ GIM_Try, /*On fail goto*//*Label 599*/ GIMT_Encode4(22658), // Rule ID 25241 // |
| 8915 | /* 22601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8916 | /* 22604 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8917 | /* 22608 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8918 | /* 22612 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8919 | /* 22616 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8920 | /* 22619 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8921 | /* 22623 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8922 | /* 22627 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8923 | /* 22631 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8924 | /* 22633 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8925 | /* 22640 */ // (and:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VANDPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8926 | /* 22640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 8927 | /* 22643 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8928 | /* 22645 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8929 | /* 22647 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8930 | /* 22651 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8931 | /* 22656 */ GIR_RootConstrainSelectedInstOperands, |
| 8932 | /* 22657 */ // GIR_Coverage, 25241, |
| 8933 | /* 22657 */ GIR_EraseRootFromParent_Done, |
| 8934 | /* 22658 */ // Label 599: @22658 |
| 8935 | /* 22658 */ GIM_Try, /*On fail goto*//*Label 600*/ GIMT_Encode4(22720), // Rule ID 5725 // |
| 8936 | /* 22663 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8937 | /* 22666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8938 | /* 22670 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8939 | /* 22674 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8940 | /* 22678 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8941 | /* 22682 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8942 | /* 22685 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8943 | /* 22689 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8944 | /* 22693 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8945 | /* 22695 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8946 | /* 22702 */ // (and:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8947 | /* 22702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZ256rm), |
| 8948 | /* 22705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8949 | /* 22707 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8950 | /* 22709 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8951 | /* 22713 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8952 | /* 22718 */ GIR_RootConstrainSelectedInstOperands, |
| 8953 | /* 22719 */ // GIR_Coverage, 5725, |
| 8954 | /* 22719 */ GIR_EraseRootFromParent_Done, |
| 8955 | /* 22720 */ // Label 600: @22720 |
| 8956 | /* 22720 */ GIM_Try, /*On fail goto*//*Label 601*/ GIMT_Encode4(22782), // Rule ID 18104 // |
| 8957 | /* 22725 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8958 | /* 22728 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8959 | /* 22732 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8960 | /* 22736 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8961 | /* 22740 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8962 | /* 22744 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8963 | /* 22747 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8964 | /* 22751 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8965 | /* 22755 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8966 | /* 22757 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8967 | /* 22764 */ // (and:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8968 | /* 22764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 8969 | /* 22767 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8970 | /* 22769 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8971 | /* 22771 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8972 | /* 22775 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8973 | /* 22780 */ GIR_RootConstrainSelectedInstOperands, |
| 8974 | /* 22781 */ // GIR_Coverage, 18104, |
| 8975 | /* 22781 */ GIR_EraseRootFromParent_Done, |
| 8976 | /* 22782 */ // Label 601: @22782 |
| 8977 | /* 22782 */ GIM_Try, /*On fail goto*//*Label 602*/ GIMT_Encode4(22844), // Rule ID 18132 // |
| 8978 | /* 22787 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8979 | /* 22790 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8980 | /* 22794 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8981 | /* 22798 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8982 | /* 22802 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8983 | /* 22806 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8984 | /* 22809 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8985 | /* 22813 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8986 | /* 22817 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8987 | /* 22819 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8988 | /* 22826 */ // (and:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VANDPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8989 | /* 22826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 8990 | /* 22829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8991 | /* 22831 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8992 | /* 22833 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8993 | /* 22837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8994 | /* 22842 */ GIR_RootConstrainSelectedInstOperands, |
| 8995 | /* 22843 */ // GIR_Coverage, 18132, |
| 8996 | /* 22843 */ GIR_EraseRootFromParent_Done, |
| 8997 | /* 22844 */ // Label 602: @22844 |
| 8998 | /* 22844 */ GIM_Try, /*On fail goto*//*Label 603*/ GIMT_Encode4(22871), // Rule ID 5722 // |
| 8999 | /* 22849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 9000 | /* 22852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9001 | /* 22856 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9002 | /* 22860 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9003 | /* 22864 */ // (and:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPANDDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 9004 | /* 22864 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDDZ256rr), |
| 9005 | /* 22869 */ GIR_RootConstrainSelectedInstOperands, |
| 9006 | /* 22870 */ // GIR_Coverage, 5722, |
| 9007 | /* 22870 */ GIR_Done, |
| 9008 | /* 22871 */ // Label 603: @22871 |
| 9009 | /* 22871 */ GIM_Try, /*On fail goto*//*Label 604*/ GIMT_Encode4(22898), // Rule ID 18092 // |
| 9010 | /* 22876 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 9011 | /* 22879 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9012 | /* 22883 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9013 | /* 22887 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9014 | /* 22891 */ // (and:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPANDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 9015 | /* 22891 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDYrr), |
| 9016 | /* 22896 */ GIR_RootConstrainSelectedInstOperands, |
| 9017 | /* 22897 */ // GIR_Coverage, 18092, |
| 9018 | /* 22897 */ GIR_Done, |
| 9019 | /* 22898 */ // Label 604: @22898 |
| 9020 | /* 22898 */ GIM_Try, /*On fail goto*//*Label 605*/ GIMT_Encode4(22925), // Rule ID 18116 // |
| 9021 | /* 22903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 9022 | /* 22906 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9023 | /* 22910 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9024 | /* 22914 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9025 | /* 22918 */ // (and:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VANDPSYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 9026 | /* 22918 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VANDPSYrr), |
| 9027 | /* 22923 */ GIR_RootConstrainSelectedInstOperands, |
| 9028 | /* 22924 */ // GIR_Coverage, 18116, |
| 9029 | /* 22924 */ GIR_Done, |
| 9030 | /* 22925 */ // Label 605: @22925 |
| 9031 | /* 22925 */ GIM_Reject, |
| 9032 | /* 22926 */ // Label 596: @22926 |
| 9033 | /* 22926 */ GIM_Reject, |
| 9034 | /* 22927 */ // Label 459: @22927 |
| 9035 | /* 22927 */ GIM_Try, /*On fail goto*//*Label 606*/ GIMT_Encode4(23082), |
| 9036 | /* 22932 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 9037 | /* 22935 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 9038 | /* 22938 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9039 | /* 22942 */ GIM_Try, /*On fail goto*//*Label 607*/ GIMT_Encode4(23000), // Rule ID 24137 // |
| 9040 | /* 22947 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9041 | /* 22950 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9042 | /* 22954 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9043 | /* 22958 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9044 | /* 22961 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9045 | /* 22965 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9046 | /* 22969 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9047 | /* 22973 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9048 | /* 22975 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9049 | /* 22982 */ // (and:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPANDQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9050 | /* 22982 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 9051 | /* 22985 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9052 | /* 22987 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9053 | /* 22989 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9054 | /* 22993 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9055 | /* 22998 */ GIR_RootConstrainSelectedInstOperands, |
| 9056 | /* 22999 */ // GIR_Coverage, 24137, |
| 9057 | /* 22999 */ GIR_EraseRootFromParent_Done, |
| 9058 | /* 23000 */ // Label 607: @23000 |
| 9059 | /* 23000 */ GIM_Try, /*On fail goto*//*Label 608*/ GIMT_Encode4(23058), // Rule ID 5689 // |
| 9060 | /* 23005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9061 | /* 23008 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9062 | /* 23012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9063 | /* 23016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9064 | /* 23020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9065 | /* 23023 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9066 | /* 23027 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9067 | /* 23031 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9068 | /* 23033 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9069 | /* 23040 */ // (and:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9070 | /* 23040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 9071 | /* 23043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9072 | /* 23045 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9073 | /* 23047 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9074 | /* 23051 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9075 | /* 23056 */ GIR_RootConstrainSelectedInstOperands, |
| 9076 | /* 23057 */ // GIR_Coverage, 5689, |
| 9077 | /* 23057 */ GIR_EraseRootFromParent_Done, |
| 9078 | /* 23058 */ // Label 608: @23058 |
| 9079 | /* 23058 */ GIM_Try, /*On fail goto*//*Label 609*/ GIMT_Encode4(23081), // Rule ID 5686 // |
| 9080 | /* 23063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9081 | /* 23066 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9082 | /* 23070 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9083 | /* 23074 */ // (and:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPANDQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 9084 | /* 23074 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZrr), |
| 9085 | /* 23079 */ GIR_RootConstrainSelectedInstOperands, |
| 9086 | /* 23080 */ // GIR_Coverage, 5686, |
| 9087 | /* 23080 */ GIR_Done, |
| 9088 | /* 23081 */ // Label 609: @23081 |
| 9089 | /* 23081 */ GIM_Reject, |
| 9090 | /* 23082 */ // Label 606: @23082 |
| 9091 | /* 23082 */ GIM_Reject, |
| 9092 | /* 23083 */ // Label 460: @23083 |
| 9093 | /* 23083 */ GIM_Try, /*On fail goto*//*Label 610*/ GIMT_Encode4(23242), |
| 9094 | /* 23088 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 9095 | /* 23091 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 9096 | /* 23094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 9097 | /* 23098 */ GIM_Try, /*On fail goto*//*Label 611*/ GIMT_Encode4(23158), // Rule ID 4432 // |
| 9098 | /* 23103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9099 | /* 23106 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9100 | /* 23110 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9101 | /* 23114 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 9102 | /* 23118 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 9103 | /* 23122 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 9104 | /* 23127 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 9105 | /* 23131 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 9106 | /* 23137 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 9107 | /* 23139 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 9108 | /* 23143 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9109 | /* 23145 */ // (and:{ *:[v16i1] } (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, immAllOnesV:{ *:[v16i1] }), VK16:{ *:[v16i1] }:$src2) => (KANDNWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 9110 | /* 23145 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 9111 | /* 23148 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9112 | /* 23150 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 9113 | /* 23154 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 9114 | /* 23156 */ GIR_RootConstrainSelectedInstOperands, |
| 9115 | /* 23157 */ // GIR_Coverage, 4432, |
| 9116 | /* 23157 */ GIR_EraseRootFromParent_Done, |
| 9117 | /* 23158 */ // Label 611: @23158 |
| 9118 | /* 23158 */ GIM_Try, /*On fail goto*//*Label 612*/ GIMT_Encode4(23218), // Rule ID 23693 // |
| 9119 | /* 23163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9120 | /* 23166 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 9121 | /* 23170 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9122 | /* 23174 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9123 | /* 23178 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 9124 | /* 23182 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 9125 | /* 23186 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 9126 | /* 23191 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 9127 | /* 23195 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 9128 | /* 23201 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 9129 | /* 23203 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9130 | /* 23205 */ // (and:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src2, (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, immAllOnesV:{ *:[v16i1] })) => (KANDNWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 9131 | /* 23205 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 9132 | /* 23208 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9133 | /* 23210 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 9134 | /* 23214 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 9135 | /* 23216 */ GIR_RootConstrainSelectedInstOperands, |
| 9136 | /* 23217 */ // GIR_Coverage, 23693, |
| 9137 | /* 23217 */ GIR_EraseRootFromParent_Done, |
| 9138 | /* 23218 */ // Label 612: @23218 |
| 9139 | /* 23218 */ GIM_Try, /*On fail goto*//*Label 613*/ GIMT_Encode4(23241), // Rule ID 4416 // |
| 9140 | /* 23223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9141 | /* 23226 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 9142 | /* 23230 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 9143 | /* 23234 */ // (and:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) => (KANDWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 9144 | /* 23234 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KANDWkk), |
| 9145 | /* 23239 */ GIR_RootConstrainSelectedInstOperands, |
| 9146 | /* 23240 */ // GIR_Coverage, 4416, |
| 9147 | /* 23240 */ GIR_Done, |
| 9148 | /* 23241 */ // Label 613: @23241 |
| 9149 | /* 23241 */ GIM_Reject, |
| 9150 | /* 23242 */ // Label 610: @23242 |
| 9151 | /* 23242 */ GIM_Reject, |
| 9152 | /* 23243 */ // Label 461: @23243 |
| 9153 | /* 23243 */ GIM_Try, /*On fail goto*//*Label 614*/ GIMT_Encode4(23584), |
| 9154 | /* 23248 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 9155 | /* 23251 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 9156 | /* 23254 */ GIM_Try, /*On fail goto*//*Label 615*/ GIMT_Encode4(23316), // Rule ID 25251 // |
| 9157 | /* 23259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 9158 | /* 23262 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 9159 | /* 23266 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9160 | /* 23270 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9161 | /* 23274 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9162 | /* 23277 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9163 | /* 23281 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9164 | /* 23285 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 9165 | /* 23289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9166 | /* 23291 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9167 | /* 23298 */ // (and:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPANDrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9168 | /* 23298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 9169 | /* 23301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9170 | /* 23303 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9171 | /* 23305 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9172 | /* 23309 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9173 | /* 23314 */ GIR_RootConstrainSelectedInstOperands, |
| 9174 | /* 23315 */ // GIR_Coverage, 25251, |
| 9175 | /* 23315 */ GIR_EraseRootFromParent_Done, |
| 9176 | /* 23316 */ // Label 615: @23316 |
| 9177 | /* 23316 */ GIM_Try, /*On fail goto*//*Label 616*/ GIMT_Encode4(23378), // Rule ID 25432 // |
| 9178 | /* 23321 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9179 | /* 23324 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 9180 | /* 23328 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9181 | /* 23332 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9182 | /* 23336 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9183 | /* 23339 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9184 | /* 23343 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9185 | /* 23347 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 9186 | /* 23351 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9187 | /* 23353 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9188 | /* 23360 */ // (and:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPANDQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9189 | /* 23360 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 9190 | /* 23363 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9191 | /* 23365 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9192 | /* 23367 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9193 | /* 23371 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9194 | /* 23376 */ GIR_RootConstrainSelectedInstOperands, |
| 9195 | /* 23377 */ // GIR_Coverage, 25432, |
| 9196 | /* 23377 */ GIR_EraseRootFromParent_Done, |
| 9197 | /* 23378 */ // Label 616: @23378 |
| 9198 | /* 23378 */ GIM_Try, /*On fail goto*//*Label 617*/ GIMT_Encode4(23440), // Rule ID 18158 // |
| 9199 | /* 23383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 9200 | /* 23386 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 9201 | /* 23390 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 9202 | /* 23394 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9203 | /* 23398 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9204 | /* 23402 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9205 | /* 23405 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9206 | /* 23409 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9207 | /* 23413 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9208 | /* 23415 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9209 | /* 23422 */ // (and:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9210 | /* 23422 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 9211 | /* 23425 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9212 | /* 23427 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9213 | /* 23429 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9214 | /* 23433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9215 | /* 23438 */ GIR_RootConstrainSelectedInstOperands, |
| 9216 | /* 23439 */ // GIR_Coverage, 18158, |
| 9217 | /* 23439 */ GIR_EraseRootFromParent_Done, |
| 9218 | /* 23440 */ // Label 617: @23440 |
| 9219 | /* 23440 */ GIM_Try, /*On fail goto*//*Label 618*/ GIMT_Encode4(23502), // Rule ID 20024 // |
| 9220 | /* 23445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9221 | /* 23448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 9222 | /* 23452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 9223 | /* 23456 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9224 | /* 23460 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9225 | /* 23464 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9226 | /* 23467 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9227 | /* 23471 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9228 | /* 23475 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9229 | /* 23477 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9230 | /* 23484 */ // (and:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9231 | /* 23484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 9232 | /* 23487 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9233 | /* 23489 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9234 | /* 23491 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9235 | /* 23495 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9236 | /* 23500 */ GIR_RootConstrainSelectedInstOperands, |
| 9237 | /* 23501 */ // GIR_Coverage, 20024, |
| 9238 | /* 23501 */ GIR_EraseRootFromParent_Done, |
| 9239 | /* 23502 */ // Label 618: @23502 |
| 9240 | /* 23502 */ GIM_Try, /*On fail goto*//*Label 619*/ GIMT_Encode4(23529), // Rule ID 18146 // |
| 9241 | /* 23507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 9242 | /* 23510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 9243 | /* 23514 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 9244 | /* 23518 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 9245 | /* 23522 */ // (and:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPANDrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 9246 | /* 23522 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDrr), |
| 9247 | /* 23527 */ GIR_RootConstrainSelectedInstOperands, |
| 9248 | /* 23528 */ // GIR_Coverage, 18146, |
| 9249 | /* 23528 */ GIR_Done, |
| 9250 | /* 23529 */ // Label 619: @23529 |
| 9251 | /* 23529 */ GIM_Try, /*On fail goto*//*Label 620*/ GIMT_Encode4(23556), // Rule ID 18170 // |
| 9252 | /* 23534 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 9253 | /* 23537 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 9254 | /* 23541 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 9255 | /* 23545 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 9256 | /* 23549 */ // (and:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PANDrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 9257 | /* 23549 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PANDrr), |
| 9258 | /* 23554 */ GIR_RootConstrainSelectedInstOperands, |
| 9259 | /* 23555 */ // GIR_Coverage, 18170, |
| 9260 | /* 23555 */ GIR_Done, |
| 9261 | /* 23556 */ // Label 620: @23556 |
| 9262 | /* 23556 */ GIM_Try, /*On fail goto*//*Label 621*/ GIMT_Encode4(23583), // Rule ID 20016 // |
| 9263 | /* 23561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9264 | /* 23564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 9265 | /* 23568 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 9266 | /* 23572 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 9267 | /* 23576 */ // (and:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPANDQZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 9268 | /* 23576 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rr), |
| 9269 | /* 23581 */ GIR_RootConstrainSelectedInstOperands, |
| 9270 | /* 23582 */ // GIR_Coverage, 20016, |
| 9271 | /* 23582 */ GIR_Done, |
| 9272 | /* 23583 */ // Label 621: @23583 |
| 9273 | /* 23583 */ GIM_Reject, |
| 9274 | /* 23584 */ // Label 614: @23584 |
| 9275 | /* 23584 */ GIM_Reject, |
| 9276 | /* 23585 */ // Label 462: @23585 |
| 9277 | /* 23585 */ GIM_Try, /*On fail goto*//*Label 622*/ GIMT_Encode4(24050), |
| 9278 | /* 23590 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 9279 | /* 23593 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 9280 | /* 23596 */ GIM_Try, /*On fail goto*//*Label 623*/ GIMT_Encode4(23658), // Rule ID 25231 // |
| 9281 | /* 23601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 9282 | /* 23604 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9283 | /* 23608 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9284 | /* 23612 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9285 | /* 23616 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9286 | /* 23619 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9287 | /* 23623 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9288 | /* 23627 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9289 | /* 23631 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9290 | /* 23633 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9291 | /* 23640 */ // (and:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPANDYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9292 | /* 23640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 9293 | /* 23643 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9294 | /* 23645 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9295 | /* 23647 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9296 | /* 23651 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9297 | /* 23656 */ GIR_RootConstrainSelectedInstOperands, |
| 9298 | /* 23657 */ // GIR_Coverage, 25231, |
| 9299 | /* 23657 */ GIR_EraseRootFromParent_Done, |
| 9300 | /* 23658 */ // Label 623: @23658 |
| 9301 | /* 23658 */ GIM_Try, /*On fail goto*//*Label 624*/ GIMT_Encode4(23720), // Rule ID 25240 // |
| 9302 | /* 23663 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 9303 | /* 23666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9304 | /* 23670 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9305 | /* 23674 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9306 | /* 23678 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9307 | /* 23681 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9308 | /* 23685 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9309 | /* 23689 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9310 | /* 23693 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9311 | /* 23695 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9312 | /* 23702 */ // (and:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VANDPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9313 | /* 23702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 9314 | /* 23705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9315 | /* 23707 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9316 | /* 23709 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9317 | /* 23713 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9318 | /* 23718 */ GIR_RootConstrainSelectedInstOperands, |
| 9319 | /* 23719 */ // GIR_Coverage, 25240, |
| 9320 | /* 23719 */ GIR_EraseRootFromParent_Done, |
| 9321 | /* 23720 */ // Label 624: @23720 |
| 9322 | /* 23720 */ GIM_Try, /*On fail goto*//*Label 625*/ GIMT_Encode4(23782), // Rule ID 25439 // |
| 9323 | /* 23725 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9324 | /* 23728 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9325 | /* 23732 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9326 | /* 23736 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9327 | /* 23740 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9328 | /* 23743 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9329 | /* 23747 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9330 | /* 23751 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9331 | /* 23755 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9332 | /* 23757 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9333 | /* 23764 */ // (and:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPANDQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9334 | /* 23764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 9335 | /* 23767 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9336 | /* 23769 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9337 | /* 23771 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9338 | /* 23775 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9339 | /* 23780 */ GIR_RootConstrainSelectedInstOperands, |
| 9340 | /* 23781 */ // GIR_Coverage, 25439, |
| 9341 | /* 23781 */ GIR_EraseRootFromParent_Done, |
| 9342 | /* 23782 */ // Label 625: @23782 |
| 9343 | /* 23782 */ GIM_Try, /*On fail goto*//*Label 626*/ GIMT_Encode4(23844), // Rule ID 18103 // |
| 9344 | /* 23787 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 9345 | /* 23790 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9346 | /* 23794 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9347 | /* 23798 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9348 | /* 23802 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9349 | /* 23806 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9350 | /* 23809 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9351 | /* 23813 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9352 | /* 23817 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9353 | /* 23819 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9354 | /* 23826 */ // (and:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9355 | /* 23826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 9356 | /* 23829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9357 | /* 23831 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9358 | /* 23833 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9359 | /* 23837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9360 | /* 23842 */ GIR_RootConstrainSelectedInstOperands, |
| 9361 | /* 23843 */ // GIR_Coverage, 18103, |
| 9362 | /* 23843 */ GIR_EraseRootFromParent_Done, |
| 9363 | /* 23844 */ // Label 626: @23844 |
| 9364 | /* 23844 */ GIM_Try, /*On fail goto*//*Label 627*/ GIMT_Encode4(23906), // Rule ID 18131 // |
| 9365 | /* 23849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 9366 | /* 23852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9367 | /* 23856 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9368 | /* 23860 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9369 | /* 23864 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9370 | /* 23868 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9371 | /* 23871 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9372 | /* 23875 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9373 | /* 23879 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9374 | /* 23881 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9375 | /* 23888 */ // (and:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VANDPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9376 | /* 23888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 9377 | /* 23891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9378 | /* 23893 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9379 | /* 23895 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9380 | /* 23899 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9381 | /* 23904 */ GIR_RootConstrainSelectedInstOperands, |
| 9382 | /* 23905 */ // GIR_Coverage, 18131, |
| 9383 | /* 23905 */ GIR_EraseRootFromParent_Done, |
| 9384 | /* 23906 */ // Label 627: @23906 |
| 9385 | /* 23906 */ GIM_Try, /*On fail goto*//*Label 628*/ GIMT_Encode4(23968), // Rule ID 20041 // |
| 9386 | /* 23911 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9387 | /* 23914 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9388 | /* 23918 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9389 | /* 23922 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9390 | /* 23926 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9391 | /* 23930 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9392 | /* 23933 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9393 | /* 23937 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9394 | /* 23941 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9395 | /* 23943 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9396 | /* 23950 */ // (and:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9397 | /* 23950 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 9398 | /* 23953 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9399 | /* 23955 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9400 | /* 23957 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9401 | /* 23961 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9402 | /* 23966 */ GIR_RootConstrainSelectedInstOperands, |
| 9403 | /* 23967 */ // GIR_Coverage, 20041, |
| 9404 | /* 23967 */ GIR_EraseRootFromParent_Done, |
| 9405 | /* 23968 */ // Label 628: @23968 |
| 9406 | /* 23968 */ GIM_Try, /*On fail goto*//*Label 629*/ GIMT_Encode4(23995), // Rule ID 18091 // |
| 9407 | /* 23973 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 9408 | /* 23976 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9409 | /* 23980 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9410 | /* 23984 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9411 | /* 23988 */ // (and:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPANDYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 9412 | /* 23988 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDYrr), |
| 9413 | /* 23993 */ GIR_RootConstrainSelectedInstOperands, |
| 9414 | /* 23994 */ // GIR_Coverage, 18091, |
| 9415 | /* 23994 */ GIR_Done, |
| 9416 | /* 23995 */ // Label 629: @23995 |
| 9417 | /* 23995 */ GIM_Try, /*On fail goto*//*Label 630*/ GIMT_Encode4(24022), // Rule ID 18115 // |
| 9418 | /* 24000 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 9419 | /* 24003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9420 | /* 24007 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9421 | /* 24011 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9422 | /* 24015 */ // (and:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VANDPSYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 9423 | /* 24015 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VANDPSYrr), |
| 9424 | /* 24020 */ GIR_RootConstrainSelectedInstOperands, |
| 9425 | /* 24021 */ // GIR_Coverage, 18115, |
| 9426 | /* 24021 */ GIR_Done, |
| 9427 | /* 24022 */ // Label 630: @24022 |
| 9428 | /* 24022 */ GIM_Try, /*On fail goto*//*Label 631*/ GIMT_Encode4(24049), // Rule ID 20033 // |
| 9429 | /* 24027 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9430 | /* 24030 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9431 | /* 24034 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9432 | /* 24038 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9433 | /* 24042 */ // (and:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPANDQZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 9434 | /* 24042 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rr), |
| 9435 | /* 24047 */ GIR_RootConstrainSelectedInstOperands, |
| 9436 | /* 24048 */ // GIR_Coverage, 20033, |
| 9437 | /* 24048 */ GIR_Done, |
| 9438 | /* 24049 */ // Label 631: @24049 |
| 9439 | /* 24049 */ GIM_Reject, |
| 9440 | /* 24050 */ // Label 622: @24050 |
| 9441 | /* 24050 */ GIM_Reject, |
| 9442 | /* 24051 */ // Label 463: @24051 |
| 9443 | /* 24051 */ GIM_Try, /*On fail goto*//*Label 632*/ GIMT_Encode4(24206), |
| 9444 | /* 24056 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 9445 | /* 24059 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 9446 | /* 24062 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9447 | /* 24066 */ GIM_Try, /*On fail goto*//*Label 633*/ GIMT_Encode4(24124), // Rule ID 24155 // |
| 9448 | /* 24071 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9449 | /* 24074 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9450 | /* 24078 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9451 | /* 24082 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9452 | /* 24085 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9453 | /* 24089 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9454 | /* 24093 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9455 | /* 24097 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9456 | /* 24099 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9457 | /* 24106 */ // (and:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPANDDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9458 | /* 24106 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZrm), |
| 9459 | /* 24109 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9460 | /* 24111 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9461 | /* 24113 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9462 | /* 24117 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9463 | /* 24122 */ GIR_RootConstrainSelectedInstOperands, |
| 9464 | /* 24123 */ // GIR_Coverage, 24155, |
| 9465 | /* 24123 */ GIR_EraseRootFromParent_Done, |
| 9466 | /* 24124 */ // Label 633: @24124 |
| 9467 | /* 24124 */ GIM_Try, /*On fail goto*//*Label 634*/ GIMT_Encode4(24182), // Rule ID 5716 // |
| 9468 | /* 24129 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9469 | /* 24132 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9470 | /* 24136 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9471 | /* 24140 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9472 | /* 24144 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9473 | /* 24147 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9474 | /* 24151 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9475 | /* 24155 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9476 | /* 24157 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9477 | /* 24164 */ // (and:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9478 | /* 24164 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZrm), |
| 9479 | /* 24167 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9480 | /* 24169 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9481 | /* 24171 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9482 | /* 24175 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9483 | /* 24180 */ GIR_RootConstrainSelectedInstOperands, |
| 9484 | /* 24181 */ // GIR_Coverage, 5716, |
| 9485 | /* 24181 */ GIR_EraseRootFromParent_Done, |
| 9486 | /* 24182 */ // Label 634: @24182 |
| 9487 | /* 24182 */ GIM_Try, /*On fail goto*//*Label 635*/ GIMT_Encode4(24205), // Rule ID 5713 // |
| 9488 | /* 24187 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9489 | /* 24190 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9490 | /* 24194 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9491 | /* 24198 */ // (and:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPANDDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 9492 | /* 24198 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDDZrr), |
| 9493 | /* 24203 */ GIR_RootConstrainSelectedInstOperands, |
| 9494 | /* 24204 */ // GIR_Coverage, 5713, |
| 9495 | /* 24204 */ GIR_Done, |
| 9496 | /* 24205 */ // Label 635: @24205 |
| 9497 | /* 24205 */ GIM_Reject, |
| 9498 | /* 24206 */ // Label 632: @24206 |
| 9499 | /* 24206 */ GIM_Reject, |
| 9500 | /* 24207 */ // Label 464: @24207 |
| 9501 | /* 24207 */ GIM_Try, /*On fail goto*//*Label 636*/ GIMT_Encode4(24366), |
| 9502 | /* 24212 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 9503 | /* 24215 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 9504 | /* 24218 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 9505 | /* 24222 */ GIM_Try, /*On fail goto*//*Label 637*/ GIMT_Encode4(24282), // Rule ID 4433 // |
| 9506 | /* 24227 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 9507 | /* 24230 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9508 | /* 24234 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9509 | /* 24238 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v32s1, |
| 9510 | /* 24242 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v32s1, |
| 9511 | /* 24246 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 9512 | /* 24251 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 9513 | /* 24255 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 9514 | /* 24261 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 9515 | /* 24263 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 9516 | /* 24267 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9517 | /* 24269 */ // (and:{ *:[v32i1] } (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, immAllOnesV:{ *:[v32i1] }), VK32:{ *:[v32i1] }:$src2) => (KANDNDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 9518 | /* 24269 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNDkk), |
| 9519 | /* 24272 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9520 | /* 24274 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 9521 | /* 24278 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 9522 | /* 24280 */ GIR_RootConstrainSelectedInstOperands, |
| 9523 | /* 24281 */ // GIR_Coverage, 4433, |
| 9524 | /* 24281 */ GIR_EraseRootFromParent_Done, |
| 9525 | /* 24282 */ // Label 637: @24282 |
| 9526 | /* 24282 */ GIM_Try, /*On fail goto*//*Label 638*/ GIMT_Encode4(24342), // Rule ID 23694 // |
| 9527 | /* 24287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 9528 | /* 24290 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 9529 | /* 24294 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9530 | /* 24298 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9531 | /* 24302 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v32s1, |
| 9532 | /* 24306 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v32s1, |
| 9533 | /* 24310 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 9534 | /* 24315 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 9535 | /* 24319 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 9536 | /* 24325 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 9537 | /* 24327 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9538 | /* 24329 */ // (and:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src2, (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, immAllOnesV:{ *:[v32i1] })) => (KANDNDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 9539 | /* 24329 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNDkk), |
| 9540 | /* 24332 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9541 | /* 24334 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 9542 | /* 24338 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 9543 | /* 24340 */ GIR_RootConstrainSelectedInstOperands, |
| 9544 | /* 24341 */ // GIR_Coverage, 23694, |
| 9545 | /* 24341 */ GIR_EraseRootFromParent_Done, |
| 9546 | /* 24342 */ // Label 638: @24342 |
| 9547 | /* 24342 */ GIM_Try, /*On fail goto*//*Label 639*/ GIMT_Encode4(24365), // Rule ID 4417 // |
| 9548 | /* 24347 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 9549 | /* 24350 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 9550 | /* 24354 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 9551 | /* 24358 */ // (and:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) => (KANDDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 9552 | /* 24358 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KANDDkk), |
| 9553 | /* 24363 */ GIR_RootConstrainSelectedInstOperands, |
| 9554 | /* 24364 */ // GIR_Coverage, 4417, |
| 9555 | /* 24364 */ GIR_Done, |
| 9556 | /* 24365 */ // Label 639: @24365 |
| 9557 | /* 24365 */ GIM_Reject, |
| 9558 | /* 24366 */ // Label 636: @24366 |
| 9559 | /* 24366 */ GIM_Reject, |
| 9560 | /* 24367 */ // Label 465: @24367 |
| 9561 | /* 24367 */ GIM_Try, /*On fail goto*//*Label 640*/ GIMT_Encode4(24832), |
| 9562 | /* 24372 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 9563 | /* 24375 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 9564 | /* 24378 */ GIM_Try, /*On fail goto*//*Label 641*/ GIMT_Encode4(24440), // Rule ID 25230 // |
| 9565 | /* 24383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 9566 | /* 24386 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9567 | /* 24390 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9568 | /* 24394 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9569 | /* 24398 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9570 | /* 24401 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9571 | /* 24405 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9572 | /* 24409 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9573 | /* 24413 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9574 | /* 24415 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9575 | /* 24422 */ // (and:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPANDYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9576 | /* 24422 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 9577 | /* 24425 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9578 | /* 24427 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9579 | /* 24429 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9580 | /* 24433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9581 | /* 24438 */ GIR_RootConstrainSelectedInstOperands, |
| 9582 | /* 24439 */ // GIR_Coverage, 25230, |
| 9583 | /* 24439 */ GIR_EraseRootFromParent_Done, |
| 9584 | /* 24440 */ // Label 641: @24440 |
| 9585 | /* 24440 */ GIM_Try, /*On fail goto*//*Label 642*/ GIMT_Encode4(24502), // Rule ID 25239 // |
| 9586 | /* 24445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 9587 | /* 24448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9588 | /* 24452 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9589 | /* 24456 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9590 | /* 24460 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9591 | /* 24463 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9592 | /* 24467 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9593 | /* 24471 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9594 | /* 24475 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9595 | /* 24477 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9596 | /* 24484 */ // (and:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VANDPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9597 | /* 24484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 9598 | /* 24487 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9599 | /* 24489 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9600 | /* 24491 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9601 | /* 24495 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9602 | /* 24500 */ GIR_RootConstrainSelectedInstOperands, |
| 9603 | /* 24501 */ // GIR_Coverage, 25239, |
| 9604 | /* 24501 */ GIR_EraseRootFromParent_Done, |
| 9605 | /* 24502 */ // Label 642: @24502 |
| 9606 | /* 24502 */ GIM_Try, /*On fail goto*//*Label 643*/ GIMT_Encode4(24564), // Rule ID 25438 // |
| 9607 | /* 24507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9608 | /* 24510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9609 | /* 24514 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9610 | /* 24518 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9611 | /* 24522 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9612 | /* 24525 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9613 | /* 24529 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9614 | /* 24533 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9615 | /* 24537 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9616 | /* 24539 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9617 | /* 24546 */ // (and:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPANDQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9618 | /* 24546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 9619 | /* 24549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9620 | /* 24551 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9621 | /* 24553 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9622 | /* 24557 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9623 | /* 24562 */ GIR_RootConstrainSelectedInstOperands, |
| 9624 | /* 24563 */ // GIR_Coverage, 25438, |
| 9625 | /* 24563 */ GIR_EraseRootFromParent_Done, |
| 9626 | /* 24564 */ // Label 643: @24564 |
| 9627 | /* 24564 */ GIM_Try, /*On fail goto*//*Label 644*/ GIMT_Encode4(24626), // Rule ID 18102 // |
| 9628 | /* 24569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 9629 | /* 24572 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9630 | /* 24576 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9631 | /* 24580 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9632 | /* 24584 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9633 | /* 24588 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9634 | /* 24591 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9635 | /* 24595 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9636 | /* 24599 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9637 | /* 24601 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9638 | /* 24608 */ // (and:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9639 | /* 24608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 9640 | /* 24611 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9641 | /* 24613 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9642 | /* 24615 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9643 | /* 24619 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9644 | /* 24624 */ GIR_RootConstrainSelectedInstOperands, |
| 9645 | /* 24625 */ // GIR_Coverage, 18102, |
| 9646 | /* 24625 */ GIR_EraseRootFromParent_Done, |
| 9647 | /* 24626 */ // Label 644: @24626 |
| 9648 | /* 24626 */ GIM_Try, /*On fail goto*//*Label 645*/ GIMT_Encode4(24688), // Rule ID 18130 // |
| 9649 | /* 24631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 9650 | /* 24634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9651 | /* 24638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9652 | /* 24642 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9653 | /* 24646 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9654 | /* 24650 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9655 | /* 24653 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9656 | /* 24657 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9657 | /* 24661 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9658 | /* 24663 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9659 | /* 24670 */ // (and:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VANDPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9660 | /* 24670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 9661 | /* 24673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9662 | /* 24675 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9663 | /* 24677 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9664 | /* 24681 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9665 | /* 24686 */ GIR_RootConstrainSelectedInstOperands, |
| 9666 | /* 24687 */ // GIR_Coverage, 18130, |
| 9667 | /* 24687 */ GIR_EraseRootFromParent_Done, |
| 9668 | /* 24688 */ // Label 645: @24688 |
| 9669 | /* 24688 */ GIM_Try, /*On fail goto*//*Label 646*/ GIMT_Encode4(24750), // Rule ID 20040 // |
| 9670 | /* 24693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9671 | /* 24696 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9672 | /* 24700 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9673 | /* 24704 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9674 | /* 24708 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9675 | /* 24712 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9676 | /* 24715 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9677 | /* 24719 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9678 | /* 24723 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9679 | /* 24725 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9680 | /* 24732 */ // (and:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9681 | /* 24732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 9682 | /* 24735 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9683 | /* 24737 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9684 | /* 24739 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9685 | /* 24743 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9686 | /* 24748 */ GIR_RootConstrainSelectedInstOperands, |
| 9687 | /* 24749 */ // GIR_Coverage, 20040, |
| 9688 | /* 24749 */ GIR_EraseRootFromParent_Done, |
| 9689 | /* 24750 */ // Label 646: @24750 |
| 9690 | /* 24750 */ GIM_Try, /*On fail goto*//*Label 647*/ GIMT_Encode4(24777), // Rule ID 18090 // |
| 9691 | /* 24755 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 9692 | /* 24758 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9693 | /* 24762 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9694 | /* 24766 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9695 | /* 24770 */ // (and:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPANDYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 9696 | /* 24770 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDYrr), |
| 9697 | /* 24775 */ GIR_RootConstrainSelectedInstOperands, |
| 9698 | /* 24776 */ // GIR_Coverage, 18090, |
| 9699 | /* 24776 */ GIR_Done, |
| 9700 | /* 24777 */ // Label 647: @24777 |
| 9701 | /* 24777 */ GIM_Try, /*On fail goto*//*Label 648*/ GIMT_Encode4(24804), // Rule ID 18114 // |
| 9702 | /* 24782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 9703 | /* 24785 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9704 | /* 24789 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9705 | /* 24793 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9706 | /* 24797 */ // (and:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VANDPSYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 9707 | /* 24797 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VANDPSYrr), |
| 9708 | /* 24802 */ GIR_RootConstrainSelectedInstOperands, |
| 9709 | /* 24803 */ // GIR_Coverage, 18114, |
| 9710 | /* 24803 */ GIR_Done, |
| 9711 | /* 24804 */ // Label 648: @24804 |
| 9712 | /* 24804 */ GIM_Try, /*On fail goto*//*Label 649*/ GIMT_Encode4(24831), // Rule ID 20032 // |
| 9713 | /* 24809 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9714 | /* 24812 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9715 | /* 24816 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9716 | /* 24820 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9717 | /* 24824 */ // (and:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPANDQZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 9718 | /* 24824 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rr), |
| 9719 | /* 24829 */ GIR_RootConstrainSelectedInstOperands, |
| 9720 | /* 24830 */ // GIR_Coverage, 20032, |
| 9721 | /* 24830 */ GIR_Done, |
| 9722 | /* 24831 */ // Label 649: @24831 |
| 9723 | /* 24831 */ GIM_Reject, |
| 9724 | /* 24832 */ // Label 640: @24832 |
| 9725 | /* 24832 */ GIM_Reject, |
| 9726 | /* 24833 */ // Label 466: @24833 |
| 9727 | /* 24833 */ GIM_Try, /*On fail goto*//*Label 650*/ GIMT_Encode4(24988), |
| 9728 | /* 24838 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 9729 | /* 24841 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 9730 | /* 24844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9731 | /* 24848 */ GIM_Try, /*On fail goto*//*Label 651*/ GIMT_Encode4(24906), // Rule ID 25445 // |
| 9732 | /* 24853 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9733 | /* 24856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9734 | /* 24860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9735 | /* 24864 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9736 | /* 24867 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9737 | /* 24871 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9738 | /* 24875 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9739 | /* 24879 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9740 | /* 24881 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9741 | /* 24888 */ // (and:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPANDQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9742 | /* 24888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 9743 | /* 24891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9744 | /* 24893 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9745 | /* 24895 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9746 | /* 24899 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9747 | /* 24904 */ GIR_RootConstrainSelectedInstOperands, |
| 9748 | /* 24905 */ // GIR_Coverage, 25445, |
| 9749 | /* 24905 */ GIR_EraseRootFromParent_Done, |
| 9750 | /* 24906 */ // Label 651: @24906 |
| 9751 | /* 24906 */ GIM_Try, /*On fail goto*//*Label 652*/ GIMT_Encode4(24964), // Rule ID 20057 // |
| 9752 | /* 24911 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9753 | /* 24914 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9754 | /* 24918 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9755 | /* 24922 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9756 | /* 24926 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9757 | /* 24929 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9758 | /* 24933 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9759 | /* 24937 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9760 | /* 24939 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9761 | /* 24946 */ // (and:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9762 | /* 24946 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 9763 | /* 24949 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9764 | /* 24951 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9765 | /* 24953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9766 | /* 24957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9767 | /* 24962 */ GIR_RootConstrainSelectedInstOperands, |
| 9768 | /* 24963 */ // GIR_Coverage, 20057, |
| 9769 | /* 24963 */ GIR_EraseRootFromParent_Done, |
| 9770 | /* 24964 */ // Label 652: @24964 |
| 9771 | /* 24964 */ GIM_Try, /*On fail goto*//*Label 653*/ GIMT_Encode4(24987), // Rule ID 20049 // |
| 9772 | /* 24969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9773 | /* 24972 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9774 | /* 24976 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9775 | /* 24980 */ // (and:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPANDQZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 9776 | /* 24980 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZrr), |
| 9777 | /* 24985 */ GIR_RootConstrainSelectedInstOperands, |
| 9778 | /* 24986 */ // GIR_Coverage, 20049, |
| 9779 | /* 24986 */ GIR_Done, |
| 9780 | /* 24987 */ // Label 653: @24987 |
| 9781 | /* 24987 */ GIM_Reject, |
| 9782 | /* 24988 */ // Label 650: @24988 |
| 9783 | /* 24988 */ GIM_Reject, |
| 9784 | /* 24989 */ // Label 467: @24989 |
| 9785 | /* 24989 */ GIM_Try, /*On fail goto*//*Label 654*/ GIMT_Encode4(25148), |
| 9786 | /* 24994 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 9787 | /* 24997 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s1, |
| 9788 | /* 25000 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9789 | /* 25004 */ GIM_Try, /*On fail goto*//*Label 655*/ GIMT_Encode4(25064), // Rule ID 4434 // |
| 9790 | /* 25009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 9791 | /* 25012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9792 | /* 25016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9793 | /* 25020 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v64s1, |
| 9794 | /* 25024 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v64s1, |
| 9795 | /* 25028 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9796 | /* 25033 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 9797 | /* 25037 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 9798 | /* 25043 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 9799 | /* 25045 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9800 | /* 25049 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9801 | /* 25051 */ // (and:{ *:[v64i1] } (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, immAllOnesV:{ *:[v64i1] }), VK64:{ *:[v64i1] }:$src2) => (KANDNQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 9802 | /* 25051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNQkk), |
| 9803 | /* 25054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9804 | /* 25056 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 9805 | /* 25060 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 9806 | /* 25062 */ GIR_RootConstrainSelectedInstOperands, |
| 9807 | /* 25063 */ // GIR_Coverage, 4434, |
| 9808 | /* 25063 */ GIR_EraseRootFromParent_Done, |
| 9809 | /* 25064 */ // Label 655: @25064 |
| 9810 | /* 25064 */ GIM_Try, /*On fail goto*//*Label 656*/ GIMT_Encode4(25124), // Rule ID 23695 // |
| 9811 | /* 25069 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 9812 | /* 25072 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9813 | /* 25076 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9814 | /* 25080 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9815 | /* 25084 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v64s1, |
| 9816 | /* 25088 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v64s1, |
| 9817 | /* 25092 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9818 | /* 25097 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 9819 | /* 25101 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 9820 | /* 25107 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 9821 | /* 25109 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9822 | /* 25111 */ // (and:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src2, (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, immAllOnesV:{ *:[v64i1] })) => (KANDNQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 9823 | /* 25111 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNQkk), |
| 9824 | /* 25114 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9825 | /* 25116 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 9826 | /* 25120 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 9827 | /* 25122 */ GIR_RootConstrainSelectedInstOperands, |
| 9828 | /* 25123 */ // GIR_Coverage, 23695, |
| 9829 | /* 25123 */ GIR_EraseRootFromParent_Done, |
| 9830 | /* 25124 */ // Label 656: @25124 |
| 9831 | /* 25124 */ GIM_Try, /*On fail goto*//*Label 657*/ GIMT_Encode4(25147), // Rule ID 4418 // |
| 9832 | /* 25129 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 9833 | /* 25132 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9834 | /* 25136 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9835 | /* 25140 */ // (and:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) => (KANDQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 9836 | /* 25140 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KANDQkk), |
| 9837 | /* 25145 */ GIR_RootConstrainSelectedInstOperands, |
| 9838 | /* 25146 */ // GIR_Coverage, 4418, |
| 9839 | /* 25146 */ GIR_Done, |
| 9840 | /* 25147 */ // Label 657: @25147 |
| 9841 | /* 25147 */ GIM_Reject, |
| 9842 | /* 25148 */ // Label 654: @25148 |
| 9843 | /* 25148 */ GIM_Reject, |
| 9844 | /* 25149 */ // Label 468: @25149 |
| 9845 | /* 25149 */ GIM_Try, /*On fail goto*//*Label 658*/ GIMT_Encode4(25304), |
| 9846 | /* 25154 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 9847 | /* 25157 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 9848 | /* 25160 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9849 | /* 25164 */ GIM_Try, /*On fail goto*//*Label 659*/ GIMT_Encode4(25222), // Rule ID 25444 // |
| 9850 | /* 25169 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9851 | /* 25172 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9852 | /* 25176 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9853 | /* 25180 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9854 | /* 25183 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9855 | /* 25187 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9856 | /* 25191 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9857 | /* 25195 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9858 | /* 25197 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9859 | /* 25204 */ // (and:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPANDQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9860 | /* 25204 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 9861 | /* 25207 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9862 | /* 25209 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9863 | /* 25211 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9864 | /* 25215 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9865 | /* 25220 */ GIR_RootConstrainSelectedInstOperands, |
| 9866 | /* 25221 */ // GIR_Coverage, 25444, |
| 9867 | /* 25221 */ GIR_EraseRootFromParent_Done, |
| 9868 | /* 25222 */ // Label 659: @25222 |
| 9869 | /* 25222 */ GIM_Try, /*On fail goto*//*Label 660*/ GIMT_Encode4(25280), // Rule ID 20056 // |
| 9870 | /* 25227 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9871 | /* 25230 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9872 | /* 25234 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9873 | /* 25238 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9874 | /* 25242 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9875 | /* 25245 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9876 | /* 25249 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9877 | /* 25253 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9878 | /* 25255 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9879 | /* 25262 */ // (and:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9880 | /* 25262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 9881 | /* 25265 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9882 | /* 25267 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9883 | /* 25269 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9884 | /* 25273 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9885 | /* 25278 */ GIR_RootConstrainSelectedInstOperands, |
| 9886 | /* 25279 */ // GIR_Coverage, 20056, |
| 9887 | /* 25279 */ GIR_EraseRootFromParent_Done, |
| 9888 | /* 25280 */ // Label 660: @25280 |
| 9889 | /* 25280 */ GIM_Try, /*On fail goto*//*Label 661*/ GIMT_Encode4(25303), // Rule ID 20048 // |
| 9890 | /* 25285 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9891 | /* 25288 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9892 | /* 25292 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9893 | /* 25296 */ // (and:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPANDQZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 9894 | /* 25296 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZrr), |
| 9895 | /* 25301 */ GIR_RootConstrainSelectedInstOperands, |
| 9896 | /* 25302 */ // GIR_Coverage, 20048, |
| 9897 | /* 25302 */ GIR_Done, |
| 9898 | /* 25303 */ // Label 661: @25303 |
| 9899 | /* 25303 */ GIM_Reject, |
| 9900 | /* 25304 */ // Label 658: @25304 |
| 9901 | /* 25304 */ GIM_Reject, |
| 9902 | /* 25305 */ // Label 469: @25305 |
| 9903 | /* 25305 */ GIM_Reject, |
| 9904 | /* 25306 */ // Label 4: @25306 |
| 9905 | /* 25306 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(25), /*)*//*default:*//*Label 685*/ GIMT_Encode4(33709), |
| 9906 | /* 25317 */ /*GILLT_s1*//*Label 662*/ GIMT_Encode4(25417), |
| 9907 | /* 25321 */ /*GILLT_s8*//*Label 663*/ GIMT_Encode4(25517), |
| 9908 | /* 25325 */ /*GILLT_s16*//*Label 664*/ GIMT_Encode4(25910), |
| 9909 | /* 25329 */ /*GILLT_s32*//*Label 665*/ GIMT_Encode4(26507), |
| 9910 | /* 25333 */ /*GILLT_s64*//*Label 666*/ GIMT_Encode4(27963), GIMT_Encode4(0), GIMT_Encode4(0), |
| 9911 | /* 25345 */ /*GILLT_v2s1*//*Label 667*/ GIMT_Encode4(29427), |
| 9912 | /* 25349 */ /*GILLT_v2s64*//*Label 668*/ GIMT_Encode4(29527), |
| 9913 | /* 25353 */ /*GILLT_v4s1*//*Label 669*/ GIMT_Encode4(29869), |
| 9914 | /* 25357 */ /*GILLT_v4s32*//*Label 670*/ GIMT_Encode4(29969), |
| 9915 | /* 25361 */ /*GILLT_v4s64*//*Label 671*/ GIMT_Encode4(30311), |
| 9916 | /* 25365 */ /*GILLT_v8s1*//*Label 672*/ GIMT_Encode4(30777), |
| 9917 | /* 25369 */ /*GILLT_v8s16*//*Label 673*/ GIMT_Encode4(30901), |
| 9918 | /* 25373 */ /*GILLT_v8s32*//*Label 674*/ GIMT_Encode4(31243), |
| 9919 | /* 25377 */ /*GILLT_v8s64*//*Label 675*/ GIMT_Encode4(31709), |
| 9920 | /* 25381 */ /*GILLT_v16s1*//*Label 676*/ GIMT_Encode4(31865), |
| 9921 | /* 25385 */ /*GILLT_v16s8*//*Label 677*/ GIMT_Encode4(31899), |
| 9922 | /* 25389 */ /*GILLT_v16s16*//*Label 678*/ GIMT_Encode4(32241), |
| 9923 | /* 25393 */ /*GILLT_v16s32*//*Label 679*/ GIMT_Encode4(32707), |
| 9924 | /* 25397 */ /*GILLT_v32s1*//*Label 680*/ GIMT_Encode4(32863), |
| 9925 | /* 25401 */ /*GILLT_v32s8*//*Label 681*/ GIMT_Encode4(32897), |
| 9926 | /* 25405 */ /*GILLT_v32s16*//*Label 682*/ GIMT_Encode4(33363), |
| 9927 | /* 25409 */ /*GILLT_v64s1*//*Label 683*/ GIMT_Encode4(33519), |
| 9928 | /* 25413 */ /*GILLT_v64s8*//*Label 684*/ GIMT_Encode4(33553), |
| 9929 | /* 25417 */ // Label 662: @25417 |
| 9930 | /* 25417 */ GIM_Try, /*On fail goto*//*Label 686*/ GIMT_Encode4(25516), // Rule ID 19492 // |
| 9931 | /* 25422 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s1, |
| 9932 | /* 25425 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s1, |
| 9933 | /* 25428 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 9934 | /* 25432 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 9935 | /* 25436 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 9936 | /* 25440 */ // (or:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src1, VK1:{ *:[v1i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v1i1] } (KORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src2, VK16:{ *:[i32] })), VK1:{ *:[i32] }) |
| 9937 | /* 25440 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 9938 | /* 25443 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 9939 | /* 25447 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 9940 | /* 25452 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 9941 | /* 25456 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 9942 | /* 25461 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 9943 | /* 25464 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 9944 | /* 25468 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 9945 | /* 25473 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 9946 | /* 25477 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 9947 | /* 25482 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 9948 | /* 25485 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KORWkk), |
| 9949 | /* 25489 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 9950 | /* 25494 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 9951 | /* 25497 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 9952 | /* 25500 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 9953 | /* 25502 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 9954 | /* 25505 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9955 | /* 25507 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 9956 | /* 25510 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 9957 | /* 25515 */ // GIR_Coverage, 19492, |
| 9958 | /* 25515 */ GIR_EraseRootFromParent_Done, |
| 9959 | /* 25516 */ // Label 686: @25516 |
| 9960 | /* 25516 */ GIM_Reject, |
| 9961 | /* 25517 */ // Label 663: @25517 |
| 9962 | /* 25517 */ GIM_Try, /*On fail goto*//*Label 687*/ GIMT_Encode4(25909), |
| 9963 | /* 25522 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 9964 | /* 25525 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 9965 | /* 25528 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9966 | /* 25532 */ GIM_Try, /*On fail goto*//*Label 688*/ GIMT_Encode4(25593), // Rule ID 26061 // |
| 9967 | /* 25537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9968 | /* 25540 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9969 | /* 25544 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9970 | /* 25548 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9971 | /* 25551 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9972 | /* 25555 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 9973 | /* 25559 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9974 | /* 25563 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9975 | /* 25565 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9976 | /* 25572 */ // (or:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, GR8:{ *:[i8] }:$src1) => (OR8rm:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9977 | /* 25572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8rm), |
| 9978 | /* 25575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9979 | /* 25577 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9980 | /* 25579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9981 | /* 25583 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9982 | /* 25586 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9983 | /* 25591 */ GIR_RootConstrainSelectedInstOperands, |
| 9984 | /* 25592 */ // GIR_Coverage, 26061, |
| 9985 | /* 25592 */ GIR_EraseRootFromParent_Done, |
| 9986 | /* 25593 */ // Label 688: @25593 |
| 9987 | /* 25593 */ GIM_Try, /*On fail goto*//*Label 689*/ GIMT_Encode4(25654), // Rule ID 26080 // |
| 9988 | /* 25598 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 9989 | /* 25601 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9990 | /* 25605 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9991 | /* 25609 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9992 | /* 25612 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9993 | /* 25616 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 9994 | /* 25620 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9995 | /* 25624 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9996 | /* 25626 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9997 | /* 25633 */ // (or:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, GR8:{ *:[i8] }:$src1) => (OR8rm_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9998 | /* 25633 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8rm_ND), |
| 9999 | /* 25636 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10000 | /* 25638 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10001 | /* 25640 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10002 | /* 25644 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10003 | /* 25647 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10004 | /* 25652 */ GIR_RootConstrainSelectedInstOperands, |
| 10005 | /* 25653 */ // GIR_Coverage, 26080, |
| 10006 | /* 25653 */ GIR_EraseRootFromParent_Done, |
| 10007 | /* 25654 */ // Label 689: @25654 |
| 10008 | /* 25654 */ GIM_Try, /*On fail goto*//*Label 690*/ GIMT_Encode4(25715), // Rule ID 22830 // |
| 10009 | /* 25659 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10010 | /* 25662 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10011 | /* 25666 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10012 | /* 25670 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10013 | /* 25674 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10014 | /* 25677 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10015 | /* 25681 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 10016 | /* 25685 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10017 | /* 25687 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10018 | /* 25694 */ // (or:{ *:[i8] } GR8:{ *:[i8] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>) => (OR8rm:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10019 | /* 25694 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8rm), |
| 10020 | /* 25697 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10021 | /* 25699 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10022 | /* 25701 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10023 | /* 25705 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10024 | /* 25708 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10025 | /* 25713 */ GIR_RootConstrainSelectedInstOperands, |
| 10026 | /* 25714 */ // GIR_Coverage, 22830, |
| 10027 | /* 25714 */ GIR_EraseRootFromParent_Done, |
| 10028 | /* 25715 */ // Label 690: @25715 |
| 10029 | /* 25715 */ GIM_Try, /*On fail goto*//*Label 691*/ GIMT_Encode4(25776), // Rule ID 22920 // |
| 10030 | /* 25720 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10031 | /* 25723 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10032 | /* 25727 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10033 | /* 25731 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10034 | /* 25735 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10035 | /* 25738 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10036 | /* 25742 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 10037 | /* 25746 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10038 | /* 25748 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10039 | /* 25755 */ // (or:{ *:[i8] } GR8:{ *:[i8] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>) => (OR8rm_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10040 | /* 25755 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8rm_ND), |
| 10041 | /* 25758 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10042 | /* 25760 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10043 | /* 25762 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10044 | /* 25766 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10045 | /* 25769 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10046 | /* 25774 */ GIR_RootConstrainSelectedInstOperands, |
| 10047 | /* 25775 */ // GIR_Coverage, 22920, |
| 10048 | /* 25775 */ GIR_EraseRootFromParent_Done, |
| 10049 | /* 25776 */ // Label 691: @25776 |
| 10050 | /* 25776 */ GIM_Try, /*On fail goto*//*Label 692*/ GIMT_Encode4(25813), // Rule ID 22834 // |
| 10051 | /* 25781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10052 | /* 25784 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10053 | /* 25788 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10054 | /* 25792 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 10055 | /* 25796 */ // MIs[1] Operand 1 |
| 10056 | /* 25796 */ // No operand predicates |
| 10057 | /* 25796 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10058 | /* 25798 */ // (or:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (OR8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 10059 | /* 25798 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8ri), |
| 10060 | /* 25801 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10061 | /* 25803 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10062 | /* 25805 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 10063 | /* 25808 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10064 | /* 25811 */ GIR_RootConstrainSelectedInstOperands, |
| 10065 | /* 25812 */ // GIR_Coverage, 22834, |
| 10066 | /* 25812 */ GIR_EraseRootFromParent_Done, |
| 10067 | /* 25813 */ // Label 692: @25813 |
| 10068 | /* 25813 */ GIM_Try, /*On fail goto*//*Label 693*/ GIMT_Encode4(25850), // Rule ID 22924 // |
| 10069 | /* 25818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10070 | /* 25821 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10071 | /* 25825 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10072 | /* 25829 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 10073 | /* 25833 */ // MIs[1] Operand 1 |
| 10074 | /* 25833 */ // No operand predicates |
| 10075 | /* 25833 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10076 | /* 25835 */ // (or:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (OR8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 10077 | /* 25835 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8ri_ND), |
| 10078 | /* 25838 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10079 | /* 25840 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10080 | /* 25842 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 10081 | /* 25845 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10082 | /* 25848 */ GIR_RootConstrainSelectedInstOperands, |
| 10083 | /* 25849 */ // GIR_Coverage, 22924, |
| 10084 | /* 25849 */ GIR_EraseRootFromParent_Done, |
| 10085 | /* 25850 */ // Label 693: @25850 |
| 10086 | /* 25850 */ GIM_Try, /*On fail goto*//*Label 694*/ GIMT_Encode4(25879), // Rule ID 22826 // |
| 10087 | /* 25855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10088 | /* 25858 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10089 | /* 25862 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10090 | /* 25866 */ // (or:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (OR8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 10091 | /* 25866 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR8rr), |
| 10092 | /* 25871 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 10093 | /* 25877 */ GIR_RootConstrainSelectedInstOperands, |
| 10094 | /* 25878 */ // GIR_Coverage, 22826, |
| 10095 | /* 25878 */ GIR_Done, |
| 10096 | /* 25879 */ // Label 694: @25879 |
| 10097 | /* 25879 */ GIM_Try, /*On fail goto*//*Label 695*/ GIMT_Encode4(25908), // Rule ID 22916 // |
| 10098 | /* 25884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10099 | /* 25887 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10100 | /* 25891 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10101 | /* 25895 */ // (or:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (OR8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 10102 | /* 25895 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR8rr_ND), |
| 10103 | /* 25900 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 10104 | /* 25906 */ GIR_RootConstrainSelectedInstOperands, |
| 10105 | /* 25907 */ // GIR_Coverage, 22916, |
| 10106 | /* 25907 */ GIR_Done, |
| 10107 | /* 25908 */ // Label 695: @25908 |
| 10108 | /* 25908 */ GIM_Reject, |
| 10109 | /* 25909 */ // Label 687: @25909 |
| 10110 | /* 25909 */ GIM_Reject, |
| 10111 | /* 25910 */ // Label 664: @25910 |
| 10112 | /* 25910 */ GIM_Try, /*On fail goto*//*Label 696*/ GIMT_Encode4(26506), |
| 10113 | /* 25915 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 10114 | /* 25918 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 10115 | /* 25921 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10116 | /* 25925 */ GIM_Try, /*On fail goto*//*Label 697*/ GIMT_Encode4(25986), // Rule ID 26062 // |
| 10117 | /* 25930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10118 | /* 25933 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10119 | /* 25937 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10120 | /* 25941 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10121 | /* 25944 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10122 | /* 25948 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 10123 | /* 25952 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10124 | /* 25956 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10125 | /* 25958 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10126 | /* 25965 */ // (or:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, GR16:{ *:[i16] }:$src1) => (OR16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10127 | /* 25965 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16rm), |
| 10128 | /* 25968 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10129 | /* 25970 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10130 | /* 25972 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10131 | /* 25976 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10132 | /* 25979 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10133 | /* 25984 */ GIR_RootConstrainSelectedInstOperands, |
| 10134 | /* 25985 */ // GIR_Coverage, 26062, |
| 10135 | /* 25985 */ GIR_EraseRootFromParent_Done, |
| 10136 | /* 25986 */ // Label 697: @25986 |
| 10137 | /* 25986 */ GIM_Try, /*On fail goto*//*Label 698*/ GIMT_Encode4(26047), // Rule ID 26081 // |
| 10138 | /* 25991 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10139 | /* 25994 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10140 | /* 25998 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10141 | /* 26002 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10142 | /* 26005 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10143 | /* 26009 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 10144 | /* 26013 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10145 | /* 26017 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10146 | /* 26019 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10147 | /* 26026 */ // (or:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, GR16:{ *:[i16] }:$src1) => (OR16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10148 | /* 26026 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16rm_ND), |
| 10149 | /* 26029 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10150 | /* 26031 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10151 | /* 26033 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10152 | /* 26037 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10153 | /* 26040 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10154 | /* 26045 */ GIR_RootConstrainSelectedInstOperands, |
| 10155 | /* 26046 */ // GIR_Coverage, 26081, |
| 10156 | /* 26046 */ GIR_EraseRootFromParent_Done, |
| 10157 | /* 26047 */ // Label 698: @26047 |
| 10158 | /* 26047 */ GIM_Try, /*On fail goto*//*Label 699*/ GIMT_Encode4(26108), // Rule ID 22831 // |
| 10159 | /* 26052 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10160 | /* 26055 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10161 | /* 26059 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10162 | /* 26063 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10163 | /* 26067 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10164 | /* 26070 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10165 | /* 26074 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 10166 | /* 26078 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10167 | /* 26080 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10168 | /* 26087 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (OR16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10169 | /* 26087 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16rm), |
| 10170 | /* 26090 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10171 | /* 26092 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10172 | /* 26094 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10173 | /* 26098 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10174 | /* 26101 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10175 | /* 26106 */ GIR_RootConstrainSelectedInstOperands, |
| 10176 | /* 26107 */ // GIR_Coverage, 22831, |
| 10177 | /* 26107 */ GIR_EraseRootFromParent_Done, |
| 10178 | /* 26108 */ // Label 699: @26108 |
| 10179 | /* 26108 */ GIM_Try, /*On fail goto*//*Label 700*/ GIMT_Encode4(26169), // Rule ID 22921 // |
| 10180 | /* 26113 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10181 | /* 26116 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10182 | /* 26120 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10183 | /* 26124 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10184 | /* 26128 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10185 | /* 26131 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10186 | /* 26135 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 10187 | /* 26139 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10188 | /* 26141 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10189 | /* 26148 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (OR16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10190 | /* 26148 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16rm_ND), |
| 10191 | /* 26151 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10192 | /* 26153 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10193 | /* 26155 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10194 | /* 26159 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10195 | /* 26162 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10196 | /* 26167 */ GIR_RootConstrainSelectedInstOperands, |
| 10197 | /* 26168 */ // GIR_Coverage, 22921, |
| 10198 | /* 26168 */ GIR_EraseRootFromParent_Done, |
| 10199 | /* 26169 */ // Label 700: @26169 |
| 10200 | /* 26169 */ GIM_Try, /*On fail goto*//*Label 701*/ GIMT_Encode4(26271), // Rule ID 26037 // |
| 10201 | /* 26174 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10202 | /* 26178 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 10203 | /* 26182 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 10204 | /* 26186 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 10205 | /* 26190 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 10206 | /* 26194 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10207 | /* 26199 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10208 | /* 26203 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10209 | /* 26205 */ // (or:{ *:[i16] } (shl:{ *:[i16] } 1:{ *:[i16] }, GR8:{ *:[i8] }:$src2), GR16:{ *:[i16] }:$src1) => (BTS16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (INSERT_SUBREG:{ *:[i16] } (IMPLICIT_DEF:{ *:[i16] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 10210 | /* 26205 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 10211 | /* 26208 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 10212 | /* 26212 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 10213 | /* 26217 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 10214 | /* 26219 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 10215 | /* 26222 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 10216 | /* 26226 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 10217 | /* 26231 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 10218 | /* 26234 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 10219 | /* 26238 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 10220 | /* 26241 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 10221 | /* 26246 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 10222 | /* 26251 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 10223 | /* 26256 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS16rr), |
| 10224 | /* 26259 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10225 | /* 26261 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10226 | /* 26263 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 10227 | /* 26266 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10228 | /* 26269 */ GIR_RootConstrainSelectedInstOperands, |
| 10229 | /* 26270 */ // GIR_Coverage, 26037, |
| 10230 | /* 26270 */ GIR_EraseRootFromParent_Done, |
| 10231 | /* 26271 */ // Label 701: @26271 |
| 10232 | /* 26271 */ GIM_Try, /*On fail goto*//*Label 702*/ GIMT_Encode4(26373), // Rule ID 22775 // |
| 10233 | /* 26276 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10234 | /* 26280 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10235 | /* 26284 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 10236 | /* 26288 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 10237 | /* 26292 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 10238 | /* 26296 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 10239 | /* 26300 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10240 | /* 26305 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10241 | /* 26307 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, (shl:{ *:[i16] } 1:{ *:[i16] }, GR8:{ *:[i8] }:$src2)) => (BTS16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (INSERT_SUBREG:{ *:[i16] } (IMPLICIT_DEF:{ *:[i16] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 10242 | /* 26307 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 10243 | /* 26310 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 10244 | /* 26314 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 10245 | /* 26319 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 10246 | /* 26321 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 10247 | /* 26324 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 10248 | /* 26328 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 10249 | /* 26333 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 10250 | /* 26336 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 10251 | /* 26340 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 10252 | /* 26343 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 10253 | /* 26348 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 10254 | /* 26353 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 10255 | /* 26358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS16rr), |
| 10256 | /* 26361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10257 | /* 26363 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10258 | /* 26365 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 10259 | /* 26368 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10260 | /* 26371 */ GIR_RootConstrainSelectedInstOperands, |
| 10261 | /* 26372 */ // GIR_Coverage, 22775, |
| 10262 | /* 26372 */ GIR_EraseRootFromParent_Done, |
| 10263 | /* 26373 */ // Label 702: @26373 |
| 10264 | /* 26373 */ GIM_Try, /*On fail goto*//*Label 703*/ GIMT_Encode4(26410), // Rule ID 22835 // |
| 10265 | /* 26378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10266 | /* 26381 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10267 | /* 26385 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10268 | /* 26389 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 10269 | /* 26393 */ // MIs[1] Operand 1 |
| 10270 | /* 26393 */ // No operand predicates |
| 10271 | /* 26393 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10272 | /* 26395 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (OR16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 10273 | /* 26395 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16ri), |
| 10274 | /* 26398 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10275 | /* 26400 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10276 | /* 26402 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 10277 | /* 26405 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10278 | /* 26408 */ GIR_RootConstrainSelectedInstOperands, |
| 10279 | /* 26409 */ // GIR_Coverage, 22835, |
| 10280 | /* 26409 */ GIR_EraseRootFromParent_Done, |
| 10281 | /* 26410 */ // Label 703: @26410 |
| 10282 | /* 26410 */ GIM_Try, /*On fail goto*//*Label 704*/ GIMT_Encode4(26447), // Rule ID 22925 // |
| 10283 | /* 26415 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10284 | /* 26418 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10285 | /* 26422 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10286 | /* 26426 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 10287 | /* 26430 */ // MIs[1] Operand 1 |
| 10288 | /* 26430 */ // No operand predicates |
| 10289 | /* 26430 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10290 | /* 26432 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (OR16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 10291 | /* 26432 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16ri_ND), |
| 10292 | /* 26435 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10293 | /* 26437 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10294 | /* 26439 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 10295 | /* 26442 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10296 | /* 26445 */ GIR_RootConstrainSelectedInstOperands, |
| 10297 | /* 26446 */ // GIR_Coverage, 22925, |
| 10298 | /* 26446 */ GIR_EraseRootFromParent_Done, |
| 10299 | /* 26447 */ // Label 704: @26447 |
| 10300 | /* 26447 */ GIM_Try, /*On fail goto*//*Label 705*/ GIMT_Encode4(26476), // Rule ID 22827 // |
| 10301 | /* 26452 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10302 | /* 26455 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10303 | /* 26459 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10304 | /* 26463 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (OR16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 10305 | /* 26463 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR16rr), |
| 10306 | /* 26468 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 10307 | /* 26474 */ GIR_RootConstrainSelectedInstOperands, |
| 10308 | /* 26475 */ // GIR_Coverage, 22827, |
| 10309 | /* 26475 */ GIR_Done, |
| 10310 | /* 26476 */ // Label 705: @26476 |
| 10311 | /* 26476 */ GIM_Try, /*On fail goto*//*Label 706*/ GIMT_Encode4(26505), // Rule ID 22917 // |
| 10312 | /* 26481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10313 | /* 26484 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10314 | /* 26488 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 10315 | /* 26492 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (OR16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 10316 | /* 26492 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR16rr_ND), |
| 10317 | /* 26497 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 10318 | /* 26503 */ GIR_RootConstrainSelectedInstOperands, |
| 10319 | /* 26504 */ // GIR_Coverage, 22917, |
| 10320 | /* 26504 */ GIR_Done, |
| 10321 | /* 26505 */ // Label 706: @26505 |
| 10322 | /* 26505 */ GIM_Reject, |
| 10323 | /* 26506 */ // Label 696: @26506 |
| 10324 | /* 26506 */ GIM_Reject, |
| 10325 | /* 26507 */ // Label 665: @26507 |
| 10326 | /* 26507 */ GIM_Try, /*On fail goto*//*Label 707*/ GIMT_Encode4(27962), |
| 10327 | /* 26512 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 10328 | /* 26515 */ GIM_Try, /*On fail goto*//*Label 708*/ GIMT_Encode4(26583), // Rule ID 26063 // |
| 10329 | /* 26520 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10330 | /* 26523 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10331 | /* 26526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10332 | /* 26530 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10333 | /* 26534 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10334 | /* 26538 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10335 | /* 26541 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10336 | /* 26545 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 10337 | /* 26549 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10338 | /* 26553 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10339 | /* 26555 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10340 | /* 26562 */ // (or:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src1) => (OR32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10341 | /* 26562 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32rm), |
| 10342 | /* 26565 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10343 | /* 26567 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10344 | /* 26569 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10345 | /* 26573 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10346 | /* 26576 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10347 | /* 26581 */ GIR_RootConstrainSelectedInstOperands, |
| 10348 | /* 26582 */ // GIR_Coverage, 26063, |
| 10349 | /* 26582 */ GIR_EraseRootFromParent_Done, |
| 10350 | /* 26583 */ // Label 708: @26583 |
| 10351 | /* 26583 */ GIM_Try, /*On fail goto*//*Label 709*/ GIMT_Encode4(26651), // Rule ID 26082 // |
| 10352 | /* 26588 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10353 | /* 26591 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10354 | /* 26594 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10355 | /* 26598 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10356 | /* 26602 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10357 | /* 26606 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10358 | /* 26609 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10359 | /* 26613 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 10360 | /* 26617 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10361 | /* 26621 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10362 | /* 26623 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10363 | /* 26630 */ // (or:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src1) => (OR32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10364 | /* 26630 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32rm_ND), |
| 10365 | /* 26633 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10366 | /* 26635 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10367 | /* 26637 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10368 | /* 26641 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10369 | /* 26644 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10370 | /* 26649 */ GIR_RootConstrainSelectedInstOperands, |
| 10371 | /* 26650 */ // GIR_Coverage, 26082, |
| 10372 | /* 26650 */ GIR_EraseRootFromParent_Done, |
| 10373 | /* 26651 */ // Label 709: @26651 |
| 10374 | /* 26651 */ GIM_Try, /*On fail goto*//*Label 710*/ GIMT_Encode4(26719), // Rule ID 22832 // |
| 10375 | /* 26656 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10376 | /* 26659 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10377 | /* 26662 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10378 | /* 26666 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10379 | /* 26670 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10380 | /* 26674 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10381 | /* 26678 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10382 | /* 26681 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10383 | /* 26685 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 10384 | /* 26689 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10385 | /* 26691 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10386 | /* 26698 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (OR32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10387 | /* 26698 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32rm), |
| 10388 | /* 26701 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10389 | /* 26703 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10390 | /* 26705 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10391 | /* 26709 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10392 | /* 26712 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10393 | /* 26717 */ GIR_RootConstrainSelectedInstOperands, |
| 10394 | /* 26718 */ // GIR_Coverage, 22832, |
| 10395 | /* 26718 */ GIR_EraseRootFromParent_Done, |
| 10396 | /* 26719 */ // Label 710: @26719 |
| 10397 | /* 26719 */ GIM_Try, /*On fail goto*//*Label 711*/ GIMT_Encode4(26787), // Rule ID 22922 // |
| 10398 | /* 26724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10399 | /* 26727 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10400 | /* 26730 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10401 | /* 26734 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10402 | /* 26738 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10403 | /* 26742 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10404 | /* 26746 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10405 | /* 26749 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10406 | /* 26753 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 10407 | /* 26757 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10408 | /* 26759 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10409 | /* 26766 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (OR32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10410 | /* 26766 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32rm_ND), |
| 10411 | /* 26769 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10412 | /* 26771 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10413 | /* 26773 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10414 | /* 26777 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10415 | /* 26780 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10416 | /* 26785 */ GIR_RootConstrainSelectedInstOperands, |
| 10417 | /* 26786 */ // GIR_Coverage, 22922, |
| 10418 | /* 26786 */ GIR_EraseRootFromParent_Done, |
| 10419 | /* 26787 */ // Label 711: @26787 |
| 10420 | /* 26787 */ GIM_Try, /*On fail goto*//*Label 712*/ GIMT_Encode4(26864), // Rule ID 25003 // |
| 10421 | /* 26792 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10422 | /* 26795 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10423 | /* 26798 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10424 | /* 26802 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10425 | /* 26806 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10426 | /* 26810 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10427 | /* 26814 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10428 | /* 26818 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10429 | /* 26823 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 10430 | /* 26827 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 10431 | /* 26831 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10432 | /* 26835 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 10433 | /* 26839 */ // MIs[2] src |
| 10434 | /* 26839 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10435 | /* 26844 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 10436 | /* 26848 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10437 | /* 26850 */ // (or:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (BLSIC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10438 | /* 26850 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSIC32rr), |
| 10439 | /* 26853 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10440 | /* 26855 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10441 | /* 26859 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10442 | /* 26862 */ GIR_RootConstrainSelectedInstOperands, |
| 10443 | /* 26863 */ // GIR_Coverage, 25003, |
| 10444 | /* 26863 */ GIR_EraseRootFromParent_Done, |
| 10445 | /* 26864 */ // Label 712: @26864 |
| 10446 | /* 26864 */ GIM_Try, /*On fail goto*//*Label 713*/ GIMT_Encode4(26941), // Rule ID 25005 // |
| 10447 | /* 26869 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10448 | /* 26872 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10449 | /* 26875 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10450 | /* 26879 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10451 | /* 26883 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10452 | /* 26887 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10453 | /* 26891 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10454 | /* 26895 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10455 | /* 26900 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 10456 | /* 26904 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 10457 | /* 26908 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10458 | /* 26912 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 10459 | /* 26916 */ // MIs[2] src |
| 10460 | /* 26916 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10461 | /* 26921 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 10462 | /* 26925 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10463 | /* 26927 */ // (or:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (T1MSKC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10464 | /* 26927 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::T1MSKC32rr), |
| 10465 | /* 26930 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10466 | /* 26932 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10467 | /* 26936 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10468 | /* 26939 */ GIR_RootConstrainSelectedInstOperands, |
| 10469 | /* 26940 */ // GIR_Coverage, 25005, |
| 10470 | /* 26940 */ GIR_EraseRootFromParent_Done, |
| 10471 | /* 26941 */ // Label 713: @26941 |
| 10472 | /* 26941 */ GIM_Try, /*On fail goto*//*Label 714*/ GIMT_Encode4(27019), // Rule ID 24991 // |
| 10473 | /* 26946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10474 | /* 26949 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10475 | /* 26953 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10476 | /* 26957 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10477 | /* 26961 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10478 | /* 26965 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10479 | /* 26969 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 10480 | /* 26973 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10481 | /* 26977 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 10482 | /* 26981 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 10483 | /* 26985 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10484 | /* 26990 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 10485 | /* 26994 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 10486 | /* 26998 */ // MIs[0] src |
| 10487 | /* 26998 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 10488 | /* 27003 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10489 | /* 27005 */ // (or:{ *:[i32] } (xor:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), -1:{ *:[i32] }), GR32:{ *:[i32] }:$src) => (BLCI32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10490 | /* 27005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI32rr), |
| 10491 | /* 27008 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10492 | /* 27010 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src |
| 10493 | /* 27014 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10494 | /* 27017 */ GIR_RootConstrainSelectedInstOperands, |
| 10495 | /* 27018 */ // GIR_Coverage, 24991, |
| 10496 | /* 27018 */ GIR_EraseRootFromParent_Done, |
| 10497 | /* 27019 */ // Label 714: @27019 |
| 10498 | /* 27019 */ GIM_Try, /*On fail goto*//*Label 715*/ GIMT_Encode4(27096), // Rule ID 17364 // |
| 10499 | /* 27024 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10500 | /* 27027 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10501 | /* 27030 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10502 | /* 27034 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10503 | /* 27038 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10504 | /* 27042 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10505 | /* 27046 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10506 | /* 27050 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10507 | /* 27055 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 10508 | /* 27059 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 10509 | /* 27063 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10510 | /* 27067 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 10511 | /* 27071 */ // MIs[2] src |
| 10512 | /* 27071 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10513 | /* 27076 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 10514 | /* 27080 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10515 | /* 27082 */ // (or:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (BLSIC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10516 | /* 27082 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSIC32rr), |
| 10517 | /* 27085 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10518 | /* 27087 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10519 | /* 27091 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10520 | /* 27094 */ GIR_RootConstrainSelectedInstOperands, |
| 10521 | /* 27095 */ // GIR_Coverage, 17364, |
| 10522 | /* 27095 */ GIR_EraseRootFromParent_Done, |
| 10523 | /* 27096 */ // Label 715: @27096 |
| 10524 | /* 27096 */ GIM_Try, /*On fail goto*//*Label 716*/ GIMT_Encode4(27173), // Rule ID 17366 // |
| 10525 | /* 27101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10526 | /* 27104 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10527 | /* 27107 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10528 | /* 27111 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10529 | /* 27115 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10530 | /* 27119 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10531 | /* 27123 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10532 | /* 27127 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10533 | /* 27132 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 10534 | /* 27136 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 10535 | /* 27140 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10536 | /* 27144 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 10537 | /* 27148 */ // MIs[2] src |
| 10538 | /* 27148 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10539 | /* 27153 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 10540 | /* 27157 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10541 | /* 27159 */ // (or:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] })) => (T1MSKC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10542 | /* 27159 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::T1MSKC32rr), |
| 10543 | /* 27162 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10544 | /* 27164 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10545 | /* 27168 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10546 | /* 27171 */ GIR_RootConstrainSelectedInstOperands, |
| 10547 | /* 27172 */ // GIR_Coverage, 17366, |
| 10548 | /* 27172 */ GIR_EraseRootFromParent_Done, |
| 10549 | /* 27173 */ // Label 716: @27173 |
| 10550 | /* 27173 */ GIM_Try, /*On fail goto*//*Label 717*/ GIMT_Encode4(27247), // Rule ID 17352 // |
| 10551 | /* 27178 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10552 | /* 27181 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10553 | /* 27184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10554 | /* 27188 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10555 | /* 27192 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10556 | /* 27196 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10557 | /* 27200 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10558 | /* 27204 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10559 | /* 27208 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 10560 | /* 27212 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10561 | /* 27216 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 10562 | /* 27220 */ // MIs[2] src |
| 10563 | /* 27220 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 10564 | /* 27225 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 10565 | /* 27229 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 10566 | /* 27233 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10567 | /* 27235 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src, (xor:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), -1:{ *:[i32] })) => (BLCI32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10568 | /* 27235 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI32rr), |
| 10569 | /* 27238 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10570 | /* 27240 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 10571 | /* 27242 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10572 | /* 27245 */ GIR_RootConstrainSelectedInstOperands, |
| 10573 | /* 27246 */ // GIR_Coverage, 17352, |
| 10574 | /* 27246 */ GIR_EraseRootFromParent_Done, |
| 10575 | /* 27247 */ // Label 717: @27247 |
| 10576 | /* 27247 */ GIM_Try, /*On fail goto*//*Label 718*/ GIMT_Encode4(27305), // Rule ID 24999 // |
| 10577 | /* 27252 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10578 | /* 27255 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10579 | /* 27259 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10580 | /* 27263 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10581 | /* 27267 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10582 | /* 27271 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10583 | /* 27275 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10584 | /* 27280 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 10585 | /* 27284 */ // MIs[0] src |
| 10586 | /* 27284 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10587 | /* 27289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10588 | /* 27291 */ // (or:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), GR32:{ *:[i32] }:$src) => (BLCS32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10589 | /* 27291 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCS32rr), |
| 10590 | /* 27294 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10591 | /* 27296 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10592 | /* 27300 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10593 | /* 27303 */ GIR_RootConstrainSelectedInstOperands, |
| 10594 | /* 27304 */ // GIR_Coverage, 24999, |
| 10595 | /* 27304 */ GIR_EraseRootFromParent_Done, |
| 10596 | /* 27305 */ // Label 718: @27305 |
| 10597 | /* 27305 */ GIM_Try, /*On fail goto*//*Label 719*/ GIMT_Encode4(27363), // Rule ID 25001 // |
| 10598 | /* 27310 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10599 | /* 27313 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10600 | /* 27317 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10601 | /* 27321 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10602 | /* 27325 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10603 | /* 27329 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10604 | /* 27333 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10605 | /* 27338 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 10606 | /* 27342 */ // MIs[0] src |
| 10607 | /* 27342 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10608 | /* 27347 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10609 | /* 27349 */ // (or:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), GR32:{ *:[i32] }:$src) => (BLSFILL32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10610 | /* 27349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSFILL32rr), |
| 10611 | /* 27352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10612 | /* 27354 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10613 | /* 27358 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10614 | /* 27361 */ GIR_RootConstrainSelectedInstOperands, |
| 10615 | /* 27362 */ // GIR_Coverage, 25001, |
| 10616 | /* 27362 */ GIR_EraseRootFromParent_Done, |
| 10617 | /* 27363 */ // Label 719: @27363 |
| 10618 | /* 27363 */ GIM_Try, /*On fail goto*//*Label 720*/ GIMT_Encode4(27472), // Rule ID 26043 // |
| 10619 | /* 27368 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10620 | /* 27371 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10621 | /* 27375 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10622 | /* 27379 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 10623 | /* 27383 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10624 | /* 27387 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 10625 | /* 27391 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 10626 | /* 27395 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10627 | /* 27400 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10628 | /* 27404 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10629 | /* 27406 */ // (or:{ *:[i32] } (shl:{ *:[i32] } 1:{ *:[i32] }, GR8:{ *:[i8] }:$src2), GR32:{ *:[i32] }:$src1) => (BTS32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 10630 | /* 27406 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 10631 | /* 27409 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 10632 | /* 27413 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 10633 | /* 27418 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 10634 | /* 27420 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 10635 | /* 27423 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 10636 | /* 27427 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 10637 | /* 27432 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 10638 | /* 27435 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 10639 | /* 27439 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 10640 | /* 27442 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 10641 | /* 27447 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 10642 | /* 27452 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 10643 | /* 27457 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS32rr), |
| 10644 | /* 27460 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10645 | /* 27462 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10646 | /* 27464 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 10647 | /* 27467 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10648 | /* 27470 */ GIR_RootConstrainSelectedInstOperands, |
| 10649 | /* 27471 */ // GIR_Coverage, 26043, |
| 10650 | /* 27471 */ GIR_EraseRootFromParent_Done, |
| 10651 | /* 27472 */ // Label 720: @27472 |
| 10652 | /* 27472 */ GIM_Try, /*On fail goto*//*Label 721*/ GIMT_Encode4(27530), // Rule ID 24993 // |
| 10653 | /* 27477 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10654 | /* 27480 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10655 | /* 27484 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10656 | /* 27488 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 10657 | /* 27492 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10658 | /* 27496 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10659 | /* 27500 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, uint8_t(-2), |
| 10660 | /* 27504 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10661 | /* 27509 */ // MIs[0] src |
| 10662 | /* 27509 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/2, |
| 10663 | /* 27514 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10664 | /* 27516 */ // (or:{ *:[i32] } (sub:{ *:[i32] } -2:{ *:[i32] }, GR32:{ *:[i32] }:$src), GR32:{ *:[i32] }:$src) => (BLCI32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10665 | /* 27516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI32rr), |
| 10666 | /* 27519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10667 | /* 27521 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 10668 | /* 27525 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10669 | /* 27528 */ GIR_RootConstrainSelectedInstOperands, |
| 10670 | /* 27529 */ // GIR_Coverage, 24993, |
| 10671 | /* 27529 */ GIR_EraseRootFromParent_Done, |
| 10672 | /* 27530 */ // Label 721: @27530 |
| 10673 | /* 27530 */ GIM_Try, /*On fail goto*//*Label 722*/ GIMT_Encode4(27584), // Rule ID 17360 // |
| 10674 | /* 27535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10675 | /* 27538 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10676 | /* 27541 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10677 | /* 27545 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10678 | /* 27549 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10679 | /* 27553 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10680 | /* 27557 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10681 | /* 27561 */ // MIs[1] src |
| 10682 | /* 27561 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 10683 | /* 27566 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 10684 | /* 27570 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10685 | /* 27572 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src, (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] })) => (BLCS32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10686 | /* 27572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCS32rr), |
| 10687 | /* 27575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10688 | /* 27577 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 10689 | /* 27579 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10690 | /* 27582 */ GIR_RootConstrainSelectedInstOperands, |
| 10691 | /* 27583 */ // GIR_Coverage, 17360, |
| 10692 | /* 27583 */ GIR_EraseRootFromParent_Done, |
| 10693 | /* 27584 */ // Label 722: @27584 |
| 10694 | /* 27584 */ GIM_Try, /*On fail goto*//*Label 723*/ GIMT_Encode4(27638), // Rule ID 17362 // |
| 10695 | /* 27589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10696 | /* 27592 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10697 | /* 27595 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10698 | /* 27599 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10699 | /* 27603 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10700 | /* 27607 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10701 | /* 27611 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 10702 | /* 27615 */ // MIs[1] src |
| 10703 | /* 27615 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 10704 | /* 27620 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 10705 | /* 27624 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10706 | /* 27626 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src, (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (BLSFILL32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10707 | /* 27626 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSFILL32rr), |
| 10708 | /* 27629 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10709 | /* 27631 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 10710 | /* 27633 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10711 | /* 27636 */ GIR_RootConstrainSelectedInstOperands, |
| 10712 | /* 27637 */ // GIR_Coverage, 17362, |
| 10713 | /* 27637 */ GIR_EraseRootFromParent_Done, |
| 10714 | /* 27638 */ // Label 723: @27638 |
| 10715 | /* 27638 */ GIM_Try, /*On fail goto*//*Label 724*/ GIMT_Encode4(27747), // Rule ID 22781 // |
| 10716 | /* 27643 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10717 | /* 27646 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10718 | /* 27650 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10719 | /* 27654 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10720 | /* 27658 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 10721 | /* 27662 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10722 | /* 27666 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 10723 | /* 27670 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 10724 | /* 27674 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10725 | /* 27679 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10726 | /* 27681 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, (shl:{ *:[i32] } 1:{ *:[i32] }, GR8:{ *:[i8] }:$src2)) => (BTS32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 10727 | /* 27681 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 10728 | /* 27684 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 10729 | /* 27688 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 10730 | /* 27693 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 10731 | /* 27695 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 10732 | /* 27698 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 10733 | /* 27702 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 10734 | /* 27707 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 10735 | /* 27710 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 10736 | /* 27714 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 10737 | /* 27717 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 10738 | /* 27722 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 10739 | /* 27727 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 10740 | /* 27732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS32rr), |
| 10741 | /* 27735 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10742 | /* 27737 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10743 | /* 27739 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 10744 | /* 27742 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10745 | /* 27745 */ GIR_RootConstrainSelectedInstOperands, |
| 10746 | /* 27746 */ // GIR_Coverage, 22781, |
| 10747 | /* 27746 */ GIR_EraseRootFromParent_Done, |
| 10748 | /* 27747 */ // Label 724: @27747 |
| 10749 | /* 27747 */ GIM_Try, /*On fail goto*//*Label 725*/ GIMT_Encode4(27801), // Rule ID 17354 // |
| 10750 | /* 27752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10751 | /* 27755 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10752 | /* 27758 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10753 | /* 27762 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10754 | /* 27766 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10755 | /* 27770 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 10756 | /* 27774 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10757 | /* 27778 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, uint8_t(-2), |
| 10758 | /* 27782 */ // MIs[1] src |
| 10759 | /* 27782 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/2, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 10760 | /* 27787 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10761 | /* 27789 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src, (sub:{ *:[i32] } -2:{ *:[i32] }, GR32:{ *:[i32] }:$src)) => (BLCI32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10762 | /* 27789 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI32rr), |
| 10763 | /* 27792 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10764 | /* 27794 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 10765 | /* 27796 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10766 | /* 27799 */ GIR_RootConstrainSelectedInstOperands, |
| 10767 | /* 27800 */ // GIR_Coverage, 17354, |
| 10768 | /* 27800 */ GIR_EraseRootFromParent_Done, |
| 10769 | /* 27801 */ // Label 725: @27801 |
| 10770 | /* 27801 */ GIM_Try, /*On fail goto*//*Label 726*/ GIMT_Encode4(27845), // Rule ID 22836 // |
| 10771 | /* 27806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10772 | /* 27809 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10773 | /* 27812 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10774 | /* 27816 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10775 | /* 27820 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10776 | /* 27824 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 10777 | /* 27828 */ // MIs[1] Operand 1 |
| 10778 | /* 27828 */ // No operand predicates |
| 10779 | /* 27828 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10780 | /* 27830 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (OR32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 10781 | /* 27830 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32ri), |
| 10782 | /* 27833 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10783 | /* 27835 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10784 | /* 27837 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 10785 | /* 27840 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10786 | /* 27843 */ GIR_RootConstrainSelectedInstOperands, |
| 10787 | /* 27844 */ // GIR_Coverage, 22836, |
| 10788 | /* 27844 */ GIR_EraseRootFromParent_Done, |
| 10789 | /* 27845 */ // Label 726: @27845 |
| 10790 | /* 27845 */ GIM_Try, /*On fail goto*//*Label 727*/ GIMT_Encode4(27889), // Rule ID 22926 // |
| 10791 | /* 27850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10792 | /* 27853 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10793 | /* 27856 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10794 | /* 27860 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10795 | /* 27864 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10796 | /* 27868 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 10797 | /* 27872 */ // MIs[1] Operand 1 |
| 10798 | /* 27872 */ // No operand predicates |
| 10799 | /* 27872 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10800 | /* 27874 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (OR32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 10801 | /* 27874 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32ri_ND), |
| 10802 | /* 27877 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10803 | /* 27879 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10804 | /* 27881 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 10805 | /* 27884 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10806 | /* 27887 */ GIR_RootConstrainSelectedInstOperands, |
| 10807 | /* 27888 */ // GIR_Coverage, 22926, |
| 10808 | /* 27888 */ GIR_EraseRootFromParent_Done, |
| 10809 | /* 27889 */ // Label 727: @27889 |
| 10810 | /* 27889 */ GIM_Try, /*On fail goto*//*Label 728*/ GIMT_Encode4(27925), // Rule ID 22828 // |
| 10811 | /* 27894 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10812 | /* 27897 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10813 | /* 27900 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10814 | /* 27904 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10815 | /* 27908 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10816 | /* 27912 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (OR32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 10817 | /* 27912 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR32rr), |
| 10818 | /* 27917 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 10819 | /* 27923 */ GIR_RootConstrainSelectedInstOperands, |
| 10820 | /* 27924 */ // GIR_Coverage, 22828, |
| 10821 | /* 27924 */ GIR_Done, |
| 10822 | /* 27925 */ // Label 728: @27925 |
| 10823 | /* 27925 */ GIM_Try, /*On fail goto*//*Label 729*/ GIMT_Encode4(27961), // Rule ID 22918 // |
| 10824 | /* 27930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10825 | /* 27933 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10826 | /* 27936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10827 | /* 27940 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10828 | /* 27944 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10829 | /* 27948 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (OR32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 10830 | /* 27948 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR32rr_ND), |
| 10831 | /* 27953 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 10832 | /* 27959 */ GIR_RootConstrainSelectedInstOperands, |
| 10833 | /* 27960 */ // GIR_Coverage, 22918, |
| 10834 | /* 27960 */ GIR_Done, |
| 10835 | /* 27961 */ // Label 729: @27961 |
| 10836 | /* 27961 */ GIM_Reject, |
| 10837 | /* 27962 */ // Label 707: @27962 |
| 10838 | /* 27962 */ GIM_Reject, |
| 10839 | /* 27963 */ // Label 666: @27963 |
| 10840 | /* 27963 */ GIM_Try, /*On fail goto*//*Label 730*/ GIMT_Encode4(29426), |
| 10841 | /* 27968 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 10842 | /* 27971 */ GIM_Try, /*On fail goto*//*Label 731*/ GIMT_Encode4(28039), // Rule ID 26064 // |
| 10843 | /* 27976 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10844 | /* 27979 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10845 | /* 27982 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10846 | /* 27986 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10847 | /* 27990 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10848 | /* 27994 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10849 | /* 27997 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10850 | /* 28001 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10851 | /* 28005 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10852 | /* 28009 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10853 | /* 28011 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10854 | /* 28018 */ // (or:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src1) => (OR64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10855 | /* 28018 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64rm), |
| 10856 | /* 28021 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10857 | /* 28023 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10858 | /* 28025 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10859 | /* 28029 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10860 | /* 28032 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10861 | /* 28037 */ GIR_RootConstrainSelectedInstOperands, |
| 10862 | /* 28038 */ // GIR_Coverage, 26064, |
| 10863 | /* 28038 */ GIR_EraseRootFromParent_Done, |
| 10864 | /* 28039 */ // Label 731: @28039 |
| 10865 | /* 28039 */ GIM_Try, /*On fail goto*//*Label 732*/ GIMT_Encode4(28107), // Rule ID 26083 // |
| 10866 | /* 28044 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10867 | /* 28047 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10868 | /* 28050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10869 | /* 28054 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10870 | /* 28058 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10871 | /* 28062 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10872 | /* 28065 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10873 | /* 28069 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10874 | /* 28073 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10875 | /* 28077 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10876 | /* 28079 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10877 | /* 28086 */ // (or:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src1) => (OR64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10878 | /* 28086 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64rm_ND), |
| 10879 | /* 28089 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10880 | /* 28091 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10881 | /* 28093 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10882 | /* 28097 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10883 | /* 28100 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10884 | /* 28105 */ GIR_RootConstrainSelectedInstOperands, |
| 10885 | /* 28106 */ // GIR_Coverage, 26083, |
| 10886 | /* 28106 */ GIR_EraseRootFromParent_Done, |
| 10887 | /* 28107 */ // Label 732: @28107 |
| 10888 | /* 28107 */ GIM_Try, /*On fail goto*//*Label 733*/ GIMT_Encode4(28175), // Rule ID 22833 // |
| 10889 | /* 28112 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10890 | /* 28115 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10891 | /* 28118 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10892 | /* 28122 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10893 | /* 28126 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10894 | /* 28130 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10895 | /* 28134 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10896 | /* 28137 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10897 | /* 28141 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10898 | /* 28145 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10899 | /* 28147 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10900 | /* 28154 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (OR64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10901 | /* 28154 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64rm), |
| 10902 | /* 28157 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10903 | /* 28159 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10904 | /* 28161 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10905 | /* 28165 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10906 | /* 28168 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10907 | /* 28173 */ GIR_RootConstrainSelectedInstOperands, |
| 10908 | /* 28174 */ // GIR_Coverage, 22833, |
| 10909 | /* 28174 */ GIR_EraseRootFromParent_Done, |
| 10910 | /* 28175 */ // Label 733: @28175 |
| 10911 | /* 28175 */ GIM_Try, /*On fail goto*//*Label 734*/ GIMT_Encode4(28243), // Rule ID 22923 // |
| 10912 | /* 28180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10913 | /* 28183 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10914 | /* 28186 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10915 | /* 28190 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10916 | /* 28194 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10917 | /* 28198 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10918 | /* 28202 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10919 | /* 28205 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10920 | /* 28209 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10921 | /* 28213 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10922 | /* 28215 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10923 | /* 28222 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (OR64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10924 | /* 28222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64rm_ND), |
| 10925 | /* 28225 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10926 | /* 28227 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10927 | /* 28229 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10928 | /* 28233 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10929 | /* 28236 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10930 | /* 28241 */ GIR_RootConstrainSelectedInstOperands, |
| 10931 | /* 28242 */ // GIR_Coverage, 22923, |
| 10932 | /* 28242 */ GIR_EraseRootFromParent_Done, |
| 10933 | /* 28243 */ // Label 734: @28243 |
| 10934 | /* 28243 */ GIM_Try, /*On fail goto*//*Label 735*/ GIMT_Encode4(28320), // Rule ID 25004 // |
| 10935 | /* 28248 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10936 | /* 28251 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10937 | /* 28254 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10938 | /* 28258 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10939 | /* 28262 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10940 | /* 28266 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10941 | /* 28270 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10942 | /* 28274 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10943 | /* 28279 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 10944 | /* 28283 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 10945 | /* 28287 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10946 | /* 28291 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 10947 | /* 28295 */ // MIs[2] src |
| 10948 | /* 28295 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10949 | /* 28300 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 10950 | /* 28304 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10951 | /* 28306 */ // (or:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (BLSIC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10952 | /* 28306 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSIC64rr), |
| 10953 | /* 28309 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10954 | /* 28311 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10955 | /* 28315 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10956 | /* 28318 */ GIR_RootConstrainSelectedInstOperands, |
| 10957 | /* 28319 */ // GIR_Coverage, 25004, |
| 10958 | /* 28319 */ GIR_EraseRootFromParent_Done, |
| 10959 | /* 28320 */ // Label 735: @28320 |
| 10960 | /* 28320 */ GIM_Try, /*On fail goto*//*Label 736*/ GIMT_Encode4(28397), // Rule ID 25006 // |
| 10961 | /* 28325 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10962 | /* 28328 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10963 | /* 28331 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10964 | /* 28335 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10965 | /* 28339 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10966 | /* 28343 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10967 | /* 28347 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10968 | /* 28351 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10969 | /* 28356 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 10970 | /* 28360 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 10971 | /* 28364 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10972 | /* 28368 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 10973 | /* 28372 */ // MIs[2] src |
| 10974 | /* 28372 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10975 | /* 28377 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 10976 | /* 28381 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10977 | /* 28383 */ // (or:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (T1MSKC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10978 | /* 28383 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::T1MSKC64rr), |
| 10979 | /* 28386 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10980 | /* 28388 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10981 | /* 28392 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10982 | /* 28395 */ GIR_RootConstrainSelectedInstOperands, |
| 10983 | /* 28396 */ // GIR_Coverage, 25006, |
| 10984 | /* 28396 */ GIR_EraseRootFromParent_Done, |
| 10985 | /* 28397 */ // Label 736: @28397 |
| 10986 | /* 28397 */ GIM_Try, /*On fail goto*//*Label 737*/ GIMT_Encode4(28475), // Rule ID 24992 // |
| 10987 | /* 28402 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10988 | /* 28405 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10989 | /* 28409 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10990 | /* 28413 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10991 | /* 28417 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10992 | /* 28421 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10993 | /* 28425 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 10994 | /* 28429 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10995 | /* 28433 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 10996 | /* 28437 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 10997 | /* 28441 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10998 | /* 28446 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 10999 | /* 28450 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 11000 | /* 28454 */ // MIs[0] src |
| 11001 | /* 28454 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 11002 | /* 28459 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 11003 | /* 28461 */ // (or:{ *:[i64] } (xor:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), -1:{ *:[i64] }), GR64:{ *:[i64] }:$src) => (BLCI64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 11004 | /* 28461 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI64rr), |
| 11005 | /* 28464 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11006 | /* 28466 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src |
| 11007 | /* 28470 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11008 | /* 28473 */ GIR_RootConstrainSelectedInstOperands, |
| 11009 | /* 28474 */ // GIR_Coverage, 24992, |
| 11010 | /* 28474 */ GIR_EraseRootFromParent_Done, |
| 11011 | /* 28475 */ // Label 737: @28475 |
| 11012 | /* 28475 */ GIM_Try, /*On fail goto*//*Label 738*/ GIMT_Encode4(28552), // Rule ID 17365 // |
| 11013 | /* 28480 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 11014 | /* 28483 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11015 | /* 28486 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11016 | /* 28490 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11017 | /* 28494 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 11018 | /* 28498 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 11019 | /* 28502 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 11020 | /* 28506 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11021 | /* 28511 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 11022 | /* 28515 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 11023 | /* 28519 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 11024 | /* 28523 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 11025 | /* 28527 */ // MIs[2] src |
| 11026 | /* 28527 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 11027 | /* 28532 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, uint8_t(-1), |
| 11028 | /* 28536 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 11029 | /* 28538 */ // (or:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (BLSIC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 11030 | /* 28538 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSIC64rr), |
| 11031 | /* 28541 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11032 | /* 28543 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 11033 | /* 28547 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11034 | /* 28550 */ GIR_RootConstrainSelectedInstOperands, |
| 11035 | /* 28551 */ // GIR_Coverage, 17365, |
| 11036 | /* 28551 */ GIR_EraseRootFromParent_Done, |
| 11037 | /* 28552 */ // Label 738: @28552 |
| 11038 | /* 28552 */ GIM_Try, /*On fail goto*//*Label 739*/ GIMT_Encode4(28629), // Rule ID 17367 // |
| 11039 | /* 28557 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 11040 | /* 28560 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11041 | /* 28563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11042 | /* 28567 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11043 | /* 28571 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 11044 | /* 28575 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 11045 | /* 28579 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 11046 | /* 28583 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11047 | /* 28588 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 11048 | /* 28592 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 11049 | /* 28596 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 11050 | /* 28600 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 11051 | /* 28604 */ // MIs[2] src |
| 11052 | /* 28604 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 11053 | /* 28609 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 11054 | /* 28613 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 11055 | /* 28615 */ // (or:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] })) => (T1MSKC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 11056 | /* 28615 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::T1MSKC64rr), |
| 11057 | /* 28618 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11058 | /* 28620 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 11059 | /* 28624 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11060 | /* 28627 */ GIR_RootConstrainSelectedInstOperands, |
| 11061 | /* 28628 */ // GIR_Coverage, 17367, |
| 11062 | /* 28628 */ GIR_EraseRootFromParent_Done, |
| 11063 | /* 28629 */ // Label 739: @28629 |
| 11064 | /* 28629 */ GIM_Try, /*On fail goto*//*Label 740*/ GIMT_Encode4(28703), // Rule ID 17353 // |
| 11065 | /* 28634 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 11066 | /* 28637 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11067 | /* 28640 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11068 | /* 28644 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11069 | /* 28648 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11070 | /* 28652 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 11071 | /* 28656 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 11072 | /* 28660 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 11073 | /* 28664 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 11074 | /* 28668 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 11075 | /* 28672 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 11076 | /* 28676 */ // MIs[2] src |
| 11077 | /* 28676 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 11078 | /* 28681 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 11079 | /* 28685 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 11080 | /* 28689 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 11081 | /* 28691 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src, (xor:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), -1:{ *:[i64] })) => (BLCI64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 11082 | /* 28691 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI64rr), |
| 11083 | /* 28694 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11084 | /* 28696 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 11085 | /* 28698 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11086 | /* 28701 */ GIR_RootConstrainSelectedInstOperands, |
| 11087 | /* 28702 */ // GIR_Coverage, 17353, |
| 11088 | /* 28702 */ GIR_EraseRootFromParent_Done, |
| 11089 | /* 28703 */ // Label 740: @28703 |
| 11090 | /* 28703 */ GIM_Try, /*On fail goto*//*Label 741*/ GIMT_Encode4(28761), // Rule ID 25000 // |
| 11091 | /* 28708 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 11092 | /* 28711 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11093 | /* 28715 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11094 | /* 28719 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 11095 | /* 28723 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 11096 | /* 28727 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 11097 | /* 28731 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11098 | /* 28736 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 11099 | /* 28740 */ // MIs[0] src |
| 11100 | /* 28740 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 11101 | /* 28745 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11102 | /* 28747 */ // (or:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), GR64:{ *:[i64] }:$src) => (BLCS64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 11103 | /* 28747 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCS64rr), |
| 11104 | /* 28750 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11105 | /* 28752 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 11106 | /* 28756 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11107 | /* 28759 */ GIR_RootConstrainSelectedInstOperands, |
| 11108 | /* 28760 */ // GIR_Coverage, 25000, |
| 11109 | /* 28760 */ GIR_EraseRootFromParent_Done, |
| 11110 | /* 28761 */ // Label 741: @28761 |
| 11111 | /* 28761 */ GIM_Try, /*On fail goto*//*Label 742*/ GIMT_Encode4(28819), // Rule ID 25002 // |
| 11112 | /* 28766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 11113 | /* 28769 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11114 | /* 28773 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11115 | /* 28777 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 11116 | /* 28781 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 11117 | /* 28785 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 11118 | /* 28789 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11119 | /* 28794 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 11120 | /* 28798 */ // MIs[0] src |
| 11121 | /* 28798 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 11122 | /* 28803 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11123 | /* 28805 */ // (or:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), GR64:{ *:[i64] }:$src) => (BLSFILL64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 11124 | /* 28805 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSFILL64rr), |
| 11125 | /* 28808 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11126 | /* 28810 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 11127 | /* 28814 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11128 | /* 28817 */ GIR_RootConstrainSelectedInstOperands, |
| 11129 | /* 28818 */ // GIR_Coverage, 25002, |
| 11130 | /* 28818 */ GIR_EraseRootFromParent_Done, |
| 11131 | /* 28819 */ // Label 742: @28819 |
| 11132 | /* 28819 */ GIM_Try, /*On fail goto*//*Label 743*/ GIMT_Encode4(28928), // Rule ID 26049 // |
| 11133 | /* 28824 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11134 | /* 28827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11135 | /* 28831 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11136 | /* 28835 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 11137 | /* 28839 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 11138 | /* 28843 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 11139 | /* 28847 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 11140 | /* 28851 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 11141 | /* 28856 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11142 | /* 28860 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11143 | /* 28862 */ // (or:{ *:[i64] } (shl:{ *:[i64] } 1:{ *:[i64] }, GR8:{ *:[i8] }:$src2), GR64:{ *:[i64] }:$src1) => (BTS64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 11144 | /* 28862 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 11145 | /* 28865 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 11146 | /* 28869 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11147 | /* 28874 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 11148 | /* 28876 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 11149 | /* 28879 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 11150 | /* 28883 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11151 | /* 28888 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 11152 | /* 28891 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 11153 | /* 28895 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 11154 | /* 28898 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 11155 | /* 28903 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 11156 | /* 28908 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 11157 | /* 28913 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS64rr), |
| 11158 | /* 28916 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11159 | /* 28918 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11160 | /* 28920 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 11161 | /* 28923 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11162 | /* 28926 */ GIR_RootConstrainSelectedInstOperands, |
| 11163 | /* 28927 */ // GIR_Coverage, 26049, |
| 11164 | /* 28927 */ GIR_EraseRootFromParent_Done, |
| 11165 | /* 28928 */ // Label 743: @28928 |
| 11166 | /* 28928 */ GIM_Try, /*On fail goto*//*Label 744*/ GIMT_Encode4(28986), // Rule ID 24994 // |
| 11167 | /* 28933 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 11168 | /* 28936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11169 | /* 28940 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11170 | /* 28944 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 11171 | /* 28948 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 11172 | /* 28952 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 11173 | /* 28956 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, uint8_t(-2), |
| 11174 | /* 28960 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11175 | /* 28965 */ // MIs[0] src |
| 11176 | /* 28965 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/2, |
| 11177 | /* 28970 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11178 | /* 28972 */ // (or:{ *:[i64] } (sub:{ *:[i64] } -2:{ *:[i64] }, GR64:{ *:[i64] }:$src), GR64:{ *:[i64] }:$src) => (BLCI64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 11179 | /* 28972 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI64rr), |
| 11180 | /* 28975 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11181 | /* 28977 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 11182 | /* 28981 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11183 | /* 28984 */ GIR_RootConstrainSelectedInstOperands, |
| 11184 | /* 28985 */ // GIR_Coverage, 24994, |
| 11185 | /* 28985 */ GIR_EraseRootFromParent_Done, |
| 11186 | /* 28986 */ // Label 744: @28986 |
| 11187 | /* 28986 */ GIM_Try, /*On fail goto*//*Label 745*/ GIMT_Encode4(29040), // Rule ID 17361 // |
| 11188 | /* 28991 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 11189 | /* 28994 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11190 | /* 28997 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11191 | /* 29001 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11192 | /* 29005 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11193 | /* 29009 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 11194 | /* 29013 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 11195 | /* 29017 */ // MIs[1] src |
| 11196 | /* 29017 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 11197 | /* 29022 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 11198 | /* 29026 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11199 | /* 29028 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src, (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] })) => (BLCS64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 11200 | /* 29028 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCS64rr), |
| 11201 | /* 29031 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11202 | /* 29033 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 11203 | /* 29035 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11204 | /* 29038 */ GIR_RootConstrainSelectedInstOperands, |
| 11205 | /* 29039 */ // GIR_Coverage, 17361, |
| 11206 | /* 29039 */ GIR_EraseRootFromParent_Done, |
| 11207 | /* 29040 */ // Label 745: @29040 |
| 11208 | /* 29040 */ GIM_Try, /*On fail goto*//*Label 746*/ GIMT_Encode4(29094), // Rule ID 17363 // |
| 11209 | /* 29045 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 11210 | /* 29048 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11211 | /* 29051 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11212 | /* 29055 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11213 | /* 29059 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11214 | /* 29063 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 11215 | /* 29067 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 11216 | /* 29071 */ // MIs[1] src |
| 11217 | /* 29071 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 11218 | /* 29076 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 11219 | /* 29080 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11220 | /* 29082 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src, (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (BLSFILL64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 11221 | /* 29082 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSFILL64rr), |
| 11222 | /* 29085 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11223 | /* 29087 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 11224 | /* 29089 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11225 | /* 29092 */ GIR_RootConstrainSelectedInstOperands, |
| 11226 | /* 29093 */ // GIR_Coverage, 17363, |
| 11227 | /* 29093 */ GIR_EraseRootFromParent_Done, |
| 11228 | /* 29094 */ // Label 746: @29094 |
| 11229 | /* 29094 */ GIM_Try, /*On fail goto*//*Label 747*/ GIMT_Encode4(29203), // Rule ID 22787 // |
| 11230 | /* 29099 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11231 | /* 29102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11232 | /* 29106 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11233 | /* 29110 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11234 | /* 29114 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 11235 | /* 29118 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 11236 | /* 29122 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 11237 | /* 29126 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 11238 | /* 29130 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 11239 | /* 29135 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11240 | /* 29137 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, (shl:{ *:[i64] } 1:{ *:[i64] }, GR8:{ *:[i8] }:$src2)) => (BTS64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 11241 | /* 29137 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 11242 | /* 29140 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 11243 | /* 29144 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11244 | /* 29149 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 11245 | /* 29151 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 11246 | /* 29154 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 11247 | /* 29158 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11248 | /* 29163 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 11249 | /* 29166 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 11250 | /* 29170 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 11251 | /* 29173 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 11252 | /* 29178 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 11253 | /* 29183 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 11254 | /* 29188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS64rr), |
| 11255 | /* 29191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11256 | /* 29193 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11257 | /* 29195 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 11258 | /* 29198 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11259 | /* 29201 */ GIR_RootConstrainSelectedInstOperands, |
| 11260 | /* 29202 */ // GIR_Coverage, 22787, |
| 11261 | /* 29202 */ GIR_EraseRootFromParent_Done, |
| 11262 | /* 29203 */ // Label 747: @29203 |
| 11263 | /* 29203 */ GIM_Try, /*On fail goto*//*Label 748*/ GIMT_Encode4(29257), // Rule ID 17355 // |
| 11264 | /* 29208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 11265 | /* 29211 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11266 | /* 29214 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11267 | /* 29218 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11268 | /* 29222 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11269 | /* 29226 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 11270 | /* 29230 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 11271 | /* 29234 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, uint8_t(-2), |
| 11272 | /* 29238 */ // MIs[1] src |
| 11273 | /* 29238 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/2, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 11274 | /* 29243 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11275 | /* 29245 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src, (sub:{ *:[i64] } -2:{ *:[i64] }, GR64:{ *:[i64] }:$src)) => (BLCI64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 11276 | /* 29245 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI64rr), |
| 11277 | /* 29248 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11278 | /* 29250 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 11279 | /* 29252 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11280 | /* 29255 */ GIR_RootConstrainSelectedInstOperands, |
| 11281 | /* 29256 */ // GIR_Coverage, 17355, |
| 11282 | /* 29256 */ GIR_EraseRootFromParent_Done, |
| 11283 | /* 29257 */ // Label 748: @29257 |
| 11284 | /* 29257 */ GIM_Try, /*On fail goto*//*Label 749*/ GIMT_Encode4(29305), // Rule ID 22837 // |
| 11285 | /* 29262 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 11286 | /* 29265 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11287 | /* 29268 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11288 | /* 29272 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11289 | /* 29276 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11290 | /* 29280 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 11291 | /* 29284 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 11292 | /* 29288 */ // MIs[1] Operand 1 |
| 11293 | /* 29288 */ // No operand predicates |
| 11294 | /* 29288 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11295 | /* 29290 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (OR64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 11296 | /* 29290 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64ri32), |
| 11297 | /* 29293 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11298 | /* 29295 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11299 | /* 29297 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 11300 | /* 29300 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11301 | /* 29303 */ GIR_RootConstrainSelectedInstOperands, |
| 11302 | /* 29304 */ // GIR_Coverage, 22837, |
| 11303 | /* 29304 */ GIR_EraseRootFromParent_Done, |
| 11304 | /* 29305 */ // Label 749: @29305 |
| 11305 | /* 29305 */ GIM_Try, /*On fail goto*//*Label 750*/ GIMT_Encode4(29353), // Rule ID 22927 // |
| 11306 | /* 29310 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 11307 | /* 29313 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11308 | /* 29316 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11309 | /* 29320 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11310 | /* 29324 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11311 | /* 29328 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 11312 | /* 29332 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 11313 | /* 29336 */ // MIs[1] Operand 1 |
| 11314 | /* 29336 */ // No operand predicates |
| 11315 | /* 29336 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11316 | /* 29338 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (OR64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 11317 | /* 29338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64ri32_ND), |
| 11318 | /* 29341 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11319 | /* 29343 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11320 | /* 29345 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 11321 | /* 29348 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 11322 | /* 29351 */ GIR_RootConstrainSelectedInstOperands, |
| 11323 | /* 29352 */ // GIR_Coverage, 22927, |
| 11324 | /* 29352 */ GIR_EraseRootFromParent_Done, |
| 11325 | /* 29353 */ // Label 750: @29353 |
| 11326 | /* 29353 */ GIM_Try, /*On fail goto*//*Label 751*/ GIMT_Encode4(29389), // Rule ID 22829 // |
| 11327 | /* 29358 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 11328 | /* 29361 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11329 | /* 29364 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11330 | /* 29368 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11331 | /* 29372 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11332 | /* 29376 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (OR64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 11333 | /* 29376 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR64rr), |
| 11334 | /* 29381 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 11335 | /* 29387 */ GIR_RootConstrainSelectedInstOperands, |
| 11336 | /* 29388 */ // GIR_Coverage, 22829, |
| 11337 | /* 29388 */ GIR_Done, |
| 11338 | /* 29389 */ // Label 751: @29389 |
| 11339 | /* 29389 */ GIM_Try, /*On fail goto*//*Label 752*/ GIMT_Encode4(29425), // Rule ID 22919 // |
| 11340 | /* 29394 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 11341 | /* 29397 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 11342 | /* 29400 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11343 | /* 29404 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11344 | /* 29408 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 11345 | /* 29412 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (OR64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 11346 | /* 29412 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR64rr_ND), |
| 11347 | /* 29417 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 11348 | /* 29423 */ GIR_RootConstrainSelectedInstOperands, |
| 11349 | /* 29424 */ // GIR_Coverage, 22919, |
| 11350 | /* 29424 */ GIR_Done, |
| 11351 | /* 29425 */ // Label 752: @29425 |
| 11352 | /* 29425 */ GIM_Reject, |
| 11353 | /* 29426 */ // Label 730: @29426 |
| 11354 | /* 29426 */ GIM_Reject, |
| 11355 | /* 29427 */ // Label 667: @29427 |
| 11356 | /* 29427 */ GIM_Try, /*On fail goto*//*Label 753*/ GIMT_Encode4(29526), // Rule ID 19493 // |
| 11357 | /* 29432 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 11358 | /* 29435 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s1, |
| 11359 | /* 29438 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 11360 | /* 29442 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 11361 | /* 29446 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 11362 | /* 29450 */ // (or:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src1, VK2:{ *:[v2i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v2i1] } (KORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src2, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 11363 | /* 29450 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 11364 | /* 29453 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11365 | /* 29457 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11366 | /* 29462 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 11367 | /* 29466 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 11368 | /* 29471 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 11369 | /* 29474 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11370 | /* 29478 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11371 | /* 29483 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 11372 | /* 29487 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 11373 | /* 29492 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 11374 | /* 29495 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KORWkk), |
| 11375 | /* 29499 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11376 | /* 29504 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 11377 | /* 29507 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 11378 | /* 29510 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 11379 | /* 29512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11380 | /* 29515 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11381 | /* 29517 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 11382 | /* 29520 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 11383 | /* 29525 */ // GIR_Coverage, 19493, |
| 11384 | /* 29525 */ GIR_EraseRootFromParent_Done, |
| 11385 | /* 29526 */ // Label 753: @29526 |
| 11386 | /* 29526 */ GIM_Reject, |
| 11387 | /* 29527 */ // Label 668: @29527 |
| 11388 | /* 29527 */ GIM_Try, /*On fail goto*//*Label 754*/ GIMT_Encode4(29868), |
| 11389 | /* 29532 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 11390 | /* 29535 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11391 | /* 29538 */ GIM_Try, /*On fail goto*//*Label 755*/ GIMT_Encode4(29600), // Rule ID 23363 // |
| 11392 | /* 29543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11393 | /* 29546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11394 | /* 29550 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11395 | /* 29554 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11396 | /* 29558 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11397 | /* 29561 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11398 | /* 29565 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11399 | /* 29569 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11400 | /* 29573 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11401 | /* 29575 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11402 | /* 29582 */ // (or:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src1) => (VPORrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11403 | /* 29582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 11404 | /* 29585 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11405 | /* 29587 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11406 | /* 29589 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11407 | /* 29593 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11408 | /* 29598 */ GIR_RootConstrainSelectedInstOperands, |
| 11409 | /* 29599 */ // GIR_Coverage, 23363, |
| 11410 | /* 29599 */ GIR_EraseRootFromParent_Done, |
| 11411 | /* 29600 */ // Label 755: @29600 |
| 11412 | /* 29600 */ GIM_Try, /*On fail goto*//*Label 756*/ GIMT_Encode4(29662), // Rule ID 24185 // |
| 11413 | /* 29605 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11414 | /* 29608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11415 | /* 29612 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11416 | /* 29616 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11417 | /* 29620 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11418 | /* 29623 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11419 | /* 29627 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11420 | /* 29631 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11421 | /* 29635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11422 | /* 29637 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11423 | /* 29644 */ // (or:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPORQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11424 | /* 29644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 11425 | /* 29647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11426 | /* 29649 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11427 | /* 29651 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11428 | /* 29655 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11429 | /* 29660 */ GIR_RootConstrainSelectedInstOperands, |
| 11430 | /* 29661 */ // GIR_Coverage, 24185, |
| 11431 | /* 29661 */ GIR_EraseRootFromParent_Done, |
| 11432 | /* 29662 */ // Label 756: @29662 |
| 11433 | /* 29662 */ GIM_Try, /*On fail goto*//*Label 757*/ GIMT_Encode4(29724), // Rule ID 2117 // |
| 11434 | /* 29667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11435 | /* 29670 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11436 | /* 29674 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11437 | /* 29678 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11438 | /* 29682 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11439 | /* 29686 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11440 | /* 29689 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11441 | /* 29693 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11442 | /* 29697 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11443 | /* 29699 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11444 | /* 29706 */ // (or:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11445 | /* 29706 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 11446 | /* 29709 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11447 | /* 29711 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11448 | /* 29713 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11449 | /* 29717 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11450 | /* 29722 */ GIR_RootConstrainSelectedInstOperands, |
| 11451 | /* 29723 */ // GIR_Coverage, 2117, |
| 11452 | /* 29723 */ GIR_EraseRootFromParent_Done, |
| 11453 | /* 29724 */ // Label 757: @29724 |
| 11454 | /* 29724 */ GIM_Try, /*On fail goto*//*Label 758*/ GIMT_Encode4(29786), // Rule ID 5761 // |
| 11455 | /* 29729 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11456 | /* 29732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11457 | /* 29736 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11458 | /* 29740 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11459 | /* 29744 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11460 | /* 29748 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11461 | /* 29751 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11462 | /* 29755 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11463 | /* 29759 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11464 | /* 29761 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11465 | /* 29768 */ // (or:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11466 | /* 29768 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 11467 | /* 29771 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11468 | /* 29773 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11469 | /* 29775 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11470 | /* 29779 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11471 | /* 29784 */ GIR_RootConstrainSelectedInstOperands, |
| 11472 | /* 29785 */ // GIR_Coverage, 5761, |
| 11473 | /* 29785 */ GIR_EraseRootFromParent_Done, |
| 11474 | /* 29786 */ // Label 758: @29786 |
| 11475 | /* 29786 */ GIM_Try, /*On fail goto*//*Label 759*/ GIMT_Encode4(29813), // Rule ID 2116 // |
| 11476 | /* 29791 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11477 | /* 29794 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11478 | /* 29798 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11479 | /* 29802 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11480 | /* 29806 */ // (or:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPORrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 11481 | /* 29806 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORrr), |
| 11482 | /* 29811 */ GIR_RootConstrainSelectedInstOperands, |
| 11483 | /* 29812 */ // GIR_Coverage, 2116, |
| 11484 | /* 29812 */ GIR_Done, |
| 11485 | /* 29813 */ // Label 759: @29813 |
| 11486 | /* 29813 */ GIM_Try, /*On fail goto*//*Label 760*/ GIMT_Encode4(29840), // Rule ID 2118 // |
| 11487 | /* 29818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 11488 | /* 29821 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11489 | /* 29825 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11490 | /* 29829 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11491 | /* 29833 */ // (or:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (PORrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 11492 | /* 29833 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PORrr), |
| 11493 | /* 29838 */ GIR_RootConstrainSelectedInstOperands, |
| 11494 | /* 29839 */ // GIR_Coverage, 2118, |
| 11495 | /* 29839 */ GIR_Done, |
| 11496 | /* 29840 */ // Label 760: @29840 |
| 11497 | /* 29840 */ GIM_Try, /*On fail goto*//*Label 761*/ GIMT_Encode4(29867), // Rule ID 5758 // |
| 11498 | /* 29845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11499 | /* 29848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11500 | /* 29852 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11501 | /* 29856 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11502 | /* 29860 */ // (or:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPORQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 11503 | /* 29860 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rr), |
| 11504 | /* 29865 */ GIR_RootConstrainSelectedInstOperands, |
| 11505 | /* 29866 */ // GIR_Coverage, 5758, |
| 11506 | /* 29866 */ GIR_Done, |
| 11507 | /* 29867 */ // Label 761: @29867 |
| 11508 | /* 29867 */ GIM_Reject, |
| 11509 | /* 29868 */ // Label 754: @29868 |
| 11510 | /* 29868 */ GIM_Reject, |
| 11511 | /* 29869 */ // Label 669: @29869 |
| 11512 | /* 29869 */ GIM_Try, /*On fail goto*//*Label 762*/ GIMT_Encode4(29968), // Rule ID 19494 // |
| 11513 | /* 29874 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 11514 | /* 29877 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s1, |
| 11515 | /* 29880 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 11516 | /* 29884 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 11517 | /* 29888 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 11518 | /* 29892 */ // (or:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src1, VK4:{ *:[v4i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v4i1] } (KORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src2, VK16:{ *:[i32] })), VK4:{ *:[i32] }) |
| 11519 | /* 29892 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 11520 | /* 29895 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11521 | /* 29899 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11522 | /* 29904 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 11523 | /* 29908 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 11524 | /* 29913 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 11525 | /* 29916 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11526 | /* 29920 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11527 | /* 29925 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 11528 | /* 29929 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 11529 | /* 29934 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 11530 | /* 29937 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KORWkk), |
| 11531 | /* 29941 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11532 | /* 29946 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 11533 | /* 29949 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 11534 | /* 29952 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 11535 | /* 29954 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11536 | /* 29957 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11537 | /* 29959 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 11538 | /* 29962 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 11539 | /* 29967 */ // GIR_Coverage, 19494, |
| 11540 | /* 29967 */ GIR_EraseRootFromParent_Done, |
| 11541 | /* 29968 */ // Label 762: @29968 |
| 11542 | /* 29968 */ GIM_Reject, |
| 11543 | /* 29969 */ // Label 670: @29969 |
| 11544 | /* 29969 */ GIM_Try, /*On fail goto*//*Label 763*/ GIMT_Encode4(30310), |
| 11545 | /* 29974 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 11546 | /* 29977 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11547 | /* 29980 */ GIM_Try, /*On fail goto*//*Label 764*/ GIMT_Encode4(30042), // Rule ID 24203 // |
| 11548 | /* 29985 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11549 | /* 29988 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11550 | /* 29992 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11551 | /* 29996 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11552 | /* 30000 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11553 | /* 30003 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11554 | /* 30007 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11555 | /* 30011 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11556 | /* 30015 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11557 | /* 30017 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11558 | /* 30024 */ // (or:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPORDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11559 | /* 30024 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZ128rm), |
| 11560 | /* 30027 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11561 | /* 30029 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11562 | /* 30031 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11563 | /* 30035 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11564 | /* 30040 */ GIR_RootConstrainSelectedInstOperands, |
| 11565 | /* 30041 */ // GIR_Coverage, 24203, |
| 11566 | /* 30041 */ GIR_EraseRootFromParent_Done, |
| 11567 | /* 30042 */ // Label 764: @30042 |
| 11568 | /* 30042 */ GIM_Try, /*On fail goto*//*Label 765*/ GIMT_Encode4(30104), // Rule ID 25256 // |
| 11569 | /* 30047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11570 | /* 30050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11571 | /* 30054 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11572 | /* 30058 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11573 | /* 30062 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11574 | /* 30065 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11575 | /* 30069 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11576 | /* 30073 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11577 | /* 30077 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11578 | /* 30079 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11579 | /* 30086 */ // (or:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPORrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11580 | /* 30086 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 11581 | /* 30089 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11582 | /* 30091 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11583 | /* 30093 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11584 | /* 30097 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11585 | /* 30102 */ GIR_RootConstrainSelectedInstOperands, |
| 11586 | /* 30103 */ // GIR_Coverage, 25256, |
| 11587 | /* 30103 */ GIR_EraseRootFromParent_Done, |
| 11588 | /* 30104 */ // Label 765: @30104 |
| 11589 | /* 30104 */ GIM_Try, /*On fail goto*//*Label 766*/ GIMT_Encode4(30166), // Rule ID 5788 // |
| 11590 | /* 30109 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11591 | /* 30112 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11592 | /* 30116 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11593 | /* 30120 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11594 | /* 30124 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11595 | /* 30128 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11596 | /* 30131 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11597 | /* 30135 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11598 | /* 30139 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11599 | /* 30141 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11600 | /* 30148 */ // (or:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11601 | /* 30148 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZ128rm), |
| 11602 | /* 30151 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11603 | /* 30153 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11604 | /* 30155 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11605 | /* 30159 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11606 | /* 30164 */ GIR_RootConstrainSelectedInstOperands, |
| 11607 | /* 30165 */ // GIR_Coverage, 5788, |
| 11608 | /* 30165 */ GIR_EraseRootFromParent_Done, |
| 11609 | /* 30166 */ // Label 766: @30166 |
| 11610 | /* 30166 */ GIM_Try, /*On fail goto*//*Label 767*/ GIMT_Encode4(30228), // Rule ID 18163 // |
| 11611 | /* 30171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11612 | /* 30174 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11613 | /* 30178 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11614 | /* 30182 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11615 | /* 30186 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11616 | /* 30190 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11617 | /* 30193 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11618 | /* 30197 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11619 | /* 30201 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11620 | /* 30203 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11621 | /* 30210 */ // (or:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11622 | /* 30210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 11623 | /* 30213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11624 | /* 30215 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11625 | /* 30217 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11626 | /* 30221 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11627 | /* 30226 */ GIR_RootConstrainSelectedInstOperands, |
| 11628 | /* 30227 */ // GIR_Coverage, 18163, |
| 11629 | /* 30227 */ GIR_EraseRootFromParent_Done, |
| 11630 | /* 30228 */ // Label 767: @30228 |
| 11631 | /* 30228 */ GIM_Try, /*On fail goto*//*Label 768*/ GIMT_Encode4(30255), // Rule ID 5785 // |
| 11632 | /* 30233 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11633 | /* 30236 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11634 | /* 30240 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11635 | /* 30244 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11636 | /* 30248 */ // (or:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPORDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 11637 | /* 30248 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORDZ128rr), |
| 11638 | /* 30253 */ GIR_RootConstrainSelectedInstOperands, |
| 11639 | /* 30254 */ // GIR_Coverage, 5785, |
| 11640 | /* 30254 */ GIR_Done, |
| 11641 | /* 30255 */ // Label 768: @30255 |
| 11642 | /* 30255 */ GIM_Try, /*On fail goto*//*Label 769*/ GIMT_Encode4(30282), // Rule ID 18151 // |
| 11643 | /* 30260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11644 | /* 30263 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11645 | /* 30267 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11646 | /* 30271 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11647 | /* 30275 */ // (or:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPORrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 11648 | /* 30275 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORrr), |
| 11649 | /* 30280 */ GIR_RootConstrainSelectedInstOperands, |
| 11650 | /* 30281 */ // GIR_Coverage, 18151, |
| 11651 | /* 30281 */ GIR_Done, |
| 11652 | /* 30282 */ // Label 769: @30282 |
| 11653 | /* 30282 */ GIM_Try, /*On fail goto*//*Label 770*/ GIMT_Encode4(30309), // Rule ID 18175 // |
| 11654 | /* 30287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 11655 | /* 30290 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11656 | /* 30294 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11657 | /* 30298 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11658 | /* 30302 */ // (or:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PORrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 11659 | /* 30302 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PORrr), |
| 11660 | /* 30307 */ GIR_RootConstrainSelectedInstOperands, |
| 11661 | /* 30308 */ // GIR_Coverage, 18175, |
| 11662 | /* 30308 */ GIR_Done, |
| 11663 | /* 30309 */ // Label 770: @30309 |
| 11664 | /* 30309 */ GIM_Reject, |
| 11665 | /* 30310 */ // Label 763: @30310 |
| 11666 | /* 30310 */ GIM_Reject, |
| 11667 | /* 30311 */ // Label 671: @30311 |
| 11668 | /* 30311 */ GIM_Try, /*On fail goto*//*Label 771*/ GIMT_Encode4(30776), |
| 11669 | /* 30316 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 11670 | /* 30319 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 11671 | /* 30322 */ GIM_Try, /*On fail goto*//*Label 772*/ GIMT_Encode4(30384), // Rule ID 23365 // |
| 11672 | /* 30327 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11673 | /* 30330 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11674 | /* 30334 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11675 | /* 30338 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11676 | /* 30342 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11677 | /* 30345 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11678 | /* 30349 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11679 | /* 30353 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11680 | /* 30357 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11681 | /* 30359 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11682 | /* 30366 */ // (or:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VPORYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11683 | /* 30366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 11684 | /* 30369 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11685 | /* 30371 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11686 | /* 30373 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11687 | /* 30377 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11688 | /* 30382 */ GIR_RootConstrainSelectedInstOperands, |
| 11689 | /* 30383 */ // GIR_Coverage, 23365, |
| 11690 | /* 30383 */ GIR_EraseRootFromParent_Done, |
| 11691 | /* 30384 */ // Label 772: @30384 |
| 11692 | /* 30384 */ GIM_Try, /*On fail goto*//*Label 773*/ GIMT_Encode4(30446), // Rule ID 24179 // |
| 11693 | /* 30389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11694 | /* 30392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11695 | /* 30396 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11696 | /* 30400 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11697 | /* 30404 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11698 | /* 30407 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11699 | /* 30411 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11700 | /* 30415 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11701 | /* 30419 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11702 | /* 30421 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11703 | /* 30428 */ // (or:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPORQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11704 | /* 30428 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 11705 | /* 30431 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11706 | /* 30433 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11707 | /* 30435 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11708 | /* 30439 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11709 | /* 30444 */ GIR_RootConstrainSelectedInstOperands, |
| 11710 | /* 30445 */ // GIR_Coverage, 24179, |
| 11711 | /* 30445 */ GIR_EraseRootFromParent_Done, |
| 11712 | /* 30446 */ // Label 773: @30446 |
| 11713 | /* 30446 */ GIM_Try, /*On fail goto*//*Label 774*/ GIMT_Encode4(30508), // Rule ID 25246 // |
| 11714 | /* 30451 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11715 | /* 30454 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11716 | /* 30458 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11717 | /* 30462 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11718 | /* 30466 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11719 | /* 30469 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11720 | /* 30473 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11721 | /* 30477 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11722 | /* 30481 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11723 | /* 30483 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11724 | /* 30490 */ // (or:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VORPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11725 | /* 30490 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 11726 | /* 30493 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11727 | /* 30495 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11728 | /* 30497 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11729 | /* 30501 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11730 | /* 30506 */ GIR_RootConstrainSelectedInstOperands, |
| 11731 | /* 30507 */ // GIR_Coverage, 25246, |
| 11732 | /* 30507 */ GIR_EraseRootFromParent_Done, |
| 11733 | /* 30508 */ // Label 774: @30508 |
| 11734 | /* 30508 */ GIM_Try, /*On fail goto*//*Label 775*/ GIMT_Encode4(30570), // Rule ID 2121 // |
| 11735 | /* 30513 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11736 | /* 30516 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11737 | /* 30520 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11738 | /* 30524 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11739 | /* 30528 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11740 | /* 30532 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11741 | /* 30535 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11742 | /* 30539 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11743 | /* 30543 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11744 | /* 30545 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11745 | /* 30552 */ // (or:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11746 | /* 30552 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 11747 | /* 30555 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11748 | /* 30557 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11749 | /* 30559 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11750 | /* 30563 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11751 | /* 30568 */ GIR_RootConstrainSelectedInstOperands, |
| 11752 | /* 30569 */ // GIR_Coverage, 2121, |
| 11753 | /* 30569 */ GIR_EraseRootFromParent_Done, |
| 11754 | /* 30570 */ // Label 775: @30570 |
| 11755 | /* 30570 */ GIM_Try, /*On fail goto*//*Label 776*/ GIMT_Encode4(30632), // Rule ID 5752 // |
| 11756 | /* 30575 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11757 | /* 30578 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11758 | /* 30582 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11759 | /* 30586 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11760 | /* 30590 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11761 | /* 30594 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11762 | /* 30597 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11763 | /* 30601 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11764 | /* 30605 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11765 | /* 30607 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11766 | /* 30614 */ // (or:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11767 | /* 30614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 11768 | /* 30617 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11769 | /* 30619 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11770 | /* 30621 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11771 | /* 30625 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11772 | /* 30630 */ GIR_RootConstrainSelectedInstOperands, |
| 11773 | /* 30631 */ // GIR_Coverage, 5752, |
| 11774 | /* 30631 */ GIR_EraseRootFromParent_Done, |
| 11775 | /* 30632 */ // Label 776: @30632 |
| 11776 | /* 30632 */ GIM_Try, /*On fail goto*//*Label 777*/ GIMT_Encode4(30694), // Rule ID 18137 // |
| 11777 | /* 30637 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11778 | /* 30640 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11779 | /* 30644 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11780 | /* 30648 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11781 | /* 30652 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11782 | /* 30656 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11783 | /* 30659 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11784 | /* 30663 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11785 | /* 30667 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11786 | /* 30669 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11787 | /* 30676 */ // (or:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VORPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11788 | /* 30676 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 11789 | /* 30679 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11790 | /* 30681 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11791 | /* 30683 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11792 | /* 30687 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11793 | /* 30692 */ GIR_RootConstrainSelectedInstOperands, |
| 11794 | /* 30693 */ // GIR_Coverage, 18137, |
| 11795 | /* 30693 */ GIR_EraseRootFromParent_Done, |
| 11796 | /* 30694 */ // Label 777: @30694 |
| 11797 | /* 30694 */ GIM_Try, /*On fail goto*//*Label 778*/ GIMT_Encode4(30721), // Rule ID 2120 // |
| 11798 | /* 30699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11799 | /* 30702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11800 | /* 30706 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11801 | /* 30710 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11802 | /* 30714 */ // (or:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPORYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 11803 | /* 30714 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORYrr), |
| 11804 | /* 30719 */ GIR_RootConstrainSelectedInstOperands, |
| 11805 | /* 30720 */ // GIR_Coverage, 2120, |
| 11806 | /* 30720 */ GIR_Done, |
| 11807 | /* 30721 */ // Label 778: @30721 |
| 11808 | /* 30721 */ GIM_Try, /*On fail goto*//*Label 779*/ GIMT_Encode4(30748), // Rule ID 5749 // |
| 11809 | /* 30726 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11810 | /* 30729 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11811 | /* 30733 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11812 | /* 30737 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11813 | /* 30741 */ // (or:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPORQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 11814 | /* 30741 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rr), |
| 11815 | /* 30746 */ GIR_RootConstrainSelectedInstOperands, |
| 11816 | /* 30747 */ // GIR_Coverage, 5749, |
| 11817 | /* 30747 */ GIR_Done, |
| 11818 | /* 30748 */ // Label 779: @30748 |
| 11819 | /* 30748 */ GIM_Try, /*On fail goto*//*Label 780*/ GIMT_Encode4(30775), // Rule ID 18121 // |
| 11820 | /* 30753 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11821 | /* 30756 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11822 | /* 30760 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11823 | /* 30764 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11824 | /* 30768 */ // (or:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VORPSYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 11825 | /* 30768 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VORPSYrr), |
| 11826 | /* 30773 */ GIR_RootConstrainSelectedInstOperands, |
| 11827 | /* 30774 */ // GIR_Coverage, 18121, |
| 11828 | /* 30774 */ GIR_Done, |
| 11829 | /* 30775 */ // Label 780: @30775 |
| 11830 | /* 30775 */ GIM_Reject, |
| 11831 | /* 30776 */ // Label 771: @30776 |
| 11832 | /* 30776 */ GIM_Reject, |
| 11833 | /* 30777 */ // Label 672: @30777 |
| 11834 | /* 30777 */ GIM_Try, /*On fail goto*//*Label 781*/ GIMT_Encode4(30900), |
| 11835 | /* 30782 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 11836 | /* 30785 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 11837 | /* 30788 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 11838 | /* 30792 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 11839 | /* 30796 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 11840 | /* 30800 */ GIM_Try, /*On fail goto*//*Label 782*/ GIMT_Encode4(30815), // Rule ID 4419 // |
| 11841 | /* 30805 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 11842 | /* 30808 */ // (or:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (KORBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 11843 | /* 30808 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KORBkk), |
| 11844 | /* 30813 */ GIR_RootConstrainSelectedInstOperands, |
| 11845 | /* 30814 */ // GIR_Coverage, 4419, |
| 11846 | /* 30814 */ GIR_Done, |
| 11847 | /* 30815 */ // Label 782: @30815 |
| 11848 | /* 30815 */ GIM_Try, /*On fail goto*//*Label 783*/ GIMT_Encode4(30899), // Rule ID 19491 // |
| 11849 | /* 30820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 11850 | /* 30823 */ // (or:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v8i1] } (KORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src2, VK16:{ *:[i32] })), VK8:{ *:[i32] }) |
| 11851 | /* 30823 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 11852 | /* 30826 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11853 | /* 30830 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11854 | /* 30835 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 11855 | /* 30839 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 11856 | /* 30844 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 11857 | /* 30847 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11858 | /* 30851 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11859 | /* 30856 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 11860 | /* 30860 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 11861 | /* 30865 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 11862 | /* 30868 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KORWkk), |
| 11863 | /* 30872 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 11864 | /* 30877 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 11865 | /* 30880 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 11866 | /* 30883 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 11867 | /* 30885 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11868 | /* 30888 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11869 | /* 30890 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 11870 | /* 30893 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 11871 | /* 30898 */ // GIR_Coverage, 19491, |
| 11872 | /* 30898 */ GIR_EraseRootFromParent_Done, |
| 11873 | /* 30899 */ // Label 783: @30899 |
| 11874 | /* 30899 */ GIM_Reject, |
| 11875 | /* 30900 */ // Label 781: @30900 |
| 11876 | /* 30900 */ GIM_Reject, |
| 11877 | /* 30901 */ // Label 673: @30901 |
| 11878 | /* 30901 */ GIM_Try, /*On fail goto*//*Label 784*/ GIMT_Encode4(31242), |
| 11879 | /* 30906 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 11880 | /* 30909 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11881 | /* 30912 */ GIM_Try, /*On fail goto*//*Label 785*/ GIMT_Encode4(30974), // Rule ID 25255 // |
| 11882 | /* 30917 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11883 | /* 30920 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11884 | /* 30924 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11885 | /* 30928 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11886 | /* 30932 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11887 | /* 30935 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11888 | /* 30939 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11889 | /* 30943 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11890 | /* 30947 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11891 | /* 30949 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11892 | /* 30956 */ // (or:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPORrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11893 | /* 30956 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 11894 | /* 30959 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11895 | /* 30961 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11896 | /* 30963 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11897 | /* 30967 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11898 | /* 30972 */ GIR_RootConstrainSelectedInstOperands, |
| 11899 | /* 30973 */ // GIR_Coverage, 25255, |
| 11900 | /* 30973 */ GIR_EraseRootFromParent_Done, |
| 11901 | /* 30974 */ // Label 785: @30974 |
| 11902 | /* 30974 */ GIM_Try, /*On fail goto*//*Label 786*/ GIMT_Encode4(31036), // Rule ID 25435 // |
| 11903 | /* 30979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11904 | /* 30982 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11905 | /* 30986 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11906 | /* 30990 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11907 | /* 30994 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11908 | /* 30997 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11909 | /* 31001 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11910 | /* 31005 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11911 | /* 31009 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11912 | /* 31011 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11913 | /* 31018 */ // (or:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPORQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11914 | /* 31018 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 11915 | /* 31021 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11916 | /* 31023 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11917 | /* 31025 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11918 | /* 31029 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11919 | /* 31034 */ GIR_RootConstrainSelectedInstOperands, |
| 11920 | /* 31035 */ // GIR_Coverage, 25435, |
| 11921 | /* 31035 */ GIR_EraseRootFromParent_Done, |
| 11922 | /* 31036 */ // Label 786: @31036 |
| 11923 | /* 31036 */ GIM_Try, /*On fail goto*//*Label 787*/ GIMT_Encode4(31098), // Rule ID 18162 // |
| 11924 | /* 31041 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11925 | /* 31044 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11926 | /* 31048 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11927 | /* 31052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11928 | /* 31056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11929 | /* 31060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11930 | /* 31063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11931 | /* 31067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11932 | /* 31071 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11933 | /* 31073 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11934 | /* 31080 */ // (or:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11935 | /* 31080 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 11936 | /* 31083 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11937 | /* 31085 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11938 | /* 31087 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11939 | /* 31091 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11940 | /* 31096 */ GIR_RootConstrainSelectedInstOperands, |
| 11941 | /* 31097 */ // GIR_Coverage, 18162, |
| 11942 | /* 31097 */ GIR_EraseRootFromParent_Done, |
| 11943 | /* 31098 */ // Label 787: @31098 |
| 11944 | /* 31098 */ GIM_Try, /*On fail goto*//*Label 788*/ GIMT_Encode4(31160), // Rule ID 20027 // |
| 11945 | /* 31103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11946 | /* 31106 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11947 | /* 31110 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11948 | /* 31114 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11949 | /* 31118 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11950 | /* 31122 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11951 | /* 31125 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11952 | /* 31129 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11953 | /* 31133 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11954 | /* 31135 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11955 | /* 31142 */ // (or:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11956 | /* 31142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 11957 | /* 31145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11958 | /* 31147 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11959 | /* 31149 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11960 | /* 31153 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11961 | /* 31158 */ GIR_RootConstrainSelectedInstOperands, |
| 11962 | /* 31159 */ // GIR_Coverage, 20027, |
| 11963 | /* 31159 */ GIR_EraseRootFromParent_Done, |
| 11964 | /* 31160 */ // Label 788: @31160 |
| 11965 | /* 31160 */ GIM_Try, /*On fail goto*//*Label 789*/ GIMT_Encode4(31187), // Rule ID 18150 // |
| 11966 | /* 31165 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11967 | /* 31168 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11968 | /* 31172 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11969 | /* 31176 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11970 | /* 31180 */ // (or:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPORrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 11971 | /* 31180 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORrr), |
| 11972 | /* 31185 */ GIR_RootConstrainSelectedInstOperands, |
| 11973 | /* 31186 */ // GIR_Coverage, 18150, |
| 11974 | /* 31186 */ GIR_Done, |
| 11975 | /* 31187 */ // Label 789: @31187 |
| 11976 | /* 31187 */ GIM_Try, /*On fail goto*//*Label 790*/ GIMT_Encode4(31214), // Rule ID 18174 // |
| 11977 | /* 31192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 11978 | /* 31195 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11979 | /* 31199 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11980 | /* 31203 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11981 | /* 31207 */ // (or:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PORrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 11982 | /* 31207 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PORrr), |
| 11983 | /* 31212 */ GIR_RootConstrainSelectedInstOperands, |
| 11984 | /* 31213 */ // GIR_Coverage, 18174, |
| 11985 | /* 31213 */ GIR_Done, |
| 11986 | /* 31214 */ // Label 790: @31214 |
| 11987 | /* 31214 */ GIM_Try, /*On fail goto*//*Label 791*/ GIMT_Encode4(31241), // Rule ID 20019 // |
| 11988 | /* 31219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11989 | /* 31222 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11990 | /* 31226 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11991 | /* 31230 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11992 | /* 31234 */ // (or:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPORQZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 11993 | /* 31234 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rr), |
| 11994 | /* 31239 */ GIR_RootConstrainSelectedInstOperands, |
| 11995 | /* 31240 */ // GIR_Coverage, 20019, |
| 11996 | /* 31240 */ GIR_Done, |
| 11997 | /* 31241 */ // Label 791: @31241 |
| 11998 | /* 31241 */ GIM_Reject, |
| 11999 | /* 31242 */ // Label 784: @31242 |
| 12000 | /* 31242 */ GIM_Reject, |
| 12001 | /* 31243 */ // Label 674: @31243 |
| 12002 | /* 31243 */ GIM_Try, /*On fail goto*//*Label 792*/ GIMT_Encode4(31708), |
| 12003 | /* 31248 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 12004 | /* 31251 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 12005 | /* 31254 */ GIM_Try, /*On fail goto*//*Label 793*/ GIMT_Encode4(31316), // Rule ID 24197 // |
| 12006 | /* 31259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 12007 | /* 31262 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12008 | /* 31266 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12009 | /* 31270 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12010 | /* 31274 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12011 | /* 31277 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12012 | /* 31281 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12013 | /* 31285 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12014 | /* 31289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12015 | /* 31291 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12016 | /* 31298 */ // (or:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPORDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12017 | /* 31298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZ256rm), |
| 12018 | /* 31301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12019 | /* 31303 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12020 | /* 31305 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12021 | /* 31309 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12022 | /* 31314 */ GIR_RootConstrainSelectedInstOperands, |
| 12023 | /* 31315 */ // GIR_Coverage, 24197, |
| 12024 | /* 31315 */ GIR_EraseRootFromParent_Done, |
| 12025 | /* 31316 */ // Label 793: @31316 |
| 12026 | /* 31316 */ GIM_Try, /*On fail goto*//*Label 794*/ GIMT_Encode4(31378), // Rule ID 25235 // |
| 12027 | /* 31321 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 12028 | /* 31324 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12029 | /* 31328 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12030 | /* 31332 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12031 | /* 31336 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12032 | /* 31339 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12033 | /* 31343 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12034 | /* 31347 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12035 | /* 31351 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12036 | /* 31353 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12037 | /* 31360 */ // (or:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPORYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12038 | /* 31360 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 12039 | /* 31363 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12040 | /* 31365 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12041 | /* 31367 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12042 | /* 31371 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12043 | /* 31376 */ GIR_RootConstrainSelectedInstOperands, |
| 12044 | /* 31377 */ // GIR_Coverage, 25235, |
| 12045 | /* 31377 */ GIR_EraseRootFromParent_Done, |
| 12046 | /* 31378 */ // Label 794: @31378 |
| 12047 | /* 31378 */ GIM_Try, /*On fail goto*//*Label 795*/ GIMT_Encode4(31440), // Rule ID 25245 // |
| 12048 | /* 31383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 12049 | /* 31386 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12050 | /* 31390 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12051 | /* 31394 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12052 | /* 31398 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12053 | /* 31401 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12054 | /* 31405 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12055 | /* 31409 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12056 | /* 31413 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12057 | /* 31415 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12058 | /* 31422 */ // (or:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VORPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12059 | /* 31422 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 12060 | /* 31425 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12061 | /* 31427 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12062 | /* 31429 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12063 | /* 31433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12064 | /* 31438 */ GIR_RootConstrainSelectedInstOperands, |
| 12065 | /* 31439 */ // GIR_Coverage, 25245, |
| 12066 | /* 31439 */ GIR_EraseRootFromParent_Done, |
| 12067 | /* 31440 */ // Label 795: @31440 |
| 12068 | /* 31440 */ GIM_Try, /*On fail goto*//*Label 796*/ GIMT_Encode4(31502), // Rule ID 5779 // |
| 12069 | /* 31445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 12070 | /* 31448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12071 | /* 31452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12072 | /* 31456 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12073 | /* 31460 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12074 | /* 31464 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12075 | /* 31467 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12076 | /* 31471 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12077 | /* 31475 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12078 | /* 31477 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12079 | /* 31484 */ // (or:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12080 | /* 31484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZ256rm), |
| 12081 | /* 31487 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12082 | /* 31489 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12083 | /* 31491 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12084 | /* 31495 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12085 | /* 31500 */ GIR_RootConstrainSelectedInstOperands, |
| 12086 | /* 31501 */ // GIR_Coverage, 5779, |
| 12087 | /* 31501 */ GIR_EraseRootFromParent_Done, |
| 12088 | /* 31502 */ // Label 796: @31502 |
| 12089 | /* 31502 */ GIM_Try, /*On fail goto*//*Label 797*/ GIMT_Encode4(31564), // Rule ID 18107 // |
| 12090 | /* 31507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 12091 | /* 31510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12092 | /* 31514 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12093 | /* 31518 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12094 | /* 31522 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12095 | /* 31526 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12096 | /* 31529 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12097 | /* 31533 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12098 | /* 31537 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12099 | /* 31539 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12100 | /* 31546 */ // (or:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12101 | /* 31546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 12102 | /* 31549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12103 | /* 31551 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12104 | /* 31553 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12105 | /* 31557 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12106 | /* 31562 */ GIR_RootConstrainSelectedInstOperands, |
| 12107 | /* 31563 */ // GIR_Coverage, 18107, |
| 12108 | /* 31563 */ GIR_EraseRootFromParent_Done, |
| 12109 | /* 31564 */ // Label 797: @31564 |
| 12110 | /* 31564 */ GIM_Try, /*On fail goto*//*Label 798*/ GIMT_Encode4(31626), // Rule ID 18136 // |
| 12111 | /* 31569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 12112 | /* 31572 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12113 | /* 31576 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12114 | /* 31580 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12115 | /* 31584 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12116 | /* 31588 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12117 | /* 31591 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12118 | /* 31595 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12119 | /* 31599 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12120 | /* 31601 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12121 | /* 31608 */ // (or:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VORPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12122 | /* 31608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 12123 | /* 31611 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12124 | /* 31613 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12125 | /* 31615 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12126 | /* 31619 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12127 | /* 31624 */ GIR_RootConstrainSelectedInstOperands, |
| 12128 | /* 31625 */ // GIR_Coverage, 18136, |
| 12129 | /* 31625 */ GIR_EraseRootFromParent_Done, |
| 12130 | /* 31626 */ // Label 798: @31626 |
| 12131 | /* 31626 */ GIM_Try, /*On fail goto*//*Label 799*/ GIMT_Encode4(31653), // Rule ID 5776 // |
| 12132 | /* 31631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 12133 | /* 31634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12134 | /* 31638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12135 | /* 31642 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12136 | /* 31646 */ // (or:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPORDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 12137 | /* 31646 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORDZ256rr), |
| 12138 | /* 31651 */ GIR_RootConstrainSelectedInstOperands, |
| 12139 | /* 31652 */ // GIR_Coverage, 5776, |
| 12140 | /* 31652 */ GIR_Done, |
| 12141 | /* 31653 */ // Label 799: @31653 |
| 12142 | /* 31653 */ GIM_Try, /*On fail goto*//*Label 800*/ GIMT_Encode4(31680), // Rule ID 18095 // |
| 12143 | /* 31658 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 12144 | /* 31661 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12145 | /* 31665 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12146 | /* 31669 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12147 | /* 31673 */ // (or:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPORYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 12148 | /* 31673 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORYrr), |
| 12149 | /* 31678 */ GIR_RootConstrainSelectedInstOperands, |
| 12150 | /* 31679 */ // GIR_Coverage, 18095, |
| 12151 | /* 31679 */ GIR_Done, |
| 12152 | /* 31680 */ // Label 800: @31680 |
| 12153 | /* 31680 */ GIM_Try, /*On fail goto*//*Label 801*/ GIMT_Encode4(31707), // Rule ID 18120 // |
| 12154 | /* 31685 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 12155 | /* 31688 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12156 | /* 31692 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12157 | /* 31696 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12158 | /* 31700 */ // (or:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VORPSYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 12159 | /* 31700 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VORPSYrr), |
| 12160 | /* 31705 */ GIR_RootConstrainSelectedInstOperands, |
| 12161 | /* 31706 */ // GIR_Coverage, 18120, |
| 12162 | /* 31706 */ GIR_Done, |
| 12163 | /* 31707 */ // Label 801: @31707 |
| 12164 | /* 31707 */ GIM_Reject, |
| 12165 | /* 31708 */ // Label 792: @31708 |
| 12166 | /* 31708 */ GIM_Reject, |
| 12167 | /* 31709 */ // Label 675: @31709 |
| 12168 | /* 31709 */ GIM_Try, /*On fail goto*//*Label 802*/ GIMT_Encode4(31864), |
| 12169 | /* 31714 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 12170 | /* 31717 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 12171 | /* 31720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12172 | /* 31724 */ GIM_Try, /*On fail goto*//*Label 803*/ GIMT_Encode4(31782), // Rule ID 24173 // |
| 12173 | /* 31729 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12174 | /* 31732 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12175 | /* 31736 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12176 | /* 31740 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12177 | /* 31743 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12178 | /* 31747 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12179 | /* 31751 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12180 | /* 31755 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12181 | /* 31757 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12182 | /* 31764 */ // (or:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPORQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12183 | /* 31764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 12184 | /* 31767 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12185 | /* 31769 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12186 | /* 31771 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12187 | /* 31775 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12188 | /* 31780 */ GIR_RootConstrainSelectedInstOperands, |
| 12189 | /* 31781 */ // GIR_Coverage, 24173, |
| 12190 | /* 31781 */ GIR_EraseRootFromParent_Done, |
| 12191 | /* 31782 */ // Label 803: @31782 |
| 12192 | /* 31782 */ GIM_Try, /*On fail goto*//*Label 804*/ GIMT_Encode4(31840), // Rule ID 5743 // |
| 12193 | /* 31787 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12194 | /* 31790 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12195 | /* 31794 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12196 | /* 31798 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12197 | /* 31802 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12198 | /* 31805 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12199 | /* 31809 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12200 | /* 31813 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12201 | /* 31815 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12202 | /* 31822 */ // (or:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12203 | /* 31822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 12204 | /* 31825 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12205 | /* 31827 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12206 | /* 31829 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12207 | /* 31833 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12208 | /* 31838 */ GIR_RootConstrainSelectedInstOperands, |
| 12209 | /* 31839 */ // GIR_Coverage, 5743, |
| 12210 | /* 31839 */ GIR_EraseRootFromParent_Done, |
| 12211 | /* 31840 */ // Label 804: @31840 |
| 12212 | /* 31840 */ GIM_Try, /*On fail goto*//*Label 805*/ GIMT_Encode4(31863), // Rule ID 5740 // |
| 12213 | /* 31845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12214 | /* 31848 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12215 | /* 31852 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12216 | /* 31856 */ // (or:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPORQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 12217 | /* 31856 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZrr), |
| 12218 | /* 31861 */ GIR_RootConstrainSelectedInstOperands, |
| 12219 | /* 31862 */ // GIR_Coverage, 5740, |
| 12220 | /* 31862 */ GIR_Done, |
| 12221 | /* 31863 */ // Label 805: @31863 |
| 12222 | /* 31863 */ GIM_Reject, |
| 12223 | /* 31864 */ // Label 802: @31864 |
| 12224 | /* 31864 */ GIM_Reject, |
| 12225 | /* 31865 */ // Label 676: @31865 |
| 12226 | /* 31865 */ GIM_Try, /*On fail goto*//*Label 806*/ GIMT_Encode4(31898), // Rule ID 4420 // |
| 12227 | /* 31870 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12228 | /* 31873 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 12229 | /* 31876 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 12230 | /* 31879 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 12231 | /* 31883 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 12232 | /* 31887 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 12233 | /* 31891 */ // (or:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) => (KORWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 12234 | /* 31891 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KORWkk), |
| 12235 | /* 31896 */ GIR_RootConstrainSelectedInstOperands, |
| 12236 | /* 31897 */ // GIR_Coverage, 4420, |
| 12237 | /* 31897 */ GIR_Done, |
| 12238 | /* 31898 */ // Label 806: @31898 |
| 12239 | /* 31898 */ GIM_Reject, |
| 12240 | /* 31899 */ // Label 677: @31899 |
| 12241 | /* 31899 */ GIM_Try, /*On fail goto*//*Label 807*/ GIMT_Encode4(32240), |
| 12242 | /* 31904 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 12243 | /* 31907 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 12244 | /* 31910 */ GIM_Try, /*On fail goto*//*Label 808*/ GIMT_Encode4(31972), // Rule ID 25254 // |
| 12245 | /* 31915 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 12246 | /* 31918 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 12247 | /* 31922 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12248 | /* 31926 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12249 | /* 31930 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12250 | /* 31933 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12251 | /* 31937 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12252 | /* 31941 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 12253 | /* 31945 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12254 | /* 31947 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12255 | /* 31954 */ // (or:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPORrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12256 | /* 31954 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 12257 | /* 31957 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12258 | /* 31959 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12259 | /* 31961 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12260 | /* 31965 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12261 | /* 31970 */ GIR_RootConstrainSelectedInstOperands, |
| 12262 | /* 31971 */ // GIR_Coverage, 25254, |
| 12263 | /* 31971 */ GIR_EraseRootFromParent_Done, |
| 12264 | /* 31972 */ // Label 808: @31972 |
| 12265 | /* 31972 */ GIM_Try, /*On fail goto*//*Label 809*/ GIMT_Encode4(32034), // Rule ID 25434 // |
| 12266 | /* 31977 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 12267 | /* 31980 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 12268 | /* 31984 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12269 | /* 31988 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12270 | /* 31992 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12271 | /* 31995 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12272 | /* 31999 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12273 | /* 32003 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 12274 | /* 32007 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12275 | /* 32009 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12276 | /* 32016 */ // (or:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPORQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12277 | /* 32016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 12278 | /* 32019 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12279 | /* 32021 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12280 | /* 32023 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12281 | /* 32027 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12282 | /* 32032 */ GIR_RootConstrainSelectedInstOperands, |
| 12283 | /* 32033 */ // GIR_Coverage, 25434, |
| 12284 | /* 32033 */ GIR_EraseRootFromParent_Done, |
| 12285 | /* 32034 */ // Label 809: @32034 |
| 12286 | /* 32034 */ GIM_Try, /*On fail goto*//*Label 810*/ GIMT_Encode4(32096), // Rule ID 18161 // |
| 12287 | /* 32039 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 12288 | /* 32042 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 12289 | /* 32046 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 12290 | /* 32050 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12291 | /* 32054 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12292 | /* 32058 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12293 | /* 32061 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12294 | /* 32065 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12295 | /* 32069 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12296 | /* 32071 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12297 | /* 32078 */ // (or:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12298 | /* 32078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 12299 | /* 32081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12300 | /* 32083 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12301 | /* 32085 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12302 | /* 32089 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12303 | /* 32094 */ GIR_RootConstrainSelectedInstOperands, |
| 12304 | /* 32095 */ // GIR_Coverage, 18161, |
| 12305 | /* 32095 */ GIR_EraseRootFromParent_Done, |
| 12306 | /* 32096 */ // Label 810: @32096 |
| 12307 | /* 32096 */ GIM_Try, /*On fail goto*//*Label 811*/ GIMT_Encode4(32158), // Rule ID 20026 // |
| 12308 | /* 32101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 12309 | /* 32104 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 12310 | /* 32108 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 12311 | /* 32112 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12312 | /* 32116 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12313 | /* 32120 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12314 | /* 32123 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12315 | /* 32127 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12316 | /* 32131 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12317 | /* 32133 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12318 | /* 32140 */ // (or:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12319 | /* 32140 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 12320 | /* 32143 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12321 | /* 32145 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12322 | /* 32147 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12323 | /* 32151 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12324 | /* 32156 */ GIR_RootConstrainSelectedInstOperands, |
| 12325 | /* 32157 */ // GIR_Coverage, 20026, |
| 12326 | /* 32157 */ GIR_EraseRootFromParent_Done, |
| 12327 | /* 32158 */ // Label 811: @32158 |
| 12328 | /* 32158 */ GIM_Try, /*On fail goto*//*Label 812*/ GIMT_Encode4(32185), // Rule ID 18149 // |
| 12329 | /* 32163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 12330 | /* 32166 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 12331 | /* 32170 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 12332 | /* 32174 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 12333 | /* 32178 */ // (or:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPORrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 12334 | /* 32178 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORrr), |
| 12335 | /* 32183 */ GIR_RootConstrainSelectedInstOperands, |
| 12336 | /* 32184 */ // GIR_Coverage, 18149, |
| 12337 | /* 32184 */ GIR_Done, |
| 12338 | /* 32185 */ // Label 812: @32185 |
| 12339 | /* 32185 */ GIM_Try, /*On fail goto*//*Label 813*/ GIMT_Encode4(32212), // Rule ID 18173 // |
| 12340 | /* 32190 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 12341 | /* 32193 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 12342 | /* 32197 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 12343 | /* 32201 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 12344 | /* 32205 */ // (or:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PORrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 12345 | /* 32205 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PORrr), |
| 12346 | /* 32210 */ GIR_RootConstrainSelectedInstOperands, |
| 12347 | /* 32211 */ // GIR_Coverage, 18173, |
| 12348 | /* 32211 */ GIR_Done, |
| 12349 | /* 32212 */ // Label 813: @32212 |
| 12350 | /* 32212 */ GIM_Try, /*On fail goto*//*Label 814*/ GIMT_Encode4(32239), // Rule ID 20018 // |
| 12351 | /* 32217 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 12352 | /* 32220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 12353 | /* 32224 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 12354 | /* 32228 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 12355 | /* 32232 */ // (or:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPORQZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 12356 | /* 32232 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rr), |
| 12357 | /* 32237 */ GIR_RootConstrainSelectedInstOperands, |
| 12358 | /* 32238 */ // GIR_Coverage, 20018, |
| 12359 | /* 32238 */ GIR_Done, |
| 12360 | /* 32239 */ // Label 814: @32239 |
| 12361 | /* 32239 */ GIM_Reject, |
| 12362 | /* 32240 */ // Label 807: @32240 |
| 12363 | /* 32240 */ GIM_Reject, |
| 12364 | /* 32241 */ // Label 678: @32241 |
| 12365 | /* 32241 */ GIM_Try, /*On fail goto*//*Label 815*/ GIMT_Encode4(32706), |
| 12366 | /* 32246 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 12367 | /* 32249 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 12368 | /* 32252 */ GIM_Try, /*On fail goto*//*Label 816*/ GIMT_Encode4(32314), // Rule ID 25234 // |
| 12369 | /* 32257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 12370 | /* 32260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12371 | /* 32264 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12372 | /* 32268 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12373 | /* 32272 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12374 | /* 32275 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12375 | /* 32279 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12376 | /* 32283 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12377 | /* 32287 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12378 | /* 32289 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12379 | /* 32296 */ // (or:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPORYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12380 | /* 32296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 12381 | /* 32299 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12382 | /* 32301 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12383 | /* 32303 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12384 | /* 32307 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12385 | /* 32312 */ GIR_RootConstrainSelectedInstOperands, |
| 12386 | /* 32313 */ // GIR_Coverage, 25234, |
| 12387 | /* 32313 */ GIR_EraseRootFromParent_Done, |
| 12388 | /* 32314 */ // Label 816: @32314 |
| 12389 | /* 32314 */ GIM_Try, /*On fail goto*//*Label 817*/ GIMT_Encode4(32376), // Rule ID 25244 // |
| 12390 | /* 32319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 12391 | /* 32322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12392 | /* 32326 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12393 | /* 32330 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12394 | /* 32334 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12395 | /* 32337 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12396 | /* 32341 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12397 | /* 32345 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12398 | /* 32349 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12399 | /* 32351 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12400 | /* 32358 */ // (or:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VORPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12401 | /* 32358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 12402 | /* 32361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12403 | /* 32363 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12404 | /* 32365 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12405 | /* 32369 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12406 | /* 32374 */ GIR_RootConstrainSelectedInstOperands, |
| 12407 | /* 32375 */ // GIR_Coverage, 25244, |
| 12408 | /* 32375 */ GIR_EraseRootFromParent_Done, |
| 12409 | /* 32376 */ // Label 817: @32376 |
| 12410 | /* 32376 */ GIM_Try, /*On fail goto*//*Label 818*/ GIMT_Encode4(32438), // Rule ID 25441 // |
| 12411 | /* 32381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 12412 | /* 32384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12413 | /* 32388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12414 | /* 32392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12415 | /* 32396 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12416 | /* 32399 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12417 | /* 32403 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12418 | /* 32407 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12419 | /* 32411 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12420 | /* 32413 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12421 | /* 32420 */ // (or:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPORQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12422 | /* 32420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 12423 | /* 32423 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12424 | /* 32425 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12425 | /* 32427 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12426 | /* 32431 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12427 | /* 32436 */ GIR_RootConstrainSelectedInstOperands, |
| 12428 | /* 32437 */ // GIR_Coverage, 25441, |
| 12429 | /* 32437 */ GIR_EraseRootFromParent_Done, |
| 12430 | /* 32438 */ // Label 818: @32438 |
| 12431 | /* 32438 */ GIM_Try, /*On fail goto*//*Label 819*/ GIMT_Encode4(32500), // Rule ID 18106 // |
| 12432 | /* 32443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 12433 | /* 32446 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12434 | /* 32450 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12435 | /* 32454 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12436 | /* 32458 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12437 | /* 32462 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12438 | /* 32465 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12439 | /* 32469 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12440 | /* 32473 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12441 | /* 32475 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12442 | /* 32482 */ // (or:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12443 | /* 32482 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 12444 | /* 32485 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12445 | /* 32487 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12446 | /* 32489 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12447 | /* 32493 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12448 | /* 32498 */ GIR_RootConstrainSelectedInstOperands, |
| 12449 | /* 32499 */ // GIR_Coverage, 18106, |
| 12450 | /* 32499 */ GIR_EraseRootFromParent_Done, |
| 12451 | /* 32500 */ // Label 819: @32500 |
| 12452 | /* 32500 */ GIM_Try, /*On fail goto*//*Label 820*/ GIMT_Encode4(32562), // Rule ID 18135 // |
| 12453 | /* 32505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 12454 | /* 32508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12455 | /* 32512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12456 | /* 32516 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12457 | /* 32520 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12458 | /* 32524 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12459 | /* 32527 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12460 | /* 32531 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12461 | /* 32535 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12462 | /* 32537 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12463 | /* 32544 */ // (or:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VORPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12464 | /* 32544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 12465 | /* 32547 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12466 | /* 32549 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12467 | /* 32551 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12468 | /* 32555 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12469 | /* 32560 */ GIR_RootConstrainSelectedInstOperands, |
| 12470 | /* 32561 */ // GIR_Coverage, 18135, |
| 12471 | /* 32561 */ GIR_EraseRootFromParent_Done, |
| 12472 | /* 32562 */ // Label 820: @32562 |
| 12473 | /* 32562 */ GIM_Try, /*On fail goto*//*Label 821*/ GIMT_Encode4(32624), // Rule ID 20043 // |
| 12474 | /* 32567 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 12475 | /* 32570 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12476 | /* 32574 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12477 | /* 32578 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12478 | /* 32582 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12479 | /* 32586 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12480 | /* 32589 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12481 | /* 32593 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12482 | /* 32597 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12483 | /* 32599 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12484 | /* 32606 */ // (or:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12485 | /* 32606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 12486 | /* 32609 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12487 | /* 32611 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12488 | /* 32613 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12489 | /* 32617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12490 | /* 32622 */ GIR_RootConstrainSelectedInstOperands, |
| 12491 | /* 32623 */ // GIR_Coverage, 20043, |
| 12492 | /* 32623 */ GIR_EraseRootFromParent_Done, |
| 12493 | /* 32624 */ // Label 821: @32624 |
| 12494 | /* 32624 */ GIM_Try, /*On fail goto*//*Label 822*/ GIMT_Encode4(32651), // Rule ID 18094 // |
| 12495 | /* 32629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 12496 | /* 32632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12497 | /* 32636 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12498 | /* 32640 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12499 | /* 32644 */ // (or:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPORYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 12500 | /* 32644 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORYrr), |
| 12501 | /* 32649 */ GIR_RootConstrainSelectedInstOperands, |
| 12502 | /* 32650 */ // GIR_Coverage, 18094, |
| 12503 | /* 32650 */ GIR_Done, |
| 12504 | /* 32651 */ // Label 822: @32651 |
| 12505 | /* 32651 */ GIM_Try, /*On fail goto*//*Label 823*/ GIMT_Encode4(32678), // Rule ID 18119 // |
| 12506 | /* 32656 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 12507 | /* 32659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12508 | /* 32663 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12509 | /* 32667 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12510 | /* 32671 */ // (or:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VORPSYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 12511 | /* 32671 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VORPSYrr), |
| 12512 | /* 32676 */ GIR_RootConstrainSelectedInstOperands, |
| 12513 | /* 32677 */ // GIR_Coverage, 18119, |
| 12514 | /* 32677 */ GIR_Done, |
| 12515 | /* 32678 */ // Label 823: @32678 |
| 12516 | /* 32678 */ GIM_Try, /*On fail goto*//*Label 824*/ GIMT_Encode4(32705), // Rule ID 20035 // |
| 12517 | /* 32683 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 12518 | /* 32686 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12519 | /* 32690 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12520 | /* 32694 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12521 | /* 32698 */ // (or:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPORQZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 12522 | /* 32698 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rr), |
| 12523 | /* 32703 */ GIR_RootConstrainSelectedInstOperands, |
| 12524 | /* 32704 */ // GIR_Coverage, 20035, |
| 12525 | /* 32704 */ GIR_Done, |
| 12526 | /* 32705 */ // Label 824: @32705 |
| 12527 | /* 32705 */ GIM_Reject, |
| 12528 | /* 32706 */ // Label 815: @32706 |
| 12529 | /* 32706 */ GIM_Reject, |
| 12530 | /* 32707 */ // Label 679: @32707 |
| 12531 | /* 32707 */ GIM_Try, /*On fail goto*//*Label 825*/ GIMT_Encode4(32862), |
| 12532 | /* 32712 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 12533 | /* 32715 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 12534 | /* 32718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12535 | /* 32722 */ GIM_Try, /*On fail goto*//*Label 826*/ GIMT_Encode4(32780), // Rule ID 24191 // |
| 12536 | /* 32727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12537 | /* 32730 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12538 | /* 32734 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12539 | /* 32738 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12540 | /* 32741 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12541 | /* 32745 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12542 | /* 32749 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12543 | /* 32753 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12544 | /* 32755 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12545 | /* 32762 */ // (or:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPORDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12546 | /* 32762 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZrm), |
| 12547 | /* 32765 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12548 | /* 32767 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12549 | /* 32769 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12550 | /* 32773 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12551 | /* 32778 */ GIR_RootConstrainSelectedInstOperands, |
| 12552 | /* 32779 */ // GIR_Coverage, 24191, |
| 12553 | /* 32779 */ GIR_EraseRootFromParent_Done, |
| 12554 | /* 32780 */ // Label 826: @32780 |
| 12555 | /* 32780 */ GIM_Try, /*On fail goto*//*Label 827*/ GIMT_Encode4(32838), // Rule ID 5770 // |
| 12556 | /* 32785 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12557 | /* 32788 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12558 | /* 32792 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12559 | /* 32796 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12560 | /* 32800 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12561 | /* 32803 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12562 | /* 32807 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12563 | /* 32811 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12564 | /* 32813 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12565 | /* 32820 */ // (or:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12566 | /* 32820 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZrm), |
| 12567 | /* 32823 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12568 | /* 32825 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12569 | /* 32827 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12570 | /* 32831 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12571 | /* 32836 */ GIR_RootConstrainSelectedInstOperands, |
| 12572 | /* 32837 */ // GIR_Coverage, 5770, |
| 12573 | /* 32837 */ GIR_EraseRootFromParent_Done, |
| 12574 | /* 32838 */ // Label 827: @32838 |
| 12575 | /* 32838 */ GIM_Try, /*On fail goto*//*Label 828*/ GIMT_Encode4(32861), // Rule ID 5767 // |
| 12576 | /* 32843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12577 | /* 32846 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12578 | /* 32850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12579 | /* 32854 */ // (or:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPORDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 12580 | /* 32854 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORDZrr), |
| 12581 | /* 32859 */ GIR_RootConstrainSelectedInstOperands, |
| 12582 | /* 32860 */ // GIR_Coverage, 5767, |
| 12583 | /* 32860 */ GIR_Done, |
| 12584 | /* 32861 */ // Label 828: @32861 |
| 12585 | /* 32861 */ GIM_Reject, |
| 12586 | /* 32862 */ // Label 825: @32862 |
| 12587 | /* 32862 */ GIM_Reject, |
| 12588 | /* 32863 */ // Label 680: @32863 |
| 12589 | /* 32863 */ GIM_Try, /*On fail goto*//*Label 829*/ GIMT_Encode4(32896), // Rule ID 4421 // |
| 12590 | /* 32868 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 12591 | /* 32871 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 12592 | /* 32874 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 12593 | /* 32877 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 12594 | /* 32881 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 12595 | /* 32885 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 12596 | /* 32889 */ // (or:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) => (KORDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 12597 | /* 32889 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KORDkk), |
| 12598 | /* 32894 */ GIR_RootConstrainSelectedInstOperands, |
| 12599 | /* 32895 */ // GIR_Coverage, 4421, |
| 12600 | /* 32895 */ GIR_Done, |
| 12601 | /* 32896 */ // Label 829: @32896 |
| 12602 | /* 32896 */ GIM_Reject, |
| 12603 | /* 32897 */ // Label 681: @32897 |
| 12604 | /* 32897 */ GIM_Try, /*On fail goto*//*Label 830*/ GIMT_Encode4(33362), |
| 12605 | /* 32902 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 12606 | /* 32905 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 12607 | /* 32908 */ GIM_Try, /*On fail goto*//*Label 831*/ GIMT_Encode4(32970), // Rule ID 25233 // |
| 12608 | /* 32913 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 12609 | /* 32916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12610 | /* 32920 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12611 | /* 32924 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12612 | /* 32928 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12613 | /* 32931 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12614 | /* 32935 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12615 | /* 32939 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12616 | /* 32943 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12617 | /* 32945 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12618 | /* 32952 */ // (or:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPORYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12619 | /* 32952 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 12620 | /* 32955 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12621 | /* 32957 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12622 | /* 32959 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12623 | /* 32963 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12624 | /* 32968 */ GIR_RootConstrainSelectedInstOperands, |
| 12625 | /* 32969 */ // GIR_Coverage, 25233, |
| 12626 | /* 32969 */ GIR_EraseRootFromParent_Done, |
| 12627 | /* 32970 */ // Label 831: @32970 |
| 12628 | /* 32970 */ GIM_Try, /*On fail goto*//*Label 832*/ GIMT_Encode4(33032), // Rule ID 25243 // |
| 12629 | /* 32975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 12630 | /* 32978 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12631 | /* 32982 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12632 | /* 32986 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12633 | /* 32990 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12634 | /* 32993 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12635 | /* 32997 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12636 | /* 33001 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12637 | /* 33005 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12638 | /* 33007 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12639 | /* 33014 */ // (or:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VORPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12640 | /* 33014 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 12641 | /* 33017 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12642 | /* 33019 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12643 | /* 33021 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12644 | /* 33025 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12645 | /* 33030 */ GIR_RootConstrainSelectedInstOperands, |
| 12646 | /* 33031 */ // GIR_Coverage, 25243, |
| 12647 | /* 33031 */ GIR_EraseRootFromParent_Done, |
| 12648 | /* 33032 */ // Label 832: @33032 |
| 12649 | /* 33032 */ GIM_Try, /*On fail goto*//*Label 833*/ GIMT_Encode4(33094), // Rule ID 25440 // |
| 12650 | /* 33037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 12651 | /* 33040 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12652 | /* 33044 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12653 | /* 33048 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12654 | /* 33052 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12655 | /* 33055 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12656 | /* 33059 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12657 | /* 33063 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12658 | /* 33067 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12659 | /* 33069 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12660 | /* 33076 */ // (or:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPORQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12661 | /* 33076 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 12662 | /* 33079 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12663 | /* 33081 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12664 | /* 33083 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12665 | /* 33087 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12666 | /* 33092 */ GIR_RootConstrainSelectedInstOperands, |
| 12667 | /* 33093 */ // GIR_Coverage, 25440, |
| 12668 | /* 33093 */ GIR_EraseRootFromParent_Done, |
| 12669 | /* 33094 */ // Label 833: @33094 |
| 12670 | /* 33094 */ GIM_Try, /*On fail goto*//*Label 834*/ GIMT_Encode4(33156), // Rule ID 18105 // |
| 12671 | /* 33099 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 12672 | /* 33102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12673 | /* 33106 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12674 | /* 33110 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12675 | /* 33114 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12676 | /* 33118 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12677 | /* 33121 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12678 | /* 33125 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12679 | /* 33129 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12680 | /* 33131 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12681 | /* 33138 */ // (or:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12682 | /* 33138 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 12683 | /* 33141 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12684 | /* 33143 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12685 | /* 33145 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12686 | /* 33149 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12687 | /* 33154 */ GIR_RootConstrainSelectedInstOperands, |
| 12688 | /* 33155 */ // GIR_Coverage, 18105, |
| 12689 | /* 33155 */ GIR_EraseRootFromParent_Done, |
| 12690 | /* 33156 */ // Label 834: @33156 |
| 12691 | /* 33156 */ GIM_Try, /*On fail goto*//*Label 835*/ GIMT_Encode4(33218), // Rule ID 18134 // |
| 12692 | /* 33161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 12693 | /* 33164 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12694 | /* 33168 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12695 | /* 33172 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12696 | /* 33176 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12697 | /* 33180 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12698 | /* 33183 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12699 | /* 33187 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12700 | /* 33191 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12701 | /* 33193 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12702 | /* 33200 */ // (or:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VORPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12703 | /* 33200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 12704 | /* 33203 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12705 | /* 33205 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12706 | /* 33207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12707 | /* 33211 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12708 | /* 33216 */ GIR_RootConstrainSelectedInstOperands, |
| 12709 | /* 33217 */ // GIR_Coverage, 18134, |
| 12710 | /* 33217 */ GIR_EraseRootFromParent_Done, |
| 12711 | /* 33218 */ // Label 835: @33218 |
| 12712 | /* 33218 */ GIM_Try, /*On fail goto*//*Label 836*/ GIMT_Encode4(33280), // Rule ID 20042 // |
| 12713 | /* 33223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 12714 | /* 33226 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12715 | /* 33230 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12716 | /* 33234 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12717 | /* 33238 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12718 | /* 33242 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12719 | /* 33245 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12720 | /* 33249 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12721 | /* 33253 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12722 | /* 33255 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12723 | /* 33262 */ // (or:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12724 | /* 33262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 12725 | /* 33265 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12726 | /* 33267 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12727 | /* 33269 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12728 | /* 33273 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12729 | /* 33278 */ GIR_RootConstrainSelectedInstOperands, |
| 12730 | /* 33279 */ // GIR_Coverage, 20042, |
| 12731 | /* 33279 */ GIR_EraseRootFromParent_Done, |
| 12732 | /* 33280 */ // Label 836: @33280 |
| 12733 | /* 33280 */ GIM_Try, /*On fail goto*//*Label 837*/ GIMT_Encode4(33307), // Rule ID 18093 // |
| 12734 | /* 33285 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 12735 | /* 33288 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12736 | /* 33292 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12737 | /* 33296 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12738 | /* 33300 */ // (or:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPORYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 12739 | /* 33300 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORYrr), |
| 12740 | /* 33305 */ GIR_RootConstrainSelectedInstOperands, |
| 12741 | /* 33306 */ // GIR_Coverage, 18093, |
| 12742 | /* 33306 */ GIR_Done, |
| 12743 | /* 33307 */ // Label 837: @33307 |
| 12744 | /* 33307 */ GIM_Try, /*On fail goto*//*Label 838*/ GIMT_Encode4(33334), // Rule ID 18118 // |
| 12745 | /* 33312 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 12746 | /* 33315 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12747 | /* 33319 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12748 | /* 33323 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 12749 | /* 33327 */ // (or:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VORPSYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 12750 | /* 33327 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VORPSYrr), |
| 12751 | /* 33332 */ GIR_RootConstrainSelectedInstOperands, |
| 12752 | /* 33333 */ // GIR_Coverage, 18118, |
| 12753 | /* 33333 */ GIR_Done, |
| 12754 | /* 33334 */ // Label 838: @33334 |
| 12755 | /* 33334 */ GIM_Try, /*On fail goto*//*Label 839*/ GIMT_Encode4(33361), // Rule ID 20034 // |
| 12756 | /* 33339 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 12757 | /* 33342 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12758 | /* 33346 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12759 | /* 33350 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 12760 | /* 33354 */ // (or:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPORQZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 12761 | /* 33354 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rr), |
| 12762 | /* 33359 */ GIR_RootConstrainSelectedInstOperands, |
| 12763 | /* 33360 */ // GIR_Coverage, 20034, |
| 12764 | /* 33360 */ GIR_Done, |
| 12765 | /* 33361 */ // Label 839: @33361 |
| 12766 | /* 33361 */ GIM_Reject, |
| 12767 | /* 33362 */ // Label 830: @33362 |
| 12768 | /* 33362 */ GIM_Reject, |
| 12769 | /* 33363 */ // Label 682: @33363 |
| 12770 | /* 33363 */ GIM_Try, /*On fail goto*//*Label 840*/ GIMT_Encode4(33518), |
| 12771 | /* 33368 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 12772 | /* 33371 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 12773 | /* 33374 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12774 | /* 33378 */ GIM_Try, /*On fail goto*//*Label 841*/ GIMT_Encode4(33436), // Rule ID 25447 // |
| 12775 | /* 33383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12776 | /* 33386 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12777 | /* 33390 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12778 | /* 33394 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12779 | /* 33397 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12780 | /* 33401 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12781 | /* 33405 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12782 | /* 33409 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12783 | /* 33411 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12784 | /* 33418 */ // (or:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPORQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12785 | /* 33418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 12786 | /* 33421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12787 | /* 33423 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12788 | /* 33425 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12789 | /* 33429 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12790 | /* 33434 */ GIR_RootConstrainSelectedInstOperands, |
| 12791 | /* 33435 */ // GIR_Coverage, 25447, |
| 12792 | /* 33435 */ GIR_EraseRootFromParent_Done, |
| 12793 | /* 33436 */ // Label 841: @33436 |
| 12794 | /* 33436 */ GIM_Try, /*On fail goto*//*Label 842*/ GIMT_Encode4(33494), // Rule ID 20059 // |
| 12795 | /* 33441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12796 | /* 33444 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12797 | /* 33448 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12798 | /* 33452 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12799 | /* 33456 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12800 | /* 33459 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12801 | /* 33463 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12802 | /* 33467 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12803 | /* 33469 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12804 | /* 33476 */ // (or:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12805 | /* 33476 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 12806 | /* 33479 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12807 | /* 33481 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12808 | /* 33483 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12809 | /* 33487 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12810 | /* 33492 */ GIR_RootConstrainSelectedInstOperands, |
| 12811 | /* 33493 */ // GIR_Coverage, 20059, |
| 12812 | /* 33493 */ GIR_EraseRootFromParent_Done, |
| 12813 | /* 33494 */ // Label 842: @33494 |
| 12814 | /* 33494 */ GIM_Try, /*On fail goto*//*Label 843*/ GIMT_Encode4(33517), // Rule ID 20051 // |
| 12815 | /* 33499 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12816 | /* 33502 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12817 | /* 33506 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12818 | /* 33510 */ // (or:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPORQZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 12819 | /* 33510 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZrr), |
| 12820 | /* 33515 */ GIR_RootConstrainSelectedInstOperands, |
| 12821 | /* 33516 */ // GIR_Coverage, 20051, |
| 12822 | /* 33516 */ GIR_Done, |
| 12823 | /* 33517 */ // Label 843: @33517 |
| 12824 | /* 33517 */ GIM_Reject, |
| 12825 | /* 33518 */ // Label 840: @33518 |
| 12826 | /* 33518 */ GIM_Reject, |
| 12827 | /* 33519 */ // Label 683: @33519 |
| 12828 | /* 33519 */ GIM_Try, /*On fail goto*//*Label 844*/ GIMT_Encode4(33552), // Rule ID 4422 // |
| 12829 | /* 33524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 12830 | /* 33527 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 12831 | /* 33530 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s1, |
| 12832 | /* 33533 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 12833 | /* 33537 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 12834 | /* 33541 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 12835 | /* 33545 */ // (or:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) => (KORQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 12836 | /* 33545 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KORQkk), |
| 12837 | /* 33550 */ GIR_RootConstrainSelectedInstOperands, |
| 12838 | /* 33551 */ // GIR_Coverage, 4422, |
| 12839 | /* 33551 */ GIR_Done, |
| 12840 | /* 33552 */ // Label 844: @33552 |
| 12841 | /* 33552 */ GIM_Reject, |
| 12842 | /* 33553 */ // Label 684: @33553 |
| 12843 | /* 33553 */ GIM_Try, /*On fail goto*//*Label 845*/ GIMT_Encode4(33708), |
| 12844 | /* 33558 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 12845 | /* 33561 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 12846 | /* 33564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12847 | /* 33568 */ GIM_Try, /*On fail goto*//*Label 846*/ GIMT_Encode4(33626), // Rule ID 25446 // |
| 12848 | /* 33573 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12849 | /* 33576 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12850 | /* 33580 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12851 | /* 33584 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12852 | /* 33587 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12853 | /* 33591 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12854 | /* 33595 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12855 | /* 33599 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12856 | /* 33601 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12857 | /* 33608 */ // (or:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPORQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12858 | /* 33608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 12859 | /* 33611 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12860 | /* 33613 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12861 | /* 33615 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12862 | /* 33619 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12863 | /* 33624 */ GIR_RootConstrainSelectedInstOperands, |
| 12864 | /* 33625 */ // GIR_Coverage, 25446, |
| 12865 | /* 33625 */ GIR_EraseRootFromParent_Done, |
| 12866 | /* 33626 */ // Label 846: @33626 |
| 12867 | /* 33626 */ GIM_Try, /*On fail goto*//*Label 847*/ GIMT_Encode4(33684), // Rule ID 20058 // |
| 12868 | /* 33631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12869 | /* 33634 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12870 | /* 33638 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12871 | /* 33642 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12872 | /* 33646 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12873 | /* 33649 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12874 | /* 33653 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12875 | /* 33657 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12876 | /* 33659 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12877 | /* 33666 */ // (or:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12878 | /* 33666 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 12879 | /* 33669 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12880 | /* 33671 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12881 | /* 33673 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12882 | /* 33677 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12883 | /* 33682 */ GIR_RootConstrainSelectedInstOperands, |
| 12884 | /* 33683 */ // GIR_Coverage, 20058, |
| 12885 | /* 33683 */ GIR_EraseRootFromParent_Done, |
| 12886 | /* 33684 */ // Label 847: @33684 |
| 12887 | /* 33684 */ GIM_Try, /*On fail goto*//*Label 848*/ GIMT_Encode4(33707), // Rule ID 20050 // |
| 12888 | /* 33689 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12889 | /* 33692 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12890 | /* 33696 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12891 | /* 33700 */ // (or:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPORQZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 12892 | /* 33700 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZrr), |
| 12893 | /* 33705 */ GIR_RootConstrainSelectedInstOperands, |
| 12894 | /* 33706 */ // GIR_Coverage, 20050, |
| 12895 | /* 33706 */ GIR_Done, |
| 12896 | /* 33707 */ // Label 848: @33707 |
| 12897 | /* 33707 */ GIM_Reject, |
| 12898 | /* 33708 */ // Label 845: @33708 |
| 12899 | /* 33708 */ GIM_Reject, |
| 12900 | /* 33709 */ // Label 685: @33709 |
| 12901 | /* 33709 */ GIM_Reject, |
| 12902 | /* 33710 */ // Label 5: @33710 |
| 12903 | /* 33710 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(25), /*)*//*default:*//*Label 872*/ GIMT_Encode4(46410), |
| 12904 | /* 33721 */ /*GILLT_s1*//*Label 849*/ GIMT_Encode4(33821), |
| 12905 | /* 33725 */ /*GILLT_s8*//*Label 850*/ GIMT_Encode4(34379), |
| 12906 | /* 33729 */ /*GILLT_s16*//*Label 851*/ GIMT_Encode4(34906), |
| 12907 | /* 33733 */ /*GILLT_s32*//*Label 852*/ GIMT_Encode4(35651), |
| 12908 | /* 33737 */ /*GILLT_s64*//*Label 853*/ GIMT_Encode4(36599), GIMT_Encode4(0), GIMT_Encode4(0), |
| 12909 | /* 33749 */ /*GILLT_v2s1*//*Label 854*/ GIMT_Encode4(37506), |
| 12910 | /* 33753 */ /*GILLT_v2s64*//*Label 855*/ GIMT_Encode4(38048), |
| 12911 | /* 33757 */ /*GILLT_v4s1*//*Label 856*/ GIMT_Encode4(38668), |
| 12912 | /* 33761 */ /*GILLT_v4s32*//*Label 857*/ GIMT_Encode4(39210), |
| 12913 | /* 33765 */ /*GILLT_v4s64*//*Label 858*/ GIMT_Encode4(39830), |
| 12914 | /* 33769 */ /*GILLT_v8s1*//*Label 859*/ GIMT_Encode4(40574), |
| 12915 | /* 33773 */ /*GILLT_v8s16*//*Label 860*/ GIMT_Encode4(41372), |
| 12916 | /* 33777 */ /*GILLT_v8s32*//*Label 861*/ GIMT_Encode4(41992), |
| 12917 | /* 33781 */ /*GILLT_v8s64*//*Label 862*/ GIMT_Encode4(42736), |
| 12918 | /* 33785 */ /*GILLT_v16s1*//*Label 863*/ GIMT_Encode4(42934), |
| 12919 | /* 33789 */ /*GILLT_v16s8*//*Label 864*/ GIMT_Encode4(43192), |
| 12920 | /* 33793 */ /*GILLT_v16s16*//*Label 865*/ GIMT_Encode4(43812), |
| 12921 | /* 33797 */ /*GILLT_v16s32*//*Label 866*/ GIMT_Encode4(44556), |
| 12922 | /* 33801 */ /*GILLT_v32s1*//*Label 867*/ GIMT_Encode4(44754), |
| 12923 | /* 33805 */ /*GILLT_v32s8*//*Label 868*/ GIMT_Encode4(45012), |
| 12924 | /* 33809 */ /*GILLT_v32s16*//*Label 869*/ GIMT_Encode4(45756), |
| 12925 | /* 33813 */ /*GILLT_v64s1*//*Label 870*/ GIMT_Encode4(45954), |
| 12926 | /* 33817 */ /*GILLT_v64s8*//*Label 871*/ GIMT_Encode4(46212), |
| 12927 | /* 33821 */ // Label 849: @33821 |
| 12928 | /* 33821 */ GIM_Try, /*On fail goto*//*Label 873*/ GIMT_Encode4(34378), |
| 12929 | /* 33826 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s1, |
| 12930 | /* 33829 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s1, |
| 12931 | /* 33832 */ GIM_Try, /*On fail goto*//*Label 874*/ GIMT_Encode4(33956), // Rule ID 25372 // |
| 12932 | /* 33837 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12933 | /* 33841 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12934 | /* 33845 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 12935 | /* 33849 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s1, |
| 12936 | /* 33853 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s1, |
| 12937 | /* 33857 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12938 | /* 33862 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 12939 | /* 33866 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 12940 | /* 33872 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 12941 | /* 33874 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12942 | /* 33878 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 12943 | /* 33880 */ // (xor:{ *:[v1i1] } (xor:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src1, immAllOnesV:{ *:[v1i1] }), VK1:{ *:[v1i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v1i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src2, VK16:{ *:[i32] })), VK1:{ *:[i32] }) |
| 12944 | /* 33880 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 12945 | /* 33883 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12946 | /* 33887 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 12947 | /* 33892 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 12948 | /* 33896 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12949 | /* 33901 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 12950 | /* 33904 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12951 | /* 33908 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 12952 | /* 33913 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 12953 | /* 33917 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12954 | /* 33922 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 12955 | /* 33925 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 12956 | /* 33929 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 12957 | /* 33934 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12958 | /* 33937 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 12959 | /* 33940 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 12960 | /* 33942 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12961 | /* 33945 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12962 | /* 33947 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12963 | /* 33950 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 12964 | /* 33955 */ // GIR_Coverage, 25372, |
| 12965 | /* 33955 */ GIR_EraseRootFromParent_Done, |
| 12966 | /* 33956 */ // Label 874: @33956 |
| 12967 | /* 33956 */ GIM_Try, /*On fail goto*//*Label 875*/ GIMT_Encode4(34081), // Rule ID 19496 // |
| 12968 | /* 33961 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12969 | /* 33965 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12970 | /* 33969 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 12971 | /* 33973 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s1, |
| 12972 | /* 33977 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s1, |
| 12973 | /* 33981 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12974 | /* 33986 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12975 | /* 33991 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 12976 | /* 33995 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 12977 | /* 34001 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 12978 | /* 34003 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 12979 | /* 34005 */ // (xor:{ *:[v1i1] } (xor:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src1, VK1:{ *:[v1i1] }:$src2), immAllOnesV:{ *:[v1i1] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src2, VK16:{ *:[i32] })), VK1:{ *:[i32] }) |
| 12980 | /* 34005 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 12981 | /* 34008 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12982 | /* 34012 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 12983 | /* 34017 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 12984 | /* 34021 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12985 | /* 34026 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 12986 | /* 34029 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12987 | /* 34033 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 12988 | /* 34038 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 12989 | /* 34042 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12990 | /* 34047 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 12991 | /* 34050 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 12992 | /* 34054 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 12993 | /* 34059 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12994 | /* 34062 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 12995 | /* 34065 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 12996 | /* 34067 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12997 | /* 34070 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12998 | /* 34072 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12999 | /* 34075 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 13000 | /* 34080 */ // GIR_Coverage, 19496, |
| 13001 | /* 34080 */ GIR_EraseRootFromParent_Done, |
| 13002 | /* 34081 */ // Label 875: @34081 |
| 13003 | /* 34081 */ GIM_Try, /*On fail goto*//*Label 876*/ GIMT_Encode4(34205), // Rule ID 25373 // |
| 13004 | /* 34086 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 13005 | /* 34090 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 13006 | /* 34094 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13007 | /* 34098 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 13008 | /* 34102 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s1, |
| 13009 | /* 34106 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s1, |
| 13010 | /* 34110 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 13011 | /* 34115 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 13012 | /* 34119 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13013 | /* 34125 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 13014 | /* 34127 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 13015 | /* 34129 */ // (xor:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src2, (xor:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src1, immAllOnesV:{ *:[v1i1] })) => (COPY_TO_REGCLASS:{ *:[v1i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src2, VK16:{ *:[i32] })), VK1:{ *:[i32] }) |
| 13016 | /* 34129 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 13017 | /* 34132 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13018 | /* 34136 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13019 | /* 34141 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 13020 | /* 34145 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13021 | /* 34150 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13022 | /* 34153 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13023 | /* 34157 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13024 | /* 34162 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 13025 | /* 34166 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13026 | /* 34171 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13027 | /* 34174 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 13028 | /* 34178 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13029 | /* 34183 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13030 | /* 34186 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 13031 | /* 34189 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13032 | /* 34191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13033 | /* 34194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13034 | /* 34196 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13035 | /* 34199 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 13036 | /* 34204 */ // GIR_Coverage, 25373, |
| 13037 | /* 34204 */ GIR_EraseRootFromParent_Done, |
| 13038 | /* 34205 */ // Label 876: @34205 |
| 13039 | /* 34205 */ GIM_Try, /*On fail goto*//*Label 877*/ GIMT_Encode4(34284), // Rule ID 19482 // |
| 13040 | /* 34210 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13041 | /* 34214 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 13042 | /* 34218 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13043 | /* 34222 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13044 | /* 34228 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 13045 | /* 34230 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13046 | /* 34232 */ // (xor:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src, immAllOnesV:{ *:[v1i1] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } (KNOTWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 13047 | /* 34232 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13048 | /* 34235 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13049 | /* 34239 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13050 | /* 34244 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 13051 | /* 34248 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13052 | /* 34253 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13053 | /* 34256 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 13054 | /* 34260 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13055 | /* 34265 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13056 | /* 34268 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13057 | /* 34270 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13058 | /* 34273 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13059 | /* 34275 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13060 | /* 34278 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 13061 | /* 34283 */ // GIR_Coverage, 19482, |
| 13062 | /* 34283 */ GIR_EraseRootFromParent_Done, |
| 13063 | /* 34284 */ // Label 877: @34284 |
| 13064 | /* 34284 */ GIM_Try, /*On fail goto*//*Label 878*/ GIMT_Encode4(34377), // Rule ID 19500 // |
| 13065 | /* 34289 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 13066 | /* 34293 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 13067 | /* 34297 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 13068 | /* 34301 */ // (xor:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src1, VK1:{ *:[v1i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v1i1] } (KXORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src2, VK16:{ *:[i32] })), VK1:{ *:[i32] }) |
| 13069 | /* 34301 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 13070 | /* 34304 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13071 | /* 34308 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13072 | /* 34313 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 13073 | /* 34317 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13074 | /* 34322 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13075 | /* 34325 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13076 | /* 34329 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13077 | /* 34334 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 13078 | /* 34338 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13079 | /* 34343 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13080 | /* 34346 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXORWkk), |
| 13081 | /* 34350 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13082 | /* 34355 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13083 | /* 34358 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 13084 | /* 34361 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13085 | /* 34363 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13086 | /* 34366 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13087 | /* 34368 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13088 | /* 34371 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 13089 | /* 34376 */ // GIR_Coverage, 19500, |
| 13090 | /* 34376 */ GIR_EraseRootFromParent_Done, |
| 13091 | /* 34377 */ // Label 878: @34377 |
| 13092 | /* 34377 */ GIM_Reject, |
| 13093 | /* 34378 */ // Label 873: @34378 |
| 13094 | /* 34378 */ GIM_Reject, |
| 13095 | /* 34379 */ // Label 850: @34379 |
| 13096 | /* 34379 */ GIM_Try, /*On fail goto*//*Label 879*/ GIMT_Encode4(34905), |
| 13097 | /* 34384 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 13098 | /* 34387 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 13099 | /* 34390 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13100 | /* 34394 */ GIM_Try, /*On fail goto*//*Label 880*/ GIMT_Encode4(34450), // Rule ID 273 // |
| 13101 | /* 34399 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 13102 | /* 34402 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13103 | /* 34406 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13104 | /* 34410 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13105 | /* 34413 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13106 | /* 34417 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 13107 | /* 34421 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 13108 | /* 34425 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13109 | /* 34427 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13110 | /* 34434 */ // (xor:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, -1:{ *:[i8] }) => (NOT8m_ND:{ *:[i8] } addr:{ *:[iPTR] }:$src1) |
| 13111 | /* 34434 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT8m_ND), |
| 13112 | /* 34437 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13113 | /* 34439 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 13114 | /* 34443 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13115 | /* 34448 */ GIR_RootConstrainSelectedInstOperands, |
| 13116 | /* 34449 */ // GIR_Coverage, 273, |
| 13117 | /* 34449 */ GIR_EraseRootFromParent_Done, |
| 13118 | /* 34450 */ // Label 880: @34450 |
| 13119 | /* 34450 */ GIM_Try, /*On fail goto*//*Label 881*/ GIMT_Encode4(34511), // Rule ID 26065 // |
| 13120 | /* 34455 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13121 | /* 34458 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13122 | /* 34462 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13123 | /* 34466 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13124 | /* 34469 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13125 | /* 34473 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 13126 | /* 34477 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13127 | /* 34481 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13128 | /* 34483 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13129 | /* 34490 */ // (xor:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, GR8:{ *:[i8] }:$src1) => (XOR8rm:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13130 | /* 34490 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8rm), |
| 13131 | /* 34493 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13132 | /* 34495 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13133 | /* 34497 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13134 | /* 34501 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13135 | /* 34504 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13136 | /* 34509 */ GIR_RootConstrainSelectedInstOperands, |
| 13137 | /* 34510 */ // GIR_Coverage, 26065, |
| 13138 | /* 34510 */ GIR_EraseRootFromParent_Done, |
| 13139 | /* 34511 */ // Label 881: @34511 |
| 13140 | /* 34511 */ GIM_Try, /*On fail goto*//*Label 882*/ GIMT_Encode4(34572), // Rule ID 26084 // |
| 13141 | /* 34516 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13142 | /* 34519 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13143 | /* 34523 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13144 | /* 34527 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13145 | /* 34530 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13146 | /* 34534 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 13147 | /* 34538 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13148 | /* 34542 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13149 | /* 34544 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13150 | /* 34551 */ // (xor:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, GR8:{ *:[i8] }:$src1) => (XOR8rm_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13151 | /* 34551 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8rm_ND), |
| 13152 | /* 34554 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13153 | /* 34556 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13154 | /* 34558 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13155 | /* 34562 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13156 | /* 34565 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13157 | /* 34570 */ GIR_RootConstrainSelectedInstOperands, |
| 13158 | /* 34571 */ // GIR_Coverage, 26084, |
| 13159 | /* 34571 */ GIR_EraseRootFromParent_Done, |
| 13160 | /* 34572 */ // Label 882: @34572 |
| 13161 | /* 34572 */ GIM_Try, /*On fail goto*//*Label 883*/ GIMT_Encode4(34633), // Rule ID 22842 // |
| 13162 | /* 34577 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13163 | /* 34580 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13164 | /* 34584 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13165 | /* 34588 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13166 | /* 34592 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13167 | /* 34595 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13168 | /* 34599 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 13169 | /* 34603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13170 | /* 34605 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13171 | /* 34612 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>) => (XOR8rm:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13172 | /* 34612 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8rm), |
| 13173 | /* 34615 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13174 | /* 34617 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13175 | /* 34619 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13176 | /* 34623 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13177 | /* 34626 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13178 | /* 34631 */ GIR_RootConstrainSelectedInstOperands, |
| 13179 | /* 34632 */ // GIR_Coverage, 22842, |
| 13180 | /* 34632 */ GIR_EraseRootFromParent_Done, |
| 13181 | /* 34633 */ // Label 883: @34633 |
| 13182 | /* 34633 */ GIM_Try, /*On fail goto*//*Label 884*/ GIMT_Encode4(34694), // Rule ID 22932 // |
| 13183 | /* 34638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13184 | /* 34641 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13185 | /* 34645 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13186 | /* 34649 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13187 | /* 34653 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13188 | /* 34656 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13189 | /* 34660 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 13190 | /* 34664 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13191 | /* 34666 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13192 | /* 34673 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>) => (XOR8rm_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13193 | /* 34673 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8rm_ND), |
| 13194 | /* 34676 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13195 | /* 34678 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13196 | /* 34680 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13197 | /* 34684 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13198 | /* 34687 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13199 | /* 34692 */ GIR_RootConstrainSelectedInstOperands, |
| 13200 | /* 34693 */ // GIR_Coverage, 22932, |
| 13201 | /* 34693 */ GIR_EraseRootFromParent_Done, |
| 13202 | /* 34694 */ // Label 884: @34694 |
| 13203 | /* 34694 */ GIM_Try, /*On fail goto*//*Label 885*/ GIMT_Encode4(34722), // Rule ID 22599 // |
| 13204 | /* 34699 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13205 | /* 34703 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-128), |
| 13206 | /* 34707 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, -128:{ *:[i8] }) => (ADD8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, -128:{ *:[i8] }) |
| 13207 | /* 34707 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8ri), |
| 13208 | /* 34710 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13209 | /* 34712 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13210 | /* 34714 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 13211 | /* 34717 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13212 | /* 34720 */ GIR_RootConstrainSelectedInstOperands, |
| 13213 | /* 34721 */ // GIR_Coverage, 22599, |
| 13214 | /* 34721 */ GIR_EraseRootFromParent_Done, |
| 13215 | /* 34722 */ // Label 885: @34722 |
| 13216 | /* 34722 */ GIM_Try, /*On fail goto*//*Label 886*/ GIMT_Encode4(34747), // Rule ID 245 // |
| 13217 | /* 34727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13218 | /* 34730 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13219 | /* 34734 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 13220 | /* 34738 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, -1:{ *:[i8] }) => (NOT8r:{ *:[i8] } GR8:{ *:[i8] }:$src1) |
| 13221 | /* 34738 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT8r), |
| 13222 | /* 34741 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13223 | /* 34743 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13224 | /* 34745 */ GIR_RootConstrainSelectedInstOperands, |
| 13225 | /* 34746 */ // GIR_Coverage, 245, |
| 13226 | /* 34746 */ GIR_EraseRootFromParent_Done, |
| 13227 | /* 34747 */ // Label 886: @34747 |
| 13228 | /* 34747 */ GIM_Try, /*On fail goto*//*Label 887*/ GIMT_Encode4(34772), // Rule ID 253 // |
| 13229 | /* 34752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 13230 | /* 34755 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13231 | /* 34759 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 13232 | /* 34763 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, -1:{ *:[i8] }) => (NOT8r_ND:{ *:[i8] } GR8:{ *:[i8] }:$src1) |
| 13233 | /* 34763 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT8r_ND), |
| 13234 | /* 34766 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13235 | /* 34768 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13236 | /* 34770 */ GIR_RootConstrainSelectedInstOperands, |
| 13237 | /* 34771 */ // GIR_Coverage, 253, |
| 13238 | /* 34771 */ GIR_EraseRootFromParent_Done, |
| 13239 | /* 34772 */ // Label 887: @34772 |
| 13240 | /* 34772 */ GIM_Try, /*On fail goto*//*Label 888*/ GIMT_Encode4(34809), // Rule ID 22846 // |
| 13241 | /* 34777 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13242 | /* 34780 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13243 | /* 34784 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13244 | /* 34788 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 13245 | /* 34792 */ // MIs[1] Operand 1 |
| 13246 | /* 34792 */ // No operand predicates |
| 13247 | /* 34792 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13248 | /* 34794 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (XOR8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 13249 | /* 34794 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8ri), |
| 13250 | /* 34797 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13251 | /* 34799 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13252 | /* 34801 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 13253 | /* 34804 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13254 | /* 34807 */ GIR_RootConstrainSelectedInstOperands, |
| 13255 | /* 34808 */ // GIR_Coverage, 22846, |
| 13256 | /* 34808 */ GIR_EraseRootFromParent_Done, |
| 13257 | /* 34809 */ // Label 888: @34809 |
| 13258 | /* 34809 */ GIM_Try, /*On fail goto*//*Label 889*/ GIMT_Encode4(34846), // Rule ID 22936 // |
| 13259 | /* 34814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13260 | /* 34817 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13261 | /* 34821 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13262 | /* 34825 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 13263 | /* 34829 */ // MIs[1] Operand 1 |
| 13264 | /* 34829 */ // No operand predicates |
| 13265 | /* 34829 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13266 | /* 34831 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (XOR8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 13267 | /* 34831 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8ri_ND), |
| 13268 | /* 34834 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13269 | /* 34836 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13270 | /* 34838 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 13271 | /* 34841 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13272 | /* 34844 */ GIR_RootConstrainSelectedInstOperands, |
| 13273 | /* 34845 */ // GIR_Coverage, 22936, |
| 13274 | /* 34845 */ GIR_EraseRootFromParent_Done, |
| 13275 | /* 34846 */ // Label 889: @34846 |
| 13276 | /* 34846 */ GIM_Try, /*On fail goto*//*Label 890*/ GIMT_Encode4(34875), // Rule ID 22838 // |
| 13277 | /* 34851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13278 | /* 34854 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13279 | /* 34858 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13280 | /* 34862 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (XOR8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 13281 | /* 34862 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR8rr), |
| 13282 | /* 34867 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 13283 | /* 34873 */ GIR_RootConstrainSelectedInstOperands, |
| 13284 | /* 34874 */ // GIR_Coverage, 22838, |
| 13285 | /* 34874 */ GIR_Done, |
| 13286 | /* 34875 */ // Label 890: @34875 |
| 13287 | /* 34875 */ GIM_Try, /*On fail goto*//*Label 891*/ GIMT_Encode4(34904), // Rule ID 22928 // |
| 13288 | /* 34880 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13289 | /* 34883 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13290 | /* 34887 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13291 | /* 34891 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (XOR8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 13292 | /* 34891 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR8rr_ND), |
| 13293 | /* 34896 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 13294 | /* 34902 */ GIR_RootConstrainSelectedInstOperands, |
| 13295 | /* 34903 */ // GIR_Coverage, 22928, |
| 13296 | /* 34903 */ GIR_Done, |
| 13297 | /* 34904 */ // Label 891: @34904 |
| 13298 | /* 34904 */ GIM_Reject, |
| 13299 | /* 34905 */ // Label 879: @34905 |
| 13300 | /* 34905 */ GIM_Reject, |
| 13301 | /* 34906 */ // Label 851: @34906 |
| 13302 | /* 34906 */ GIM_Try, /*On fail goto*//*Label 892*/ GIMT_Encode4(35650), |
| 13303 | /* 34911 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 13304 | /* 34914 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 13305 | /* 34917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13306 | /* 34921 */ GIM_Try, /*On fail goto*//*Label 893*/ GIMT_Encode4(34977), // Rule ID 274 // |
| 13307 | /* 34926 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 13308 | /* 34929 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13309 | /* 34933 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13310 | /* 34937 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13311 | /* 34940 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13312 | /* 34944 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 13313 | /* 34948 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 13314 | /* 34952 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13315 | /* 34954 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13316 | /* 34961 */ // (xor:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, -1:{ *:[i16] }) => (NOT16m_ND:{ *:[i16] } addr:{ *:[iPTR] }:$src1) |
| 13317 | /* 34961 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT16m_ND), |
| 13318 | /* 34964 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13319 | /* 34966 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 13320 | /* 34970 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13321 | /* 34975 */ GIR_RootConstrainSelectedInstOperands, |
| 13322 | /* 34976 */ // GIR_Coverage, 274, |
| 13323 | /* 34976 */ GIR_EraseRootFromParent_Done, |
| 13324 | /* 34977 */ // Label 893: @34977 |
| 13325 | /* 34977 */ GIM_Try, /*On fail goto*//*Label 894*/ GIMT_Encode4(35038), // Rule ID 26066 // |
| 13326 | /* 34982 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13327 | /* 34985 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13328 | /* 34989 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13329 | /* 34993 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13330 | /* 34996 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13331 | /* 35000 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 13332 | /* 35004 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13333 | /* 35008 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13334 | /* 35010 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13335 | /* 35017 */ // (xor:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, GR16:{ *:[i16] }:$src1) => (XOR16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13336 | /* 35017 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16rm), |
| 13337 | /* 35020 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13338 | /* 35022 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13339 | /* 35024 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13340 | /* 35028 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13341 | /* 35031 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13342 | /* 35036 */ GIR_RootConstrainSelectedInstOperands, |
| 13343 | /* 35037 */ // GIR_Coverage, 26066, |
| 13344 | /* 35037 */ GIR_EraseRootFromParent_Done, |
| 13345 | /* 35038 */ // Label 894: @35038 |
| 13346 | /* 35038 */ GIM_Try, /*On fail goto*//*Label 895*/ GIMT_Encode4(35099), // Rule ID 26085 // |
| 13347 | /* 35043 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13348 | /* 35046 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13349 | /* 35050 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13350 | /* 35054 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13351 | /* 35057 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13352 | /* 35061 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 13353 | /* 35065 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13354 | /* 35069 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13355 | /* 35071 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13356 | /* 35078 */ // (xor:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, GR16:{ *:[i16] }:$src1) => (XOR16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13357 | /* 35078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16rm_ND), |
| 13358 | /* 35081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13359 | /* 35083 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13360 | /* 35085 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13361 | /* 35089 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13362 | /* 35092 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13363 | /* 35097 */ GIR_RootConstrainSelectedInstOperands, |
| 13364 | /* 35098 */ // GIR_Coverage, 26085, |
| 13365 | /* 35098 */ GIR_EraseRootFromParent_Done, |
| 13366 | /* 35099 */ // Label 895: @35099 |
| 13367 | /* 35099 */ GIM_Try, /*On fail goto*//*Label 896*/ GIMT_Encode4(35160), // Rule ID 22843 // |
| 13368 | /* 35104 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13369 | /* 35107 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13370 | /* 35111 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13371 | /* 35115 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13372 | /* 35119 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13373 | /* 35122 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13374 | /* 35126 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 13375 | /* 35130 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13376 | /* 35132 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13377 | /* 35139 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (XOR16rm:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13378 | /* 35139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16rm), |
| 13379 | /* 35142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13380 | /* 35144 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13381 | /* 35146 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13382 | /* 35150 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13383 | /* 35153 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13384 | /* 35158 */ GIR_RootConstrainSelectedInstOperands, |
| 13385 | /* 35159 */ // GIR_Coverage, 22843, |
| 13386 | /* 35159 */ GIR_EraseRootFromParent_Done, |
| 13387 | /* 35160 */ // Label 896: @35160 |
| 13388 | /* 35160 */ GIM_Try, /*On fail goto*//*Label 897*/ GIMT_Encode4(35221), // Rule ID 22933 // |
| 13389 | /* 35165 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13390 | /* 35168 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13391 | /* 35172 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13392 | /* 35176 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13393 | /* 35180 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13394 | /* 35183 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13395 | /* 35187 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 13396 | /* 35191 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13397 | /* 35193 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13398 | /* 35200 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (XOR16rm_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13399 | /* 35200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16rm_ND), |
| 13400 | /* 35203 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13401 | /* 35205 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13402 | /* 35207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13403 | /* 35211 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13404 | /* 35214 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13405 | /* 35219 */ GIR_RootConstrainSelectedInstOperands, |
| 13406 | /* 35220 */ // GIR_Coverage, 22933, |
| 13407 | /* 35220 */ GIR_EraseRootFromParent_Done, |
| 13408 | /* 35221 */ // Label 897: @35221 |
| 13409 | /* 35221 */ GIM_Try, /*On fail goto*//*Label 898*/ GIMT_Encode4(35263), // Rule ID 22600 // |
| 13410 | /* 35226 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13411 | /* 35230 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(-32768), |
| 13412 | /* 35241 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, -32768:{ *:[i16] }) => (ADD16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, -32768:{ *:[i16] }) |
| 13413 | /* 35241 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16ri), |
| 13414 | /* 35244 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13415 | /* 35246 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13416 | /* 35248 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(-32768), |
| 13417 | /* 35258 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13418 | /* 35261 */ GIR_RootConstrainSelectedInstOperands, |
| 13419 | /* 35262 */ // GIR_Coverage, 22600, |
| 13420 | /* 35262 */ GIR_EraseRootFromParent_Done, |
| 13421 | /* 35263 */ // Label 898: @35263 |
| 13422 | /* 35263 */ GIM_Try, /*On fail goto*//*Label 899*/ GIMT_Encode4(35365), // Rule ID 26038 // |
| 13423 | /* 35268 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13424 | /* 35272 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 13425 | /* 35276 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 13426 | /* 35280 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 13427 | /* 35284 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 13428 | /* 35288 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13429 | /* 35293 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13430 | /* 35297 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13431 | /* 35299 */ // (xor:{ *:[i16] } (shl:{ *:[i16] } 1:{ *:[i16] }, GR8:{ *:[i8] }:$src2), GR16:{ *:[i16] }:$src1) => (BTC16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (INSERT_SUBREG:{ *:[i16] } (IMPLICIT_DEF:{ *:[i16] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 13432 | /* 35299 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 13433 | /* 35302 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13434 | /* 35306 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13435 | /* 35311 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 13436 | /* 35313 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 13437 | /* 35316 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13438 | /* 35320 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13439 | /* 35325 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13440 | /* 35328 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 13441 | /* 35332 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 13442 | /* 35335 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 13443 | /* 35340 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 13444 | /* 35345 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 13445 | /* 35350 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC16rr), |
| 13446 | /* 35353 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13447 | /* 35355 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13448 | /* 35357 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13449 | /* 35360 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13450 | /* 35363 */ GIR_RootConstrainSelectedInstOperands, |
| 13451 | /* 35364 */ // GIR_Coverage, 26038, |
| 13452 | /* 35364 */ GIR_EraseRootFromParent_Done, |
| 13453 | /* 35365 */ // Label 899: @35365 |
| 13454 | /* 35365 */ GIM_Try, /*On fail goto*//*Label 900*/ GIMT_Encode4(35467), // Rule ID 22776 // |
| 13455 | /* 35370 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13456 | /* 35374 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13457 | /* 35378 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 13458 | /* 35382 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 13459 | /* 35386 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 13460 | /* 35390 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 13461 | /* 35394 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13462 | /* 35399 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13463 | /* 35401 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, (shl:{ *:[i16] } 1:{ *:[i16] }, GR8:{ *:[i8] }:$src2)) => (BTC16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (INSERT_SUBREG:{ *:[i16] } (IMPLICIT_DEF:{ *:[i16] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 13464 | /* 35401 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 13465 | /* 35404 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13466 | /* 35408 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13467 | /* 35413 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 13468 | /* 35415 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 13469 | /* 35418 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13470 | /* 35422 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13471 | /* 35427 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13472 | /* 35430 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 13473 | /* 35434 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 13474 | /* 35437 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 13475 | /* 35442 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 13476 | /* 35447 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 13477 | /* 35452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC16rr), |
| 13478 | /* 35455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13479 | /* 35457 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13480 | /* 35459 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13481 | /* 35462 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13482 | /* 35465 */ GIR_RootConstrainSelectedInstOperands, |
| 13483 | /* 35466 */ // GIR_Coverage, 22776, |
| 13484 | /* 35466 */ GIR_EraseRootFromParent_Done, |
| 13485 | /* 35467 */ // Label 900: @35467 |
| 13486 | /* 35467 */ GIM_Try, /*On fail goto*//*Label 901*/ GIMT_Encode4(35492), // Rule ID 246 // |
| 13487 | /* 35472 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13488 | /* 35475 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13489 | /* 35479 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 13490 | /* 35483 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, -1:{ *:[i16] }) => (NOT16r:{ *:[i16] } GR16:{ *:[i16] }:$src1) |
| 13491 | /* 35483 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT16r), |
| 13492 | /* 35486 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13493 | /* 35488 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13494 | /* 35490 */ GIR_RootConstrainSelectedInstOperands, |
| 13495 | /* 35491 */ // GIR_Coverage, 246, |
| 13496 | /* 35491 */ GIR_EraseRootFromParent_Done, |
| 13497 | /* 35492 */ // Label 901: @35492 |
| 13498 | /* 35492 */ GIM_Try, /*On fail goto*//*Label 902*/ GIMT_Encode4(35517), // Rule ID 254 // |
| 13499 | /* 35497 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 13500 | /* 35500 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13501 | /* 35504 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 13502 | /* 35508 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, -1:{ *:[i16] }) => (NOT16r_ND:{ *:[i16] } GR16:{ *:[i16] }:$src1) |
| 13503 | /* 35508 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT16r_ND), |
| 13504 | /* 35511 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13505 | /* 35513 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13506 | /* 35515 */ GIR_RootConstrainSelectedInstOperands, |
| 13507 | /* 35516 */ // GIR_Coverage, 254, |
| 13508 | /* 35516 */ GIR_EraseRootFromParent_Done, |
| 13509 | /* 35517 */ // Label 902: @35517 |
| 13510 | /* 35517 */ GIM_Try, /*On fail goto*//*Label 903*/ GIMT_Encode4(35554), // Rule ID 22847 // |
| 13511 | /* 35522 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13512 | /* 35525 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13513 | /* 35529 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13514 | /* 35533 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 13515 | /* 35537 */ // MIs[1] Operand 1 |
| 13516 | /* 35537 */ // No operand predicates |
| 13517 | /* 35537 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13518 | /* 35539 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (XOR16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 13519 | /* 35539 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16ri), |
| 13520 | /* 35542 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13521 | /* 35544 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13522 | /* 35546 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 13523 | /* 35549 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13524 | /* 35552 */ GIR_RootConstrainSelectedInstOperands, |
| 13525 | /* 35553 */ // GIR_Coverage, 22847, |
| 13526 | /* 35553 */ GIR_EraseRootFromParent_Done, |
| 13527 | /* 35554 */ // Label 903: @35554 |
| 13528 | /* 35554 */ GIM_Try, /*On fail goto*//*Label 904*/ GIMT_Encode4(35591), // Rule ID 22937 // |
| 13529 | /* 35559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13530 | /* 35562 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13531 | /* 35566 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13532 | /* 35570 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 13533 | /* 35574 */ // MIs[1] Operand 1 |
| 13534 | /* 35574 */ // No operand predicates |
| 13535 | /* 35574 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13536 | /* 35576 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (XOR16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 13537 | /* 35576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16ri_ND), |
| 13538 | /* 35579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13539 | /* 35581 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13540 | /* 35583 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 13541 | /* 35586 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13542 | /* 35589 */ GIR_RootConstrainSelectedInstOperands, |
| 13543 | /* 35590 */ // GIR_Coverage, 22937, |
| 13544 | /* 35590 */ GIR_EraseRootFromParent_Done, |
| 13545 | /* 35591 */ // Label 904: @35591 |
| 13546 | /* 35591 */ GIM_Try, /*On fail goto*//*Label 905*/ GIMT_Encode4(35620), // Rule ID 22839 // |
| 13547 | /* 35596 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13548 | /* 35599 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13549 | /* 35603 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13550 | /* 35607 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (XOR16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 13551 | /* 35607 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR16rr), |
| 13552 | /* 35612 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 13553 | /* 35618 */ GIR_RootConstrainSelectedInstOperands, |
| 13554 | /* 35619 */ // GIR_Coverage, 22839, |
| 13555 | /* 35619 */ GIR_Done, |
| 13556 | /* 35620 */ // Label 905: @35620 |
| 13557 | /* 35620 */ GIM_Try, /*On fail goto*//*Label 906*/ GIMT_Encode4(35649), // Rule ID 22929 // |
| 13558 | /* 35625 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13559 | /* 35628 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13560 | /* 35632 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 13561 | /* 35636 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (XOR16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 13562 | /* 35636 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR16rr_ND), |
| 13563 | /* 35641 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 13564 | /* 35647 */ GIR_RootConstrainSelectedInstOperands, |
| 13565 | /* 35648 */ // GIR_Coverage, 22929, |
| 13566 | /* 35648 */ GIR_Done, |
| 13567 | /* 35649 */ // Label 906: @35649 |
| 13568 | /* 35649 */ GIM_Reject, |
| 13569 | /* 35650 */ // Label 892: @35650 |
| 13570 | /* 35650 */ GIM_Reject, |
| 13571 | /* 35651 */ // Label 852: @35651 |
| 13572 | /* 35651 */ GIM_Try, /*On fail goto*//*Label 907*/ GIMT_Encode4(36598), |
| 13573 | /* 35656 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 13574 | /* 35659 */ GIM_Try, /*On fail goto*//*Label 908*/ GIMT_Encode4(35722), // Rule ID 275 // |
| 13575 | /* 35664 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 13576 | /* 35667 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13577 | /* 35670 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13578 | /* 35674 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13579 | /* 35678 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13580 | /* 35682 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13581 | /* 35685 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13582 | /* 35689 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 13583 | /* 35693 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 13584 | /* 35697 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13585 | /* 35699 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13586 | /* 35706 */ // (xor:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, -1:{ *:[i32] }) => (NOT32m_ND:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 13587 | /* 35706 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT32m_ND), |
| 13588 | /* 35709 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13589 | /* 35711 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 13590 | /* 35715 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13591 | /* 35720 */ GIR_RootConstrainSelectedInstOperands, |
| 13592 | /* 35721 */ // GIR_Coverage, 275, |
| 13593 | /* 35721 */ GIR_EraseRootFromParent_Done, |
| 13594 | /* 35722 */ // Label 908: @35722 |
| 13595 | /* 35722 */ GIM_Try, /*On fail goto*//*Label 909*/ GIMT_Encode4(35790), // Rule ID 26067 // |
| 13596 | /* 35727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13597 | /* 35730 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13598 | /* 35733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13599 | /* 35737 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13600 | /* 35741 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13601 | /* 35745 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13602 | /* 35748 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13603 | /* 35752 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 13604 | /* 35756 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13605 | /* 35760 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13606 | /* 35762 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13607 | /* 35769 */ // (xor:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src1) => (XOR32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13608 | /* 35769 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32rm), |
| 13609 | /* 35772 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13610 | /* 35774 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13611 | /* 35776 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13612 | /* 35780 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13613 | /* 35783 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13614 | /* 35788 */ GIR_RootConstrainSelectedInstOperands, |
| 13615 | /* 35789 */ // GIR_Coverage, 26067, |
| 13616 | /* 35789 */ GIR_EraseRootFromParent_Done, |
| 13617 | /* 35790 */ // Label 909: @35790 |
| 13618 | /* 35790 */ GIM_Try, /*On fail goto*//*Label 910*/ GIMT_Encode4(35858), // Rule ID 26086 // |
| 13619 | /* 35795 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13620 | /* 35798 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13621 | /* 35801 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13622 | /* 35805 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13623 | /* 35809 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13624 | /* 35813 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13625 | /* 35816 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13626 | /* 35820 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 13627 | /* 35824 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13628 | /* 35828 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13629 | /* 35830 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13630 | /* 35837 */ // (xor:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src1) => (XOR32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13631 | /* 35837 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32rm_ND), |
| 13632 | /* 35840 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13633 | /* 35842 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13634 | /* 35844 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13635 | /* 35848 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13636 | /* 35851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13637 | /* 35856 */ GIR_RootConstrainSelectedInstOperands, |
| 13638 | /* 35857 */ // GIR_Coverage, 26086, |
| 13639 | /* 35857 */ GIR_EraseRootFromParent_Done, |
| 13640 | /* 35858 */ // Label 910: @35858 |
| 13641 | /* 35858 */ GIM_Try, /*On fail goto*//*Label 911*/ GIMT_Encode4(35926), // Rule ID 22844 // |
| 13642 | /* 35863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13643 | /* 35866 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13644 | /* 35869 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13645 | /* 35873 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13646 | /* 35877 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13647 | /* 35881 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13648 | /* 35885 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13649 | /* 35888 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13650 | /* 35892 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 13651 | /* 35896 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13652 | /* 35898 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13653 | /* 35905 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (XOR32rm:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13654 | /* 35905 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32rm), |
| 13655 | /* 35908 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13656 | /* 35910 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13657 | /* 35912 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13658 | /* 35916 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13659 | /* 35919 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13660 | /* 35924 */ GIR_RootConstrainSelectedInstOperands, |
| 13661 | /* 35925 */ // GIR_Coverage, 22844, |
| 13662 | /* 35925 */ GIR_EraseRootFromParent_Done, |
| 13663 | /* 35926 */ // Label 911: @35926 |
| 13664 | /* 35926 */ GIM_Try, /*On fail goto*//*Label 912*/ GIMT_Encode4(35994), // Rule ID 22934 // |
| 13665 | /* 35931 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13666 | /* 35934 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13667 | /* 35937 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13668 | /* 35941 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13669 | /* 35945 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13670 | /* 35949 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13671 | /* 35953 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13672 | /* 35956 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13673 | /* 35960 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 13674 | /* 35964 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13675 | /* 35966 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13676 | /* 35973 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (XOR32rm_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13677 | /* 35973 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32rm_ND), |
| 13678 | /* 35976 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13679 | /* 35978 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13680 | /* 35980 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13681 | /* 35984 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13682 | /* 35987 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13683 | /* 35992 */ GIR_RootConstrainSelectedInstOperands, |
| 13684 | /* 35993 */ // GIR_Coverage, 22934, |
| 13685 | /* 35993 */ GIR_EraseRootFromParent_Done, |
| 13686 | /* 35994 */ // Label 912: @35994 |
| 13687 | /* 35994 */ GIM_Try, /*On fail goto*//*Label 913*/ GIMT_Encode4(36043), // Rule ID 22601 // |
| 13688 | /* 35999 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13689 | /* 36002 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13690 | /* 36006 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13691 | /* 36010 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(-2147483648), |
| 13692 | /* 36021 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -2147483648:{ *:[i32] }) => (ADD32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, -2147483648:{ *:[i32] }) |
| 13693 | /* 36021 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32ri), |
| 13694 | /* 36024 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13695 | /* 36026 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13696 | /* 36028 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(-2147483648), |
| 13697 | /* 36038 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13698 | /* 36041 */ GIR_RootConstrainSelectedInstOperands, |
| 13699 | /* 36042 */ // GIR_Coverage, 22601, |
| 13700 | /* 36042 */ GIR_EraseRootFromParent_Done, |
| 13701 | /* 36043 */ // Label 913: @36043 |
| 13702 | /* 36043 */ GIM_Try, /*On fail goto*//*Label 914*/ GIMT_Encode4(36101), // Rule ID 24997 // |
| 13703 | /* 36048 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 13704 | /* 36051 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13705 | /* 36055 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13706 | /* 36059 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 13707 | /* 36063 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 13708 | /* 36067 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 13709 | /* 36071 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13710 | /* 36076 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 13711 | /* 36080 */ // MIs[0] src |
| 13712 | /* 36080 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 13713 | /* 36085 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13714 | /* 36087 */ // (xor:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), GR32:{ *:[i32] }:$src) => (BLCMSK32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 13715 | /* 36087 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCMSK32rr), |
| 13716 | /* 36090 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13717 | /* 36092 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 13718 | /* 36096 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13719 | /* 36099 */ GIR_RootConstrainSelectedInstOperands, |
| 13720 | /* 36100 */ // GIR_Coverage, 24997, |
| 13721 | /* 36100 */ GIR_EraseRootFromParent_Done, |
| 13722 | /* 36101 */ // Label 914: @36101 |
| 13723 | /* 36101 */ GIM_Try, /*On fail goto*//*Label 915*/ GIMT_Encode4(36210), // Rule ID 26044 // |
| 13724 | /* 36106 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13725 | /* 36109 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13726 | /* 36113 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13727 | /* 36117 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 13728 | /* 36121 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 13729 | /* 36125 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 13730 | /* 36129 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 13731 | /* 36133 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13732 | /* 36138 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13733 | /* 36142 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13734 | /* 36144 */ // (xor:{ *:[i32] } (shl:{ *:[i32] } 1:{ *:[i32] }, GR8:{ *:[i8] }:$src2), GR32:{ *:[i32] }:$src1) => (BTC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 13735 | /* 36144 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 13736 | /* 36147 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13737 | /* 36151 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13738 | /* 36156 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 13739 | /* 36158 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 13740 | /* 36161 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13741 | /* 36165 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13742 | /* 36170 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13743 | /* 36173 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 13744 | /* 36177 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 13745 | /* 36180 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 13746 | /* 36185 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 13747 | /* 36190 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 13748 | /* 36195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC32rr), |
| 13749 | /* 36198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13750 | /* 36200 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13751 | /* 36202 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13752 | /* 36205 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13753 | /* 36208 */ GIR_RootConstrainSelectedInstOperands, |
| 13754 | /* 36209 */ // GIR_Coverage, 26044, |
| 13755 | /* 36209 */ GIR_EraseRootFromParent_Done, |
| 13756 | /* 36210 */ // Label 915: @36210 |
| 13757 | /* 36210 */ GIM_Try, /*On fail goto*//*Label 916*/ GIMT_Encode4(36264), // Rule ID 17358 // |
| 13758 | /* 36215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 13759 | /* 36218 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13760 | /* 36221 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13761 | /* 36225 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13762 | /* 36229 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13763 | /* 36233 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 13764 | /* 36237 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 13765 | /* 36241 */ // MIs[1] src |
| 13766 | /* 36241 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 13767 | /* 36246 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 13768 | /* 36250 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13769 | /* 36252 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] })) => (BLCMSK32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 13770 | /* 36252 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCMSK32rr), |
| 13771 | /* 36255 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13772 | /* 36257 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 13773 | /* 36259 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13774 | /* 36262 */ GIR_RootConstrainSelectedInstOperands, |
| 13775 | /* 36263 */ // GIR_Coverage, 17358, |
| 13776 | /* 36263 */ GIR_EraseRootFromParent_Done, |
| 13777 | /* 36264 */ // Label 916: @36264 |
| 13778 | /* 36264 */ GIM_Try, /*On fail goto*//*Label 917*/ GIMT_Encode4(36373), // Rule ID 22782 // |
| 13779 | /* 36269 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13780 | /* 36272 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13781 | /* 36276 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13782 | /* 36280 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13783 | /* 36284 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 13784 | /* 36288 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 13785 | /* 36292 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 13786 | /* 36296 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 13787 | /* 36300 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13788 | /* 36305 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13789 | /* 36307 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, (shl:{ *:[i32] } 1:{ *:[i32] }, GR8:{ *:[i8] }:$src2)) => (BTC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 13790 | /* 36307 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 13791 | /* 36310 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13792 | /* 36314 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13793 | /* 36319 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 13794 | /* 36321 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 13795 | /* 36324 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13796 | /* 36328 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 13797 | /* 36333 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13798 | /* 36336 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 13799 | /* 36340 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 13800 | /* 36343 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 13801 | /* 36348 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 13802 | /* 36353 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 13803 | /* 36358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC32rr), |
| 13804 | /* 36361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13805 | /* 36363 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13806 | /* 36365 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13807 | /* 36368 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13808 | /* 36371 */ GIR_RootConstrainSelectedInstOperands, |
| 13809 | /* 36372 */ // GIR_Coverage, 22782, |
| 13810 | /* 36372 */ GIR_EraseRootFromParent_Done, |
| 13811 | /* 36373 */ // Label 917: @36373 |
| 13812 | /* 36373 */ GIM_Try, /*On fail goto*//*Label 918*/ GIMT_Encode4(36405), // Rule ID 247 // |
| 13813 | /* 36378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13814 | /* 36381 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13815 | /* 36384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13816 | /* 36388 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13817 | /* 36392 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 13818 | /* 36396 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] }) => (NOT32r:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 13819 | /* 36396 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT32r), |
| 13820 | /* 36399 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13821 | /* 36401 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13822 | /* 36403 */ GIR_RootConstrainSelectedInstOperands, |
| 13823 | /* 36404 */ // GIR_Coverage, 247, |
| 13824 | /* 36404 */ GIR_EraseRootFromParent_Done, |
| 13825 | /* 36405 */ // Label 918: @36405 |
| 13826 | /* 36405 */ GIM_Try, /*On fail goto*//*Label 919*/ GIMT_Encode4(36437), // Rule ID 255 // |
| 13827 | /* 36410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 13828 | /* 36413 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13829 | /* 36416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13830 | /* 36420 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13831 | /* 36424 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 13832 | /* 36428 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] }) => (NOT32r_ND:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 13833 | /* 36428 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT32r_ND), |
| 13834 | /* 36431 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13835 | /* 36433 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13836 | /* 36435 */ GIR_RootConstrainSelectedInstOperands, |
| 13837 | /* 36436 */ // GIR_Coverage, 255, |
| 13838 | /* 36436 */ GIR_EraseRootFromParent_Done, |
| 13839 | /* 36437 */ // Label 919: @36437 |
| 13840 | /* 36437 */ GIM_Try, /*On fail goto*//*Label 920*/ GIMT_Encode4(36481), // Rule ID 22848 // |
| 13841 | /* 36442 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13842 | /* 36445 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13843 | /* 36448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13844 | /* 36452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13845 | /* 36456 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13846 | /* 36460 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 13847 | /* 36464 */ // MIs[1] Operand 1 |
| 13848 | /* 36464 */ // No operand predicates |
| 13849 | /* 36464 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13850 | /* 36466 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (XOR32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 13851 | /* 36466 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32ri), |
| 13852 | /* 36469 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13853 | /* 36471 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13854 | /* 36473 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 13855 | /* 36476 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13856 | /* 36479 */ GIR_RootConstrainSelectedInstOperands, |
| 13857 | /* 36480 */ // GIR_Coverage, 22848, |
| 13858 | /* 36480 */ GIR_EraseRootFromParent_Done, |
| 13859 | /* 36481 */ // Label 920: @36481 |
| 13860 | /* 36481 */ GIM_Try, /*On fail goto*//*Label 921*/ GIMT_Encode4(36525), // Rule ID 22938 // |
| 13861 | /* 36486 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13862 | /* 36489 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13863 | /* 36492 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13864 | /* 36496 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13865 | /* 36500 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13866 | /* 36504 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 13867 | /* 36508 */ // MIs[1] Operand 1 |
| 13868 | /* 36508 */ // No operand predicates |
| 13869 | /* 36508 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13870 | /* 36510 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (XOR32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 13871 | /* 36510 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32ri_ND), |
| 13872 | /* 36513 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13873 | /* 36515 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13874 | /* 36517 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 13875 | /* 36520 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13876 | /* 36523 */ GIR_RootConstrainSelectedInstOperands, |
| 13877 | /* 36524 */ // GIR_Coverage, 22938, |
| 13878 | /* 36524 */ GIR_EraseRootFromParent_Done, |
| 13879 | /* 36525 */ // Label 921: @36525 |
| 13880 | /* 36525 */ GIM_Try, /*On fail goto*//*Label 922*/ GIMT_Encode4(36561), // Rule ID 22840 // |
| 13881 | /* 36530 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13882 | /* 36533 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13883 | /* 36536 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13884 | /* 36540 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13885 | /* 36544 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13886 | /* 36548 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (XOR32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 13887 | /* 36548 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR32rr), |
| 13888 | /* 36553 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 13889 | /* 36559 */ GIR_RootConstrainSelectedInstOperands, |
| 13890 | /* 36560 */ // GIR_Coverage, 22840, |
| 13891 | /* 36560 */ GIR_Done, |
| 13892 | /* 36561 */ // Label 922: @36561 |
| 13893 | /* 36561 */ GIM_Try, /*On fail goto*//*Label 923*/ GIMT_Encode4(36597), // Rule ID 22930 // |
| 13894 | /* 36566 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13895 | /* 36569 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13896 | /* 36572 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13897 | /* 36576 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13898 | /* 36580 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 13899 | /* 36584 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (XOR32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 13900 | /* 36584 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR32rr_ND), |
| 13901 | /* 36589 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 13902 | /* 36595 */ GIR_RootConstrainSelectedInstOperands, |
| 13903 | /* 36596 */ // GIR_Coverage, 22930, |
| 13904 | /* 36596 */ GIR_Done, |
| 13905 | /* 36597 */ // Label 923: @36597 |
| 13906 | /* 36597 */ GIM_Reject, |
| 13907 | /* 36598 */ // Label 907: @36598 |
| 13908 | /* 36598 */ GIM_Reject, |
| 13909 | /* 36599 */ // Label 853: @36599 |
| 13910 | /* 36599 */ GIM_Try, /*On fail goto*//*Label 924*/ GIMT_Encode4(37505), |
| 13911 | /* 36604 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 13912 | /* 36607 */ GIM_Try, /*On fail goto*//*Label 925*/ GIMT_Encode4(36670), // Rule ID 276 // |
| 13913 | /* 36612 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 13914 | /* 36615 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13915 | /* 36618 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13916 | /* 36622 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13917 | /* 36626 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13918 | /* 36630 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13919 | /* 36633 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13920 | /* 36637 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13921 | /* 36641 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 13922 | /* 36645 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13923 | /* 36647 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13924 | /* 36654 */ // (xor:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:{ *:[i64] }) => (NOT64m_ND:{ *:[i64] } addr:{ *:[iPTR] }:$src1) |
| 13925 | /* 36654 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT64m_ND), |
| 13926 | /* 36657 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13927 | /* 36659 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 13928 | /* 36663 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13929 | /* 36668 */ GIR_RootConstrainSelectedInstOperands, |
| 13930 | /* 36669 */ // GIR_Coverage, 276, |
| 13931 | /* 36669 */ GIR_EraseRootFromParent_Done, |
| 13932 | /* 36670 */ // Label 925: @36670 |
| 13933 | /* 36670 */ GIM_Try, /*On fail goto*//*Label 926*/ GIMT_Encode4(36738), // Rule ID 26068 // |
| 13934 | /* 36675 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13935 | /* 36678 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13936 | /* 36681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13937 | /* 36685 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13938 | /* 36689 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13939 | /* 36693 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13940 | /* 36696 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13941 | /* 36700 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13942 | /* 36704 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13943 | /* 36708 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13944 | /* 36710 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13945 | /* 36717 */ // (xor:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src1) => (XOR64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13946 | /* 36717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64rm), |
| 13947 | /* 36720 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13948 | /* 36722 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13949 | /* 36724 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13950 | /* 36728 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13951 | /* 36731 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13952 | /* 36736 */ GIR_RootConstrainSelectedInstOperands, |
| 13953 | /* 36737 */ // GIR_Coverage, 26068, |
| 13954 | /* 36737 */ GIR_EraseRootFromParent_Done, |
| 13955 | /* 36738 */ // Label 926: @36738 |
| 13956 | /* 36738 */ GIM_Try, /*On fail goto*//*Label 927*/ GIMT_Encode4(36806), // Rule ID 26087 // |
| 13957 | /* 36743 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13958 | /* 36746 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13959 | /* 36749 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13960 | /* 36753 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13961 | /* 36757 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13962 | /* 36761 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13963 | /* 36764 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13964 | /* 36768 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13965 | /* 36772 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13966 | /* 36776 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13967 | /* 36778 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13968 | /* 36785 */ // (xor:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src1) => (XOR64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13969 | /* 36785 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64rm_ND), |
| 13970 | /* 36788 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13971 | /* 36790 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13972 | /* 36792 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13973 | /* 36796 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13974 | /* 36799 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13975 | /* 36804 */ GIR_RootConstrainSelectedInstOperands, |
| 13976 | /* 36805 */ // GIR_Coverage, 26087, |
| 13977 | /* 36805 */ GIR_EraseRootFromParent_Done, |
| 13978 | /* 36806 */ // Label 927: @36806 |
| 13979 | /* 36806 */ GIM_Try, /*On fail goto*//*Label 928*/ GIMT_Encode4(36874), // Rule ID 22845 // |
| 13980 | /* 36811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13981 | /* 36814 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13982 | /* 36817 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13983 | /* 36821 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13984 | /* 36825 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13985 | /* 36829 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13986 | /* 36833 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13987 | /* 36836 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13988 | /* 36840 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13989 | /* 36844 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13990 | /* 36846 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13991 | /* 36853 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (XOR64rm:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13992 | /* 36853 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64rm), |
| 13993 | /* 36856 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13994 | /* 36858 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13995 | /* 36860 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13996 | /* 36864 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13997 | /* 36867 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13998 | /* 36872 */ GIR_RootConstrainSelectedInstOperands, |
| 13999 | /* 36873 */ // GIR_Coverage, 22845, |
| 14000 | /* 36873 */ GIR_EraseRootFromParent_Done, |
| 14001 | /* 36874 */ // Label 928: @36874 |
| 14002 | /* 36874 */ GIM_Try, /*On fail goto*//*Label 929*/ GIMT_Encode4(36942), // Rule ID 22935 // |
| 14003 | /* 36879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 14004 | /* 36882 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 14005 | /* 36885 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14006 | /* 36889 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14007 | /* 36893 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14008 | /* 36897 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14009 | /* 36901 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14010 | /* 36904 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14011 | /* 36908 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14012 | /* 36912 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14013 | /* 36914 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14014 | /* 36921 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (XOR64rm_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14015 | /* 36921 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64rm_ND), |
| 14016 | /* 36924 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14017 | /* 36926 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14018 | /* 36928 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14019 | /* 36932 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 14020 | /* 36935 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14021 | /* 36940 */ GIR_RootConstrainSelectedInstOperands, |
| 14022 | /* 36941 */ // GIR_Coverage, 22935, |
| 14023 | /* 36941 */ GIR_EraseRootFromParent_Done, |
| 14024 | /* 36942 */ // Label 929: @36942 |
| 14025 | /* 36942 */ GIM_Try, /*On fail goto*//*Label 930*/ GIMT_Encode4(37000), // Rule ID 24998 // |
| 14026 | /* 36947 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 14027 | /* 36950 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14028 | /* 36954 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14029 | /* 36958 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 14030 | /* 36962 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 14031 | /* 36966 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 14032 | /* 36970 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14033 | /* 36975 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 14034 | /* 36979 */ // MIs[0] src |
| 14035 | /* 36979 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 14036 | /* 36984 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14037 | /* 36986 */ // (xor:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), GR64:{ *:[i64] }:$src) => (BLCMSK64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 14038 | /* 36986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCMSK64rr), |
| 14039 | /* 36989 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14040 | /* 36991 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 14041 | /* 36995 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 14042 | /* 36998 */ GIR_RootConstrainSelectedInstOperands, |
| 14043 | /* 36999 */ // GIR_Coverage, 24998, |
| 14044 | /* 36999 */ GIR_EraseRootFromParent_Done, |
| 14045 | /* 37000 */ // Label 930: @37000 |
| 14046 | /* 37000 */ GIM_Try, /*On fail goto*//*Label 931*/ GIMT_Encode4(37109), // Rule ID 26050 // |
| 14047 | /* 37005 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 14048 | /* 37008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14049 | /* 37012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14050 | /* 37016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 14051 | /* 37020 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 14052 | /* 37024 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 14053 | /* 37028 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 14054 | /* 37032 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 14055 | /* 37037 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14056 | /* 37041 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14057 | /* 37043 */ // (xor:{ *:[i64] } (shl:{ *:[i64] } 1:{ *:[i64] }, GR8:{ *:[i8] }:$src2), GR64:{ *:[i64] }:$src1) => (BTC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 14058 | /* 37043 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 14059 | /* 37046 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14060 | /* 37050 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14061 | /* 37055 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 14062 | /* 37057 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 14063 | /* 37060 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14064 | /* 37064 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14065 | /* 37069 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14066 | /* 37072 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 14067 | /* 37076 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 14068 | /* 37079 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 14069 | /* 37084 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 14070 | /* 37089 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 14071 | /* 37094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC64rr), |
| 14072 | /* 37097 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14073 | /* 37099 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14074 | /* 37101 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14075 | /* 37104 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 14076 | /* 37107 */ GIR_RootConstrainSelectedInstOperands, |
| 14077 | /* 37108 */ // GIR_Coverage, 26050, |
| 14078 | /* 37108 */ GIR_EraseRootFromParent_Done, |
| 14079 | /* 37109 */ // Label 931: @37109 |
| 14080 | /* 37109 */ GIM_Try, /*On fail goto*//*Label 932*/ GIMT_Encode4(37163), // Rule ID 17359 // |
| 14081 | /* 37114 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 14082 | /* 37117 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 14083 | /* 37120 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14084 | /* 37124 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14085 | /* 37128 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14086 | /* 37132 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 14087 | /* 37136 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 14088 | /* 37140 */ // MIs[1] src |
| 14089 | /* 37140 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 14090 | /* 37145 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 14091 | /* 37149 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14092 | /* 37151 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] })) => (BLCMSK64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 14093 | /* 37151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCMSK64rr), |
| 14094 | /* 37154 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14095 | /* 37156 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14096 | /* 37158 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 14097 | /* 37161 */ GIR_RootConstrainSelectedInstOperands, |
| 14098 | /* 37162 */ // GIR_Coverage, 17359, |
| 14099 | /* 37162 */ GIR_EraseRootFromParent_Done, |
| 14100 | /* 37163 */ // Label 932: @37163 |
| 14101 | /* 37163 */ GIM_Try, /*On fail goto*//*Label 933*/ GIMT_Encode4(37272), // Rule ID 22788 // |
| 14102 | /* 37168 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 14103 | /* 37171 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14104 | /* 37175 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14105 | /* 37179 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14106 | /* 37183 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 14107 | /* 37187 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 14108 | /* 37191 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 14109 | /* 37195 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 14110 | /* 37199 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 14111 | /* 37204 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14112 | /* 37206 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, (shl:{ *:[i64] } 1:{ *:[i64] }, GR8:{ *:[i8] }:$src2)) => (BTC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 14113 | /* 37206 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 14114 | /* 37209 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14115 | /* 37213 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14116 | /* 37218 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 14117 | /* 37220 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 14118 | /* 37223 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14119 | /* 37227 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14120 | /* 37232 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14121 | /* 37235 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 14122 | /* 37239 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 14123 | /* 37242 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 14124 | /* 37247 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 14125 | /* 37252 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 14126 | /* 37257 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC64rr), |
| 14127 | /* 37260 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14128 | /* 37262 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14129 | /* 37264 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14130 | /* 37267 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 14131 | /* 37270 */ GIR_RootConstrainSelectedInstOperands, |
| 14132 | /* 37271 */ // GIR_Coverage, 22788, |
| 14133 | /* 37271 */ GIR_EraseRootFromParent_Done, |
| 14134 | /* 37272 */ // Label 933: @37272 |
| 14135 | /* 37272 */ GIM_Try, /*On fail goto*//*Label 934*/ GIMT_Encode4(37304), // Rule ID 248 // |
| 14136 | /* 37277 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 14137 | /* 37280 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 14138 | /* 37283 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14139 | /* 37287 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14140 | /* 37291 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 14141 | /* 37295 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] }) => (NOT64r:{ *:[i64] } GR64:{ *:[i64] }:$src1) |
| 14142 | /* 37295 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT64r), |
| 14143 | /* 37298 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14144 | /* 37300 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14145 | /* 37302 */ GIR_RootConstrainSelectedInstOperands, |
| 14146 | /* 37303 */ // GIR_Coverage, 248, |
| 14147 | /* 37303 */ GIR_EraseRootFromParent_Done, |
| 14148 | /* 37304 */ // Label 934: @37304 |
| 14149 | /* 37304 */ GIM_Try, /*On fail goto*//*Label 935*/ GIMT_Encode4(37336), // Rule ID 256 // |
| 14150 | /* 37309 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 14151 | /* 37312 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 14152 | /* 37315 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14153 | /* 37319 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14154 | /* 37323 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, uint8_t(-1), |
| 14155 | /* 37327 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] }) => (NOT64r_ND:{ *:[i64] } GR64:{ *:[i64] }:$src1) |
| 14156 | /* 37327 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT64r_ND), |
| 14157 | /* 37330 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14158 | /* 37332 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14159 | /* 37334 */ GIR_RootConstrainSelectedInstOperands, |
| 14160 | /* 37335 */ // GIR_Coverage, 256, |
| 14161 | /* 37335 */ GIR_EraseRootFromParent_Done, |
| 14162 | /* 37336 */ // Label 935: @37336 |
| 14163 | /* 37336 */ GIM_Try, /*On fail goto*//*Label 936*/ GIMT_Encode4(37384), // Rule ID 22849 // |
| 14164 | /* 37341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 14165 | /* 37344 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 14166 | /* 37347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14167 | /* 37351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14168 | /* 37355 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14169 | /* 37359 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 14170 | /* 37363 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 14171 | /* 37367 */ // MIs[1] Operand 1 |
| 14172 | /* 37367 */ // No operand predicates |
| 14173 | /* 37367 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14174 | /* 37369 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (XOR64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 14175 | /* 37369 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64ri32), |
| 14176 | /* 37372 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14177 | /* 37374 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14178 | /* 37376 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 14179 | /* 37379 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 14180 | /* 37382 */ GIR_RootConstrainSelectedInstOperands, |
| 14181 | /* 37383 */ // GIR_Coverage, 22849, |
| 14182 | /* 37383 */ GIR_EraseRootFromParent_Done, |
| 14183 | /* 37384 */ // Label 936: @37384 |
| 14184 | /* 37384 */ GIM_Try, /*On fail goto*//*Label 937*/ GIMT_Encode4(37432), // Rule ID 22939 // |
| 14185 | /* 37389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 14186 | /* 37392 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 14187 | /* 37395 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14188 | /* 37399 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14189 | /* 37403 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14190 | /* 37407 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 14191 | /* 37411 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 14192 | /* 37415 */ // MIs[1] Operand 1 |
| 14193 | /* 37415 */ // No operand predicates |
| 14194 | /* 37415 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14195 | /* 37417 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (XOR64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 14196 | /* 37417 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64ri32_ND), |
| 14197 | /* 37420 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14198 | /* 37422 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14199 | /* 37424 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 14200 | /* 37427 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 14201 | /* 37430 */ GIR_RootConstrainSelectedInstOperands, |
| 14202 | /* 37431 */ // GIR_Coverage, 22939, |
| 14203 | /* 37431 */ GIR_EraseRootFromParent_Done, |
| 14204 | /* 37432 */ // Label 937: @37432 |
| 14205 | /* 37432 */ GIM_Try, /*On fail goto*//*Label 938*/ GIMT_Encode4(37468), // Rule ID 22841 // |
| 14206 | /* 37437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 14207 | /* 37440 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 14208 | /* 37443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14209 | /* 37447 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14210 | /* 37451 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14211 | /* 37455 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (XOR64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 14212 | /* 37455 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR64rr), |
| 14213 | /* 37460 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 14214 | /* 37466 */ GIR_RootConstrainSelectedInstOperands, |
| 14215 | /* 37467 */ // GIR_Coverage, 22841, |
| 14216 | /* 37467 */ GIR_Done, |
| 14217 | /* 37468 */ // Label 938: @37468 |
| 14218 | /* 37468 */ GIM_Try, /*On fail goto*//*Label 939*/ GIMT_Encode4(37504), // Rule ID 22931 // |
| 14219 | /* 37473 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 14220 | /* 37476 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 14221 | /* 37479 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14222 | /* 37483 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14223 | /* 37487 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 14224 | /* 37491 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (XOR64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 14225 | /* 37491 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR64rr_ND), |
| 14226 | /* 37496 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 14227 | /* 37502 */ GIR_RootConstrainSelectedInstOperands, |
| 14228 | /* 37503 */ // GIR_Coverage, 22931, |
| 14229 | /* 37503 */ GIR_Done, |
| 14230 | /* 37504 */ // Label 939: @37504 |
| 14231 | /* 37504 */ GIM_Reject, |
| 14232 | /* 37505 */ // Label 924: @37505 |
| 14233 | /* 37505 */ GIM_Reject, |
| 14234 | /* 37506 */ // Label 854: @37506 |
| 14235 | /* 37506 */ GIM_Try, /*On fail goto*//*Label 940*/ GIMT_Encode4(38047), |
| 14236 | /* 37511 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 14237 | /* 37514 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s1, |
| 14238 | /* 37517 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 14239 | /* 37521 */ GIM_Try, /*On fail goto*//*Label 941*/ GIMT_Encode4(37641), // Rule ID 25374 // |
| 14240 | /* 37526 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14241 | /* 37530 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14242 | /* 37534 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s1, |
| 14243 | /* 37538 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s1, |
| 14244 | /* 37542 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 14245 | /* 37547 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 14246 | /* 37551 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14247 | /* 37557 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14248 | /* 37559 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 14249 | /* 37563 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14250 | /* 37565 */ // (xor:{ *:[v2i1] } (xor:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src1, immAllOnesV:{ *:[v2i1] }), VK2:{ *:[v2i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v2i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src2, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 14251 | /* 37565 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14252 | /* 37568 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14253 | /* 37572 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14254 | /* 37577 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 14255 | /* 37581 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14256 | /* 37586 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14257 | /* 37589 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14258 | /* 37593 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14259 | /* 37598 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14260 | /* 37602 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14261 | /* 37607 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14262 | /* 37610 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 14263 | /* 37614 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14264 | /* 37619 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14265 | /* 37622 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14266 | /* 37625 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14267 | /* 37627 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14268 | /* 37630 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14269 | /* 37632 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14270 | /* 37635 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 14271 | /* 37640 */ // GIR_Coverage, 25374, |
| 14272 | /* 37640 */ GIR_EraseRootFromParent_Done, |
| 14273 | /* 37641 */ // Label 941: @37641 |
| 14274 | /* 37641 */ GIM_Try, /*On fail goto*//*Label 942*/ GIMT_Encode4(37762), // Rule ID 19497 // |
| 14275 | /* 37646 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14276 | /* 37650 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14277 | /* 37654 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s1, |
| 14278 | /* 37658 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s1, |
| 14279 | /* 37662 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 14280 | /* 37667 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 14281 | /* 37672 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 14282 | /* 37676 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14283 | /* 37682 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14284 | /* 37684 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14285 | /* 37686 */ // (xor:{ *:[v2i1] } (xor:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src1, VK2:{ *:[v2i1] }:$src2), immAllOnesV:{ *:[v2i1] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src2, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 14286 | /* 37686 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14287 | /* 37689 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14288 | /* 37693 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14289 | /* 37698 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 14290 | /* 37702 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14291 | /* 37707 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14292 | /* 37710 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14293 | /* 37714 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14294 | /* 37719 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14295 | /* 37723 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14296 | /* 37728 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14297 | /* 37731 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 14298 | /* 37735 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14299 | /* 37740 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14300 | /* 37743 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14301 | /* 37746 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14302 | /* 37748 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14303 | /* 37751 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14304 | /* 37753 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14305 | /* 37756 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 14306 | /* 37761 */ // GIR_Coverage, 19497, |
| 14307 | /* 37761 */ GIR_EraseRootFromParent_Done, |
| 14308 | /* 37762 */ // Label 942: @37762 |
| 14309 | /* 37762 */ GIM_Try, /*On fail goto*//*Label 943*/ GIMT_Encode4(37882), // Rule ID 25375 // |
| 14310 | /* 37767 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 14311 | /* 37771 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14312 | /* 37775 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14313 | /* 37779 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s1, |
| 14314 | /* 37783 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s1, |
| 14315 | /* 37787 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 14316 | /* 37792 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 14317 | /* 37796 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14318 | /* 37802 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14319 | /* 37804 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14320 | /* 37806 */ // (xor:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src2, (xor:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src1, immAllOnesV:{ *:[v2i1] })) => (COPY_TO_REGCLASS:{ *:[v2i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src2, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 14321 | /* 37806 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14322 | /* 37809 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14323 | /* 37813 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14324 | /* 37818 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 14325 | /* 37822 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14326 | /* 37827 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14327 | /* 37830 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14328 | /* 37834 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14329 | /* 37839 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14330 | /* 37843 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14331 | /* 37848 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14332 | /* 37851 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 14333 | /* 37855 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14334 | /* 37860 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14335 | /* 37863 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14336 | /* 37866 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14337 | /* 37868 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14338 | /* 37871 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14339 | /* 37873 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14340 | /* 37876 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 14341 | /* 37881 */ // GIR_Coverage, 25375, |
| 14342 | /* 37881 */ GIR_EraseRootFromParent_Done, |
| 14343 | /* 37882 */ // Label 943: @37882 |
| 14344 | /* 37882 */ GIM_Try, /*On fail goto*//*Label 944*/ GIMT_Encode4(37957), // Rule ID 19481 // |
| 14345 | /* 37887 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 14346 | /* 37891 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14347 | /* 37895 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14348 | /* 37901 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14349 | /* 37903 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14350 | /* 37905 */ // (xor:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src, immAllOnesV:{ *:[v2i1] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } (KNOTWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 14351 | /* 37905 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14352 | /* 37908 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14353 | /* 37912 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14354 | /* 37917 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14355 | /* 37921 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14356 | /* 37926 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14357 | /* 37929 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 14358 | /* 37933 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14359 | /* 37938 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14360 | /* 37941 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14361 | /* 37943 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14362 | /* 37946 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14363 | /* 37948 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14364 | /* 37951 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 14365 | /* 37956 */ // GIR_Coverage, 19481, |
| 14366 | /* 37956 */ GIR_EraseRootFromParent_Done, |
| 14367 | /* 37957 */ // Label 944: @37957 |
| 14368 | /* 37957 */ GIM_Try, /*On fail goto*//*Label 945*/ GIMT_Encode4(38046), // Rule ID 19501 // |
| 14369 | /* 37962 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 14370 | /* 37966 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 14371 | /* 37970 */ // (xor:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src1, VK2:{ *:[v2i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v2i1] } (KXORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src2, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 14372 | /* 37970 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14373 | /* 37973 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14374 | /* 37977 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14375 | /* 37982 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 14376 | /* 37986 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14377 | /* 37991 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14378 | /* 37994 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14379 | /* 37998 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14380 | /* 38003 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 14381 | /* 38007 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14382 | /* 38012 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14383 | /* 38015 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXORWkk), |
| 14384 | /* 38019 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14385 | /* 38024 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14386 | /* 38027 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14387 | /* 38030 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14388 | /* 38032 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14389 | /* 38035 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14390 | /* 38037 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14391 | /* 38040 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 14392 | /* 38045 */ // GIR_Coverage, 19501, |
| 14393 | /* 38045 */ GIR_EraseRootFromParent_Done, |
| 14394 | /* 38046 */ // Label 945: @38046 |
| 14395 | /* 38046 */ GIM_Reject, |
| 14396 | /* 38047 */ // Label 940: @38047 |
| 14397 | /* 38047 */ GIM_Reject, |
| 14398 | /* 38048 */ // Label 855: @38048 |
| 14399 | /* 38048 */ GIM_Try, /*On fail goto*//*Label 946*/ GIMT_Encode4(38667), |
| 14400 | /* 38053 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 14401 | /* 38056 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 14402 | /* 38059 */ GIM_Try, /*On fail goto*//*Label 947*/ GIMT_Encode4(38121), // Rule ID 23366 // |
| 14403 | /* 38064 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 14404 | /* 38067 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14405 | /* 38071 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14406 | /* 38075 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14407 | /* 38079 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14408 | /* 38082 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14409 | /* 38086 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14410 | /* 38090 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14411 | /* 38094 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14412 | /* 38096 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14413 | /* 38103 */ // (xor:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src1) => (VPXORrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14414 | /* 38103 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 14415 | /* 38106 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14416 | /* 38108 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14417 | /* 38110 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14418 | /* 38114 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14419 | /* 38119 */ GIR_RootConstrainSelectedInstOperands, |
| 14420 | /* 38120 */ // GIR_Coverage, 23366, |
| 14421 | /* 38120 */ GIR_EraseRootFromParent_Done, |
| 14422 | /* 38121 */ // Label 947: @38121 |
| 14423 | /* 38121 */ GIM_Try, /*On fail goto*//*Label 948*/ GIMT_Encode4(38183), // Rule ID 24221 // |
| 14424 | /* 38126 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14425 | /* 38129 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14426 | /* 38133 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14427 | /* 38137 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14428 | /* 38141 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14429 | /* 38144 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14430 | /* 38148 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14431 | /* 38152 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14432 | /* 38156 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14433 | /* 38158 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14434 | /* 38165 */ // (xor:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPXORQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14435 | /* 38165 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 14436 | /* 38168 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14437 | /* 38170 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14438 | /* 38172 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14439 | /* 38176 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14440 | /* 38181 */ GIR_RootConstrainSelectedInstOperands, |
| 14441 | /* 38182 */ // GIR_Coverage, 24221, |
| 14442 | /* 38182 */ GIR_EraseRootFromParent_Done, |
| 14443 | /* 38183 */ // Label 948: @38183 |
| 14444 | /* 38183 */ GIM_Try, /*On fail goto*//*Label 949*/ GIMT_Encode4(38245), // Rule ID 2123 // |
| 14445 | /* 38188 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 14446 | /* 38191 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14447 | /* 38195 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14448 | /* 38199 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14449 | /* 38203 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14450 | /* 38207 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14451 | /* 38210 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14452 | /* 38214 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14453 | /* 38218 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14454 | /* 38220 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14455 | /* 38227 */ // (xor:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14456 | /* 38227 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 14457 | /* 38230 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14458 | /* 38232 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14459 | /* 38234 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14460 | /* 38238 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14461 | /* 38243 */ GIR_RootConstrainSelectedInstOperands, |
| 14462 | /* 38244 */ // GIR_Coverage, 2123, |
| 14463 | /* 38244 */ GIR_EraseRootFromParent_Done, |
| 14464 | /* 38245 */ // Label 949: @38245 |
| 14465 | /* 38245 */ GIM_Try, /*On fail goto*//*Label 950*/ GIMT_Encode4(38307), // Rule ID 5815 // |
| 14466 | /* 38250 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14467 | /* 38253 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14468 | /* 38257 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14469 | /* 38261 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14470 | /* 38265 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14471 | /* 38269 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14472 | /* 38272 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14473 | /* 38276 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14474 | /* 38280 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14475 | /* 38282 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14476 | /* 38289 */ // (xor:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14477 | /* 38289 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 14478 | /* 38292 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14479 | /* 38294 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14480 | /* 38296 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14481 | /* 38300 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14482 | /* 38305 */ GIR_RootConstrainSelectedInstOperands, |
| 14483 | /* 38306 */ // GIR_Coverage, 5815, |
| 14484 | /* 38306 */ GIR_EraseRootFromParent_Done, |
| 14485 | /* 38307 */ // Label 950: @38307 |
| 14486 | /* 38307 */ GIM_Try, /*On fail goto*//*Label 951*/ GIMT_Encode4(38539), // Rule ID 21946 // |
| 14487 | /* 38312 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 14488 | /* 38315 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 14489 | /* 38319 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14490 | /* 38323 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14491 | /* 38327 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14492 | /* 38333 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14493 | /* 38335 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14494 | /* 38337 */ // (xor:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, immAllOnesV:{ *:[v2i64] }) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPTERNLOGQZrri:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src, sub_xmm:{ *:[i32] }), 15:{ *:[i8] }), sub_xmm:{ *:[i32] }) |
| 14495 | /* 38337 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 14496 | /* 38340 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14497 | /* 38344 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14498 | /* 38349 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 14499 | /* 38351 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 14500 | /* 38354 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14501 | /* 38358 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14502 | /* 38363 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 14503 | /* 38366 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14504 | /* 38370 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/11, |
| 14505 | /* 38373 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14506 | /* 38378 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14507 | /* 38383 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 14508 | /* 38388 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 14509 | /* 38391 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14510 | /* 38395 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14511 | /* 38400 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 14512 | /* 38402 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 14513 | /* 38405 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14514 | /* 38409 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14515 | /* 38414 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 14516 | /* 38417 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14517 | /* 38421 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 14518 | /* 38424 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14519 | /* 38429 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14520 | /* 38434 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 14521 | /* 38439 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 14522 | /* 38442 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14523 | /* 38446 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14524 | /* 38451 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 14525 | /* 38453 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 14526 | /* 38456 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14527 | /* 38460 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14528 | /* 38465 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 14529 | /* 38468 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14530 | /* 38472 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 14531 | /* 38475 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14532 | /* 38480 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14533 | /* 38485 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 14534 | /* 38490 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 14535 | /* 38493 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 14536 | /* 38497 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14537 | /* 38502 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14538 | /* 38505 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 14539 | /* 38508 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 14540 | /* 38511 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 14541 | /* 38514 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14542 | /* 38516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14543 | /* 38519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14544 | /* 38521 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 14545 | /* 38528 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 14546 | /* 38533 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14547 | /* 38538 */ // GIR_Coverage, 21946, |
| 14548 | /* 38538 */ GIR_EraseRootFromParent_Done, |
| 14549 | /* 38539 */ // Label 951: @38539 |
| 14550 | /* 38539 */ GIM_Try, /*On fail goto*//*Label 952*/ GIMT_Encode4(38585), // Rule ID 21954 // |
| 14551 | /* 38544 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 14552 | /* 38547 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14553 | /* 38551 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14554 | /* 38555 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14555 | /* 38559 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14556 | /* 38565 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14557 | /* 38567 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14558 | /* 38569 */ // (xor:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, immAllOnesV:{ *:[v2i64] }) => (VPTERNLOGQZ128rri:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, VR128X:{ *:[v2i64] }:$src, VR128X:{ *:[v2i64] }:$src, 15:{ *:[i8] }) |
| 14559 | /* 38569 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ128rri), |
| 14560 | /* 38572 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14561 | /* 38574 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14562 | /* 38576 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14563 | /* 38578 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14564 | /* 38580 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 14565 | /* 38583 */ GIR_RootConstrainSelectedInstOperands, |
| 14566 | /* 38584 */ // GIR_Coverage, 21954, |
| 14567 | /* 38584 */ GIR_EraseRootFromParent_Done, |
| 14568 | /* 38585 */ // Label 952: @38585 |
| 14569 | /* 38585 */ GIM_Try, /*On fail goto*//*Label 953*/ GIMT_Encode4(38612), // Rule ID 2122 // |
| 14570 | /* 38590 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 14571 | /* 38593 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14572 | /* 38597 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14573 | /* 38601 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14574 | /* 38605 */ // (xor:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPXORrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 14575 | /* 38605 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORrr), |
| 14576 | /* 38610 */ GIR_RootConstrainSelectedInstOperands, |
| 14577 | /* 38611 */ // GIR_Coverage, 2122, |
| 14578 | /* 38611 */ GIR_Done, |
| 14579 | /* 38612 */ // Label 953: @38612 |
| 14580 | /* 38612 */ GIM_Try, /*On fail goto*//*Label 954*/ GIMT_Encode4(38639), // Rule ID 2124 // |
| 14581 | /* 38617 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 14582 | /* 38620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14583 | /* 38624 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14584 | /* 38628 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14585 | /* 38632 */ // (xor:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (PXORrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 14586 | /* 38632 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PXORrr), |
| 14587 | /* 38637 */ GIR_RootConstrainSelectedInstOperands, |
| 14588 | /* 38638 */ // GIR_Coverage, 2124, |
| 14589 | /* 38638 */ GIR_Done, |
| 14590 | /* 38639 */ // Label 954: @38639 |
| 14591 | /* 38639 */ GIM_Try, /*On fail goto*//*Label 955*/ GIMT_Encode4(38666), // Rule ID 5812 // |
| 14592 | /* 38644 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14593 | /* 38647 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14594 | /* 38651 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14595 | /* 38655 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14596 | /* 38659 */ // (xor:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPXORQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 14597 | /* 38659 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rr), |
| 14598 | /* 38664 */ GIR_RootConstrainSelectedInstOperands, |
| 14599 | /* 38665 */ // GIR_Coverage, 5812, |
| 14600 | /* 38665 */ GIR_Done, |
| 14601 | /* 38666 */ // Label 955: @38666 |
| 14602 | /* 38666 */ GIM_Reject, |
| 14603 | /* 38667 */ // Label 946: @38667 |
| 14604 | /* 38667 */ GIM_Reject, |
| 14605 | /* 38668 */ // Label 856: @38668 |
| 14606 | /* 38668 */ GIM_Try, /*On fail goto*//*Label 956*/ GIMT_Encode4(39209), |
| 14607 | /* 38673 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 14608 | /* 38676 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s1, |
| 14609 | /* 38679 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 14610 | /* 38683 */ GIM_Try, /*On fail goto*//*Label 957*/ GIMT_Encode4(38803), // Rule ID 25376 // |
| 14611 | /* 38688 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14612 | /* 38692 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14613 | /* 38696 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s1, |
| 14614 | /* 38700 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s1, |
| 14615 | /* 38704 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 14616 | /* 38709 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 14617 | /* 38713 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14618 | /* 38719 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14619 | /* 38721 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 14620 | /* 38725 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14621 | /* 38727 */ // (xor:{ *:[v4i1] } (xor:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src1, immAllOnesV:{ *:[v4i1] }), VK4:{ *:[v4i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v4i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src2, VK16:{ *:[i32] })), VK4:{ *:[i32] }) |
| 14622 | /* 38727 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14623 | /* 38730 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14624 | /* 38734 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14625 | /* 38739 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 14626 | /* 38743 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14627 | /* 38748 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14628 | /* 38751 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14629 | /* 38755 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14630 | /* 38760 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14631 | /* 38764 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14632 | /* 38769 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14633 | /* 38772 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 14634 | /* 38776 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14635 | /* 38781 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14636 | /* 38784 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14637 | /* 38787 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14638 | /* 38789 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14639 | /* 38792 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14640 | /* 38794 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14641 | /* 38797 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 14642 | /* 38802 */ // GIR_Coverage, 25376, |
| 14643 | /* 38802 */ GIR_EraseRootFromParent_Done, |
| 14644 | /* 38803 */ // Label 957: @38803 |
| 14645 | /* 38803 */ GIM_Try, /*On fail goto*//*Label 958*/ GIMT_Encode4(38924), // Rule ID 19498 // |
| 14646 | /* 38808 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14647 | /* 38812 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14648 | /* 38816 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s1, |
| 14649 | /* 38820 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s1, |
| 14650 | /* 38824 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 14651 | /* 38829 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 14652 | /* 38834 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 14653 | /* 38838 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14654 | /* 38844 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14655 | /* 38846 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14656 | /* 38848 */ // (xor:{ *:[v4i1] } (xor:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src1, VK4:{ *:[v4i1] }:$src2), immAllOnesV:{ *:[v4i1] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src2, VK16:{ *:[i32] })), VK4:{ *:[i32] }) |
| 14657 | /* 38848 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14658 | /* 38851 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14659 | /* 38855 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14660 | /* 38860 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 14661 | /* 38864 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14662 | /* 38869 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14663 | /* 38872 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14664 | /* 38876 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14665 | /* 38881 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14666 | /* 38885 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14667 | /* 38890 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14668 | /* 38893 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 14669 | /* 38897 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14670 | /* 38902 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14671 | /* 38905 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14672 | /* 38908 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14673 | /* 38910 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14674 | /* 38913 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14675 | /* 38915 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14676 | /* 38918 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 14677 | /* 38923 */ // GIR_Coverage, 19498, |
| 14678 | /* 38923 */ GIR_EraseRootFromParent_Done, |
| 14679 | /* 38924 */ // Label 958: @38924 |
| 14680 | /* 38924 */ GIM_Try, /*On fail goto*//*Label 959*/ GIMT_Encode4(39044), // Rule ID 25377 // |
| 14681 | /* 38929 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 14682 | /* 38933 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14683 | /* 38937 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14684 | /* 38941 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s1, |
| 14685 | /* 38945 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s1, |
| 14686 | /* 38949 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 14687 | /* 38954 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 14688 | /* 38958 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14689 | /* 38964 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14690 | /* 38966 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14691 | /* 38968 */ // (xor:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src2, (xor:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src1, immAllOnesV:{ *:[v4i1] })) => (COPY_TO_REGCLASS:{ *:[v4i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src2, VK16:{ *:[i32] })), VK4:{ *:[i32] }) |
| 14692 | /* 38968 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14693 | /* 38971 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14694 | /* 38975 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14695 | /* 38980 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 14696 | /* 38984 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14697 | /* 38989 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14698 | /* 38992 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14699 | /* 38996 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14700 | /* 39001 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14701 | /* 39005 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14702 | /* 39010 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14703 | /* 39013 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 14704 | /* 39017 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14705 | /* 39022 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14706 | /* 39025 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14707 | /* 39028 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14708 | /* 39030 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14709 | /* 39033 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14710 | /* 39035 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14711 | /* 39038 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 14712 | /* 39043 */ // GIR_Coverage, 25377, |
| 14713 | /* 39043 */ GIR_EraseRootFromParent_Done, |
| 14714 | /* 39044 */ // Label 959: @39044 |
| 14715 | /* 39044 */ GIM_Try, /*On fail goto*//*Label 960*/ GIMT_Encode4(39119), // Rule ID 19480 // |
| 14716 | /* 39049 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 14717 | /* 39053 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14718 | /* 39057 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14719 | /* 39063 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14720 | /* 39065 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14721 | /* 39067 */ // (xor:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src, immAllOnesV:{ *:[v4i1] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } (KNOTWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src, VK16:{ *:[i32] })), VK4:{ *:[i32] }) |
| 14722 | /* 39067 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14723 | /* 39070 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14724 | /* 39074 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14725 | /* 39079 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14726 | /* 39083 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14727 | /* 39088 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14728 | /* 39091 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 14729 | /* 39095 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14730 | /* 39100 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14731 | /* 39103 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14732 | /* 39105 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14733 | /* 39108 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14734 | /* 39110 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14735 | /* 39113 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 14736 | /* 39118 */ // GIR_Coverage, 19480, |
| 14737 | /* 39118 */ GIR_EraseRootFromParent_Done, |
| 14738 | /* 39119 */ // Label 960: @39119 |
| 14739 | /* 39119 */ GIM_Try, /*On fail goto*//*Label 961*/ GIMT_Encode4(39208), // Rule ID 19502 // |
| 14740 | /* 39124 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 14741 | /* 39128 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 14742 | /* 39132 */ // (xor:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src1, VK4:{ *:[v4i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v4i1] } (KXORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src2, VK16:{ *:[i32] })), VK4:{ *:[i32] }) |
| 14743 | /* 39132 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14744 | /* 39135 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14745 | /* 39139 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14746 | /* 39144 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 14747 | /* 39148 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14748 | /* 39153 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14749 | /* 39156 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14750 | /* 39160 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14751 | /* 39165 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 14752 | /* 39169 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14753 | /* 39174 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14754 | /* 39177 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXORWkk), |
| 14755 | /* 39181 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14756 | /* 39186 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14757 | /* 39189 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14758 | /* 39192 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14759 | /* 39194 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14760 | /* 39197 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14761 | /* 39199 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14762 | /* 39202 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 14763 | /* 39207 */ // GIR_Coverage, 19502, |
| 14764 | /* 39207 */ GIR_EraseRootFromParent_Done, |
| 14765 | /* 39208 */ // Label 961: @39208 |
| 14766 | /* 39208 */ GIM_Reject, |
| 14767 | /* 39209 */ // Label 956: @39209 |
| 14768 | /* 39209 */ GIM_Reject, |
| 14769 | /* 39210 */ // Label 857: @39210 |
| 14770 | /* 39210 */ GIM_Try, /*On fail goto*//*Label 962*/ GIMT_Encode4(39829), |
| 14771 | /* 39215 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 14772 | /* 39218 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 14773 | /* 39221 */ GIM_Try, /*On fail goto*//*Label 963*/ GIMT_Encode4(39283), // Rule ID 24239 // |
| 14774 | /* 39226 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14775 | /* 39229 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14776 | /* 39233 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14777 | /* 39237 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14778 | /* 39241 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14779 | /* 39244 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14780 | /* 39248 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14781 | /* 39252 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14782 | /* 39256 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14783 | /* 39258 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14784 | /* 39265 */ // (xor:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPXORDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14785 | /* 39265 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZ128rm), |
| 14786 | /* 39268 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14787 | /* 39270 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14788 | /* 39272 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14789 | /* 39276 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14790 | /* 39281 */ GIR_RootConstrainSelectedInstOperands, |
| 14791 | /* 39282 */ // GIR_Coverage, 24239, |
| 14792 | /* 39282 */ GIR_EraseRootFromParent_Done, |
| 14793 | /* 39283 */ // Label 963: @39283 |
| 14794 | /* 39283 */ GIM_Try, /*On fail goto*//*Label 964*/ GIMT_Encode4(39345), // Rule ID 25259 // |
| 14795 | /* 39288 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 14796 | /* 39291 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14797 | /* 39295 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14798 | /* 39299 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14799 | /* 39303 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14800 | /* 39306 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14801 | /* 39310 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14802 | /* 39314 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14803 | /* 39318 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14804 | /* 39320 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14805 | /* 39327 */ // (xor:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPXORrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14806 | /* 39327 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 14807 | /* 39330 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14808 | /* 39332 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14809 | /* 39334 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14810 | /* 39338 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14811 | /* 39343 */ GIR_RootConstrainSelectedInstOperands, |
| 14812 | /* 39344 */ // GIR_Coverage, 25259, |
| 14813 | /* 39344 */ GIR_EraseRootFromParent_Done, |
| 14814 | /* 39345 */ // Label 964: @39345 |
| 14815 | /* 39345 */ GIM_Try, /*On fail goto*//*Label 965*/ GIMT_Encode4(39407), // Rule ID 5842 // |
| 14816 | /* 39350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14817 | /* 39353 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14818 | /* 39357 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14819 | /* 39361 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14820 | /* 39365 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14821 | /* 39369 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14822 | /* 39372 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14823 | /* 39376 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14824 | /* 39380 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14825 | /* 39382 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14826 | /* 39389 */ // (xor:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14827 | /* 39389 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZ128rm), |
| 14828 | /* 39392 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14829 | /* 39394 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14830 | /* 39396 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14831 | /* 39400 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14832 | /* 39405 */ GIR_RootConstrainSelectedInstOperands, |
| 14833 | /* 39406 */ // GIR_Coverage, 5842, |
| 14834 | /* 39406 */ GIR_EraseRootFromParent_Done, |
| 14835 | /* 39407 */ // Label 965: @39407 |
| 14836 | /* 39407 */ GIM_Try, /*On fail goto*//*Label 966*/ GIMT_Encode4(39469), // Rule ID 18166 // |
| 14837 | /* 39412 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 14838 | /* 39415 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14839 | /* 39419 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14840 | /* 39423 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14841 | /* 39427 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14842 | /* 39431 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14843 | /* 39434 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14844 | /* 39438 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14845 | /* 39442 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14846 | /* 39444 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14847 | /* 39451 */ // (xor:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14848 | /* 39451 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 14849 | /* 39454 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14850 | /* 39456 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14851 | /* 39458 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14852 | /* 39462 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14853 | /* 39467 */ GIR_RootConstrainSelectedInstOperands, |
| 14854 | /* 39468 */ // GIR_Coverage, 18166, |
| 14855 | /* 39468 */ GIR_EraseRootFromParent_Done, |
| 14856 | /* 39469 */ // Label 966: @39469 |
| 14857 | /* 39469 */ GIM_Try, /*On fail goto*//*Label 967*/ GIMT_Encode4(39701), // Rule ID 21945 // |
| 14858 | /* 39474 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 14859 | /* 39477 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 14860 | /* 39481 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14861 | /* 39485 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14862 | /* 39489 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14863 | /* 39495 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14864 | /* 39497 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14865 | /* 39499 */ // (xor:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, immAllOnesV:{ *:[v4i32] }) => (EXTRACT_SUBREG:{ *:[v4i32] } (VPTERNLOGQZrri:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v4i32] }:$src, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v4i32] }:$src, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v4i32] }:$src, sub_xmm:{ *:[i32] }), 15:{ *:[i8] }), sub_xmm:{ *:[i32] }) |
| 14866 | /* 39499 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 14867 | /* 39502 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14868 | /* 39506 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14869 | /* 39511 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 14870 | /* 39513 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 14871 | /* 39516 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14872 | /* 39520 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14873 | /* 39525 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 14874 | /* 39528 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14875 | /* 39532 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/11, |
| 14876 | /* 39535 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14877 | /* 39540 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14878 | /* 39545 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 14879 | /* 39550 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 14880 | /* 39553 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14881 | /* 39557 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14882 | /* 39562 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 14883 | /* 39564 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 14884 | /* 39567 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14885 | /* 39571 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14886 | /* 39576 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 14887 | /* 39579 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14888 | /* 39583 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 14889 | /* 39586 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14890 | /* 39591 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14891 | /* 39596 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 14892 | /* 39601 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 14893 | /* 39604 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14894 | /* 39608 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14895 | /* 39613 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 14896 | /* 39615 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 14897 | /* 39618 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14898 | /* 39622 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14899 | /* 39627 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 14900 | /* 39630 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14901 | /* 39634 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 14902 | /* 39637 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14903 | /* 39642 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14904 | /* 39647 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 14905 | /* 39652 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 14906 | /* 39655 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 14907 | /* 39659 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 14908 | /* 39664 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14909 | /* 39667 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 14910 | /* 39670 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 14911 | /* 39673 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 14912 | /* 39676 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14913 | /* 39678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14914 | /* 39681 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14915 | /* 39683 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 14916 | /* 39690 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 14917 | /* 39695 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14918 | /* 39700 */ // GIR_Coverage, 21945, |
| 14919 | /* 39700 */ GIR_EraseRootFromParent_Done, |
| 14920 | /* 39701 */ // Label 967: @39701 |
| 14921 | /* 39701 */ GIM_Try, /*On fail goto*//*Label 968*/ GIMT_Encode4(39747), // Rule ID 21953 // |
| 14922 | /* 39706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 14923 | /* 39709 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14924 | /* 39713 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14925 | /* 39717 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14926 | /* 39721 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14927 | /* 39727 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14928 | /* 39729 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14929 | /* 39731 */ // (xor:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, immAllOnesV:{ *:[v4i32] }) => (VPTERNLOGQZ128rri:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, VR128X:{ *:[v4i32] }:$src, VR128X:{ *:[v4i32] }:$src, 15:{ *:[i8] }) |
| 14930 | /* 39731 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ128rri), |
| 14931 | /* 39734 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14932 | /* 39736 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14933 | /* 39738 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14934 | /* 39740 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14935 | /* 39742 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 14936 | /* 39745 */ GIR_RootConstrainSelectedInstOperands, |
| 14937 | /* 39746 */ // GIR_Coverage, 21953, |
| 14938 | /* 39746 */ GIR_EraseRootFromParent_Done, |
| 14939 | /* 39747 */ // Label 968: @39747 |
| 14940 | /* 39747 */ GIM_Try, /*On fail goto*//*Label 969*/ GIMT_Encode4(39774), // Rule ID 5839 // |
| 14941 | /* 39752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14942 | /* 39755 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14943 | /* 39759 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14944 | /* 39763 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14945 | /* 39767 */ // (xor:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPXORDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 14946 | /* 39767 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORDZ128rr), |
| 14947 | /* 39772 */ GIR_RootConstrainSelectedInstOperands, |
| 14948 | /* 39773 */ // GIR_Coverage, 5839, |
| 14949 | /* 39773 */ GIR_Done, |
| 14950 | /* 39774 */ // Label 969: @39774 |
| 14951 | /* 39774 */ GIM_Try, /*On fail goto*//*Label 970*/ GIMT_Encode4(39801), // Rule ID 18154 // |
| 14952 | /* 39779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 14953 | /* 39782 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14954 | /* 39786 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14955 | /* 39790 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14956 | /* 39794 */ // (xor:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPXORrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 14957 | /* 39794 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORrr), |
| 14958 | /* 39799 */ GIR_RootConstrainSelectedInstOperands, |
| 14959 | /* 39800 */ // GIR_Coverage, 18154, |
| 14960 | /* 39800 */ GIR_Done, |
| 14961 | /* 39801 */ // Label 970: @39801 |
| 14962 | /* 39801 */ GIM_Try, /*On fail goto*//*Label 971*/ GIMT_Encode4(39828), // Rule ID 18178 // |
| 14963 | /* 39806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 14964 | /* 39809 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14965 | /* 39813 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14966 | /* 39817 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14967 | /* 39821 */ // (xor:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PXORrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 14968 | /* 39821 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PXORrr), |
| 14969 | /* 39826 */ GIR_RootConstrainSelectedInstOperands, |
| 14970 | /* 39827 */ // GIR_Coverage, 18178, |
| 14971 | /* 39827 */ GIR_Done, |
| 14972 | /* 39828 */ // Label 971: @39828 |
| 14973 | /* 39828 */ GIM_Reject, |
| 14974 | /* 39829 */ // Label 962: @39829 |
| 14975 | /* 39829 */ GIM_Reject, |
| 14976 | /* 39830 */ // Label 858: @39830 |
| 14977 | /* 39830 */ GIM_Try, /*On fail goto*//*Label 972*/ GIMT_Encode4(40573), |
| 14978 | /* 39835 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 14979 | /* 39838 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 14980 | /* 39841 */ GIM_Try, /*On fail goto*//*Label 973*/ GIMT_Encode4(39903), // Rule ID 23368 // |
| 14981 | /* 39846 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 14982 | /* 39849 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14983 | /* 39853 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14984 | /* 39857 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14985 | /* 39861 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14986 | /* 39864 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14987 | /* 39868 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14988 | /* 39872 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14989 | /* 39876 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14990 | /* 39878 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14991 | /* 39885 */ // (xor:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VPXORYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14992 | /* 39885 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 14993 | /* 39888 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14994 | /* 39890 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14995 | /* 39892 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14996 | /* 39896 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14997 | /* 39901 */ GIR_RootConstrainSelectedInstOperands, |
| 14998 | /* 39902 */ // GIR_Coverage, 23368, |
| 14999 | /* 39902 */ GIR_EraseRootFromParent_Done, |
| 15000 | /* 39903 */ // Label 973: @39903 |
| 15001 | /* 39903 */ GIM_Try, /*On fail goto*//*Label 974*/ GIMT_Encode4(39965), // Rule ID 24215 // |
| 15002 | /* 39908 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 15003 | /* 39911 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15004 | /* 39915 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15005 | /* 39919 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15006 | /* 39923 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15007 | /* 39926 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15008 | /* 39930 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15009 | /* 39934 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15010 | /* 39938 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15011 | /* 39940 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15012 | /* 39947 */ // (xor:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPXORQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15013 | /* 39947 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 15014 | /* 39950 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15015 | /* 39952 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15016 | /* 39954 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15017 | /* 39958 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15018 | /* 39963 */ GIR_RootConstrainSelectedInstOperands, |
| 15019 | /* 39964 */ // GIR_Coverage, 24215, |
| 15020 | /* 39964 */ GIR_EraseRootFromParent_Done, |
| 15021 | /* 39965 */ // Label 974: @39965 |
| 15022 | /* 39965 */ GIM_Try, /*On fail goto*//*Label 975*/ GIMT_Encode4(40027), // Rule ID 25250 // |
| 15023 | /* 39970 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15024 | /* 39973 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15025 | /* 39977 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15026 | /* 39981 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15027 | /* 39985 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15028 | /* 39988 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15029 | /* 39992 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15030 | /* 39996 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15031 | /* 40000 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15032 | /* 40002 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15033 | /* 40009 */ // (xor:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VXORPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15034 | /* 40009 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 15035 | /* 40012 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15036 | /* 40014 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15037 | /* 40016 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15038 | /* 40020 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15039 | /* 40025 */ GIR_RootConstrainSelectedInstOperands, |
| 15040 | /* 40026 */ // GIR_Coverage, 25250, |
| 15041 | /* 40026 */ GIR_EraseRootFromParent_Done, |
| 15042 | /* 40027 */ // Label 975: @40027 |
| 15043 | /* 40027 */ GIM_Try, /*On fail goto*//*Label 976*/ GIMT_Encode4(40089), // Rule ID 2127 // |
| 15044 | /* 40032 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15045 | /* 40035 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15046 | /* 40039 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15047 | /* 40043 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15048 | /* 40047 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15049 | /* 40051 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15050 | /* 40054 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15051 | /* 40058 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15052 | /* 40062 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15053 | /* 40064 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15054 | /* 40071 */ // (xor:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15055 | /* 40071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 15056 | /* 40074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15057 | /* 40076 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15058 | /* 40078 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15059 | /* 40082 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15060 | /* 40087 */ GIR_RootConstrainSelectedInstOperands, |
| 15061 | /* 40088 */ // GIR_Coverage, 2127, |
| 15062 | /* 40088 */ GIR_EraseRootFromParent_Done, |
| 15063 | /* 40089 */ // Label 976: @40089 |
| 15064 | /* 40089 */ GIM_Try, /*On fail goto*//*Label 977*/ GIMT_Encode4(40151), // Rule ID 5806 // |
| 15065 | /* 40094 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 15066 | /* 40097 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15067 | /* 40101 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15068 | /* 40105 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15069 | /* 40109 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15070 | /* 40113 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15071 | /* 40116 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15072 | /* 40120 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15073 | /* 40124 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15074 | /* 40126 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15075 | /* 40133 */ // (xor:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15076 | /* 40133 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 15077 | /* 40136 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15078 | /* 40138 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15079 | /* 40140 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15080 | /* 40144 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15081 | /* 40149 */ GIR_RootConstrainSelectedInstOperands, |
| 15082 | /* 40150 */ // GIR_Coverage, 5806, |
| 15083 | /* 40150 */ GIR_EraseRootFromParent_Done, |
| 15084 | /* 40151 */ // Label 977: @40151 |
| 15085 | /* 40151 */ GIM_Try, /*On fail goto*//*Label 978*/ GIMT_Encode4(40213), // Rule ID 18141 // |
| 15086 | /* 40156 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15087 | /* 40159 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15088 | /* 40163 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15089 | /* 40167 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15090 | /* 40171 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15091 | /* 40175 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15092 | /* 40178 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15093 | /* 40182 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15094 | /* 40186 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15095 | /* 40188 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15096 | /* 40195 */ // (xor:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VXORPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15097 | /* 40195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 15098 | /* 40198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15099 | /* 40200 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15100 | /* 40202 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15101 | /* 40206 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15102 | /* 40211 */ GIR_RootConstrainSelectedInstOperands, |
| 15103 | /* 40212 */ // GIR_Coverage, 18141, |
| 15104 | /* 40212 */ GIR_EraseRootFromParent_Done, |
| 15105 | /* 40213 */ // Label 978: @40213 |
| 15106 | /* 40213 */ GIM_Try, /*On fail goto*//*Label 979*/ GIMT_Encode4(40445), // Rule ID 21950 // |
| 15107 | /* 40218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 15108 | /* 40221 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15109 | /* 40225 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15110 | /* 40229 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15111 | /* 40233 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15112 | /* 40239 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15113 | /* 40241 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15114 | /* 40243 */ // (xor:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, immAllOnesV:{ *:[v4i64] }) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPTERNLOGQZrri:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src, sub_ymm:{ *:[i32] }), 15:{ *:[i8] }), sub_ymm:{ *:[i32] }) |
| 15115 | /* 40243 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 15116 | /* 40246 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15117 | /* 40250 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15118 | /* 40255 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 15119 | /* 40257 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 15120 | /* 40260 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15121 | /* 40264 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15122 | /* 40269 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 15123 | /* 40272 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15124 | /* 40276 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/12, |
| 15125 | /* 40279 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15126 | /* 40284 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15127 | /* 40289 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15128 | /* 40294 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 15129 | /* 40297 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15130 | /* 40301 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15131 | /* 40306 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 15132 | /* 40308 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 15133 | /* 40311 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15134 | /* 40315 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15135 | /* 40320 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 15136 | /* 40323 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15137 | /* 40327 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 15138 | /* 40330 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15139 | /* 40335 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15140 | /* 40340 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15141 | /* 40345 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 15142 | /* 40348 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15143 | /* 40352 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15144 | /* 40357 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 15145 | /* 40359 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 15146 | /* 40362 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15147 | /* 40366 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15148 | /* 40371 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 15149 | /* 40374 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15150 | /* 40378 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 15151 | /* 40381 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15152 | /* 40386 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15153 | /* 40391 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15154 | /* 40396 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 15155 | /* 40399 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 15156 | /* 40403 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15157 | /* 40408 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15158 | /* 40411 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 15159 | /* 40414 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 15160 | /* 40417 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 15161 | /* 40420 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15162 | /* 40422 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15163 | /* 40425 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15164 | /* 40427 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 15165 | /* 40434 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 15166 | /* 40439 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15167 | /* 40444 */ // GIR_Coverage, 21950, |
| 15168 | /* 40444 */ GIR_EraseRootFromParent_Done, |
| 15169 | /* 40445 */ // Label 979: @40445 |
| 15170 | /* 40445 */ GIM_Try, /*On fail goto*//*Label 980*/ GIMT_Encode4(40491), // Rule ID 21958 // |
| 15171 | /* 40450 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15172 | /* 40453 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15173 | /* 40457 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15174 | /* 40461 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15175 | /* 40465 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15176 | /* 40471 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15177 | /* 40473 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15178 | /* 40475 */ // (xor:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, immAllOnesV:{ *:[v4i64] }) => (VPTERNLOGQZ256rri:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, VR256X:{ *:[v4i64] }:$src, VR256X:{ *:[v4i64] }:$src, 15:{ *:[i8] }) |
| 15179 | /* 40475 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ256rri), |
| 15180 | /* 40478 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15181 | /* 40480 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15182 | /* 40482 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15183 | /* 40484 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15184 | /* 40486 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 15185 | /* 40489 */ GIR_RootConstrainSelectedInstOperands, |
| 15186 | /* 40490 */ // GIR_Coverage, 21958, |
| 15187 | /* 40490 */ GIR_EraseRootFromParent_Done, |
| 15188 | /* 40491 */ // Label 980: @40491 |
| 15189 | /* 40491 */ GIM_Try, /*On fail goto*//*Label 981*/ GIMT_Encode4(40518), // Rule ID 2126 // |
| 15190 | /* 40496 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15191 | /* 40499 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15192 | /* 40503 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15193 | /* 40507 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15194 | /* 40511 */ // (xor:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPXORYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 15195 | /* 40511 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORYrr), |
| 15196 | /* 40516 */ GIR_RootConstrainSelectedInstOperands, |
| 15197 | /* 40517 */ // GIR_Coverage, 2126, |
| 15198 | /* 40517 */ GIR_Done, |
| 15199 | /* 40518 */ // Label 981: @40518 |
| 15200 | /* 40518 */ GIM_Try, /*On fail goto*//*Label 982*/ GIMT_Encode4(40545), // Rule ID 5803 // |
| 15201 | /* 40523 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 15202 | /* 40526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15203 | /* 40530 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15204 | /* 40534 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15205 | /* 40538 */ // (xor:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPXORQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 15206 | /* 40538 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rr), |
| 15207 | /* 40543 */ GIR_RootConstrainSelectedInstOperands, |
| 15208 | /* 40544 */ // GIR_Coverage, 5803, |
| 15209 | /* 40544 */ GIR_Done, |
| 15210 | /* 40545 */ // Label 982: @40545 |
| 15211 | /* 40545 */ GIM_Try, /*On fail goto*//*Label 983*/ GIMT_Encode4(40572), // Rule ID 18125 // |
| 15212 | /* 40550 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15213 | /* 40553 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15214 | /* 40557 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15215 | /* 40561 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15216 | /* 40565 */ // (xor:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VXORPSYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 15217 | /* 40565 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VXORPSYrr), |
| 15218 | /* 40570 */ GIR_RootConstrainSelectedInstOperands, |
| 15219 | /* 40571 */ // GIR_Coverage, 18125, |
| 15220 | /* 40571 */ GIR_Done, |
| 15221 | /* 40572 */ // Label 983: @40572 |
| 15222 | /* 40572 */ GIM_Reject, |
| 15223 | /* 40573 */ // Label 972: @40573 |
| 15224 | /* 40573 */ GIM_Reject, |
| 15225 | /* 40574 */ // Label 859: @40574 |
| 15226 | /* 40574 */ GIM_Try, /*On fail goto*//*Label 984*/ GIMT_Encode4(41371), |
| 15227 | /* 40579 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 15228 | /* 40582 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 15229 | /* 40585 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15230 | /* 40589 */ GIM_Try, /*On fail goto*//*Label 985*/ GIMT_Encode4(40649), // Rule ID 23684 // |
| 15231 | /* 40594 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 15232 | /* 40597 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15233 | /* 40601 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15234 | /* 40605 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 15235 | /* 40609 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 15236 | /* 40613 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15237 | /* 40618 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 15238 | /* 40622 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15239 | /* 40628 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15240 | /* 40630 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15241 | /* 40634 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15242 | /* 40636 */ // (xor:{ *:[v8i1] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] }), VK8:{ *:[v8i1] }:$src2) => (KXNORBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 15243 | /* 40636 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORBkk), |
| 15244 | /* 40639 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15245 | /* 40641 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15246 | /* 40645 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 15247 | /* 40647 */ GIR_RootConstrainSelectedInstOperands, |
| 15248 | /* 40648 */ // GIR_Coverage, 23684, |
| 15249 | /* 40648 */ GIR_EraseRootFromParent_Done, |
| 15250 | /* 40649 */ // Label 985: @40649 |
| 15251 | /* 40649 */ GIM_Try, /*On fail goto*//*Label 986*/ GIMT_Encode4(40772), // Rule ID 25370 // |
| 15252 | /* 40654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 15253 | /* 40657 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15254 | /* 40661 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15255 | /* 40665 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 15256 | /* 40669 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 15257 | /* 40673 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15258 | /* 40678 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 15259 | /* 40682 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15260 | /* 40688 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15261 | /* 40690 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15262 | /* 40694 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15263 | /* 40696 */ // (xor:{ *:[v8i1] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] }), VK8:{ *:[v8i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v8i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src2, VK16:{ *:[i32] })), VK8:{ *:[i32] }) |
| 15264 | /* 40696 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 15265 | /* 40699 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15266 | /* 40703 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15267 | /* 40708 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 15268 | /* 40712 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 15269 | /* 40717 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 15270 | /* 40720 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15271 | /* 40724 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15272 | /* 40729 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15273 | /* 40733 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 15274 | /* 40738 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 15275 | /* 40741 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 15276 | /* 40745 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15277 | /* 40750 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15278 | /* 40753 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 15279 | /* 40756 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15280 | /* 40758 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15281 | /* 40761 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15282 | /* 40763 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15283 | /* 40766 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 15284 | /* 40771 */ // GIR_Coverage, 25370, |
| 15285 | /* 40771 */ GIR_EraseRootFromParent_Done, |
| 15286 | /* 40772 */ // Label 986: @40772 |
| 15287 | /* 40772 */ GIM_Try, /*On fail goto*//*Label 987*/ GIMT_Encode4(40835), // Rule ID 4423 // |
| 15288 | /* 40777 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 15289 | /* 40780 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15290 | /* 40784 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15291 | /* 40788 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 15292 | /* 40792 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 15293 | /* 40796 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15294 | /* 40801 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15295 | /* 40806 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 15296 | /* 40810 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15297 | /* 40816 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15298 | /* 40818 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15299 | /* 40820 */ // (xor:{ *:[v8i1] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2), immAllOnesV:{ *:[v8i1] }) => (KXNORBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 15300 | /* 40820 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORBkk), |
| 15301 | /* 40823 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15302 | /* 40825 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15303 | /* 40829 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15304 | /* 40833 */ GIR_RootConstrainSelectedInstOperands, |
| 15305 | /* 40834 */ // GIR_Coverage, 4423, |
| 15306 | /* 40834 */ GIR_EraseRootFromParent_Done, |
| 15307 | /* 40835 */ // Label 987: @40835 |
| 15308 | /* 40835 */ GIM_Try, /*On fail goto*//*Label 988*/ GIMT_Encode4(40959), // Rule ID 19495 // |
| 15309 | /* 40840 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 15310 | /* 40843 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15311 | /* 40847 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15312 | /* 40851 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 15313 | /* 40855 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 15314 | /* 40859 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15315 | /* 40864 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15316 | /* 40869 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 15317 | /* 40873 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15318 | /* 40879 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15319 | /* 40881 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15320 | /* 40883 */ // (xor:{ *:[v8i1] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2), immAllOnesV:{ *:[v8i1] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src2, VK16:{ *:[i32] })), VK8:{ *:[i32] }) |
| 15321 | /* 40883 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 15322 | /* 40886 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15323 | /* 40890 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15324 | /* 40895 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15325 | /* 40899 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 15326 | /* 40904 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 15327 | /* 40907 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15328 | /* 40911 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15329 | /* 40916 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15330 | /* 40920 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 15331 | /* 40925 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 15332 | /* 40928 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 15333 | /* 40932 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15334 | /* 40937 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15335 | /* 40940 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 15336 | /* 40943 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15337 | /* 40945 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15338 | /* 40948 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15339 | /* 40950 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15340 | /* 40953 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 15341 | /* 40958 */ // GIR_Coverage, 19495, |
| 15342 | /* 40958 */ GIR_EraseRootFromParent_Done, |
| 15343 | /* 40959 */ // Label 988: @40959 |
| 15344 | /* 40959 */ GIM_Try, /*On fail goto*//*Label 989*/ GIMT_Encode4(41019), // Rule ID 23685 // |
| 15345 | /* 40964 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 15346 | /* 40967 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15347 | /* 40971 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15348 | /* 40975 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15349 | /* 40979 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 15350 | /* 40983 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 15351 | /* 40987 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15352 | /* 40992 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 15353 | /* 40996 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15354 | /* 41002 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15355 | /* 41004 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15356 | /* 41006 */ // (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src2, (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] })) => (KXNORBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 15357 | /* 41006 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORBkk), |
| 15358 | /* 41009 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15359 | /* 41011 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15360 | /* 41015 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 15361 | /* 41017 */ GIR_RootConstrainSelectedInstOperands, |
| 15362 | /* 41018 */ // GIR_Coverage, 23685, |
| 15363 | /* 41018 */ GIR_EraseRootFromParent_Done, |
| 15364 | /* 41019 */ // Label 989: @41019 |
| 15365 | /* 41019 */ GIM_Try, /*On fail goto*//*Label 990*/ GIMT_Encode4(41142), // Rule ID 25371 // |
| 15366 | /* 41024 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 15367 | /* 41027 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15368 | /* 41031 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15369 | /* 41035 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15370 | /* 41039 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 15371 | /* 41043 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 15372 | /* 41047 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15373 | /* 41052 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 15374 | /* 41056 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15375 | /* 41062 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15376 | /* 41064 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15377 | /* 41066 */ // (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src2, (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] })) => (COPY_TO_REGCLASS:{ *:[v8i1] } (KXNORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src2, VK16:{ *:[i32] })), VK8:{ *:[i32] }) |
| 15378 | /* 41066 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 15379 | /* 41069 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15380 | /* 41073 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15381 | /* 41078 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 15382 | /* 41082 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 15383 | /* 41087 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 15384 | /* 41090 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15385 | /* 41094 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15386 | /* 41099 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15387 | /* 41103 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 15388 | /* 41108 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 15389 | /* 41111 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 15390 | /* 41115 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15391 | /* 41120 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15392 | /* 41123 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 15393 | /* 41126 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15394 | /* 41128 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15395 | /* 41131 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15396 | /* 41133 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15397 | /* 41136 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 15398 | /* 41141 */ // GIR_Coverage, 25371, |
| 15399 | /* 41141 */ GIR_EraseRootFromParent_Done, |
| 15400 | /* 41142 */ // Label 990: @41142 |
| 15401 | /* 41142 */ GIM_Try, /*On fail goto*//*Label 991*/ GIMT_Encode4(41177), // Rule ID 4411 // |
| 15402 | /* 41147 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 15403 | /* 41150 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15404 | /* 41154 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15405 | /* 41158 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15406 | /* 41164 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15407 | /* 41166 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15408 | /* 41168 */ // (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src, immAllOnesV:{ *:[v8i1] }) => (KNOTBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src) |
| 15409 | /* 41168 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KNOTBkk), |
| 15410 | /* 41171 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15411 | /* 41173 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15412 | /* 41175 */ GIR_RootConstrainSelectedInstOperands, |
| 15413 | /* 41176 */ // GIR_Coverage, 4411, |
| 15414 | /* 41176 */ GIR_EraseRootFromParent_Done, |
| 15415 | /* 41177 */ // Label 991: @41177 |
| 15416 | /* 41177 */ GIM_Try, /*On fail goto*//*Label 992*/ GIMT_Encode4(41255), // Rule ID 19479 // |
| 15417 | /* 41182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoDQI), |
| 15418 | /* 41185 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15419 | /* 41189 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15420 | /* 41193 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15421 | /* 41199 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15422 | /* 41201 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15423 | /* 41203 */ // (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src, immAllOnesV:{ *:[v8i1] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } (KNOTWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src, VK16:{ *:[i32] })), VK8:{ *:[i32] }) |
| 15424 | /* 41203 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 15425 | /* 41206 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15426 | /* 41210 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15427 | /* 41215 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15428 | /* 41219 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 15429 | /* 41224 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 15430 | /* 41227 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 15431 | /* 41231 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15432 | /* 41236 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15433 | /* 41239 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15434 | /* 41241 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15435 | /* 41244 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15436 | /* 41246 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15437 | /* 41249 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 15438 | /* 41254 */ // GIR_Coverage, 19479, |
| 15439 | /* 41254 */ GIR_EraseRootFromParent_Done, |
| 15440 | /* 41255 */ // Label 992: @41255 |
| 15441 | /* 41255 */ GIM_Try, /*On fail goto*//*Label 993*/ GIMT_Encode4(41278), // Rule ID 4427 // |
| 15442 | /* 41260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 15443 | /* 41263 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15444 | /* 41267 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15445 | /* 41271 */ // (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (KXORBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 15446 | /* 41271 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KXORBkk), |
| 15447 | /* 41276 */ GIR_RootConstrainSelectedInstOperands, |
| 15448 | /* 41277 */ // GIR_Coverage, 4427, |
| 15449 | /* 41277 */ GIR_Done, |
| 15450 | /* 41278 */ // Label 993: @41278 |
| 15451 | /* 41278 */ GIM_Try, /*On fail goto*//*Label 994*/ GIMT_Encode4(41370), // Rule ID 19499 // |
| 15452 | /* 41283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 15453 | /* 41286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15454 | /* 41290 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 15455 | /* 41294 */ // (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (COPY_TO_REGCLASS:{ *:[v8i1] } (KXORWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src1, VK16:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src2, VK16:{ *:[i32] })), VK8:{ *:[i32] }) |
| 15456 | /* 41294 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 15457 | /* 41297 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15458 | /* 41301 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15459 | /* 41306 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 15460 | /* 41310 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 15461 | /* 41315 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 15462 | /* 41318 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15463 | /* 41322 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15464 | /* 41327 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 15465 | /* 41331 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 15466 | /* 41336 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 15467 | /* 41339 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXORWkk), |
| 15468 | /* 41343 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15469 | /* 41348 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15470 | /* 41351 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 15471 | /* 41354 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15472 | /* 41356 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15473 | /* 41359 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15474 | /* 41361 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15475 | /* 41364 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 15476 | /* 41369 */ // GIR_Coverage, 19499, |
| 15477 | /* 41369 */ GIR_EraseRootFromParent_Done, |
| 15478 | /* 41370 */ // Label 994: @41370 |
| 15479 | /* 41370 */ GIM_Reject, |
| 15480 | /* 41371 */ // Label 984: @41371 |
| 15481 | /* 41371 */ GIM_Reject, |
| 15482 | /* 41372 */ // Label 860: @41372 |
| 15483 | /* 41372 */ GIM_Try, /*On fail goto*//*Label 995*/ GIMT_Encode4(41991), |
| 15484 | /* 41377 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 15485 | /* 41380 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 15486 | /* 41383 */ GIM_Try, /*On fail goto*//*Label 996*/ GIMT_Encode4(41445), // Rule ID 25258 // |
| 15487 | /* 41388 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 15488 | /* 41391 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15489 | /* 41395 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15490 | /* 41399 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15491 | /* 41403 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15492 | /* 41406 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15493 | /* 41410 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15494 | /* 41414 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15495 | /* 41418 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15496 | /* 41420 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15497 | /* 41427 */ // (xor:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPXORrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15498 | /* 41427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 15499 | /* 41430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15500 | /* 41432 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15501 | /* 41434 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15502 | /* 41438 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15503 | /* 41443 */ GIR_RootConstrainSelectedInstOperands, |
| 15504 | /* 41444 */ // GIR_Coverage, 25258, |
| 15505 | /* 41444 */ GIR_EraseRootFromParent_Done, |
| 15506 | /* 41445 */ // Label 996: @41445 |
| 15507 | /* 41445 */ GIM_Try, /*On fail goto*//*Label 997*/ GIMT_Encode4(41507), // Rule ID 25437 // |
| 15508 | /* 41450 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15509 | /* 41453 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15510 | /* 41457 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15511 | /* 41461 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15512 | /* 41465 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15513 | /* 41468 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15514 | /* 41472 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15515 | /* 41476 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15516 | /* 41480 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15517 | /* 41482 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15518 | /* 41489 */ // (xor:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPXORQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15519 | /* 41489 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 15520 | /* 41492 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15521 | /* 41494 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15522 | /* 41496 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15523 | /* 41500 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15524 | /* 41505 */ GIR_RootConstrainSelectedInstOperands, |
| 15525 | /* 41506 */ // GIR_Coverage, 25437, |
| 15526 | /* 41506 */ GIR_EraseRootFromParent_Done, |
| 15527 | /* 41507 */ // Label 997: @41507 |
| 15528 | /* 41507 */ GIM_Try, /*On fail goto*//*Label 998*/ GIMT_Encode4(41569), // Rule ID 18165 // |
| 15529 | /* 41512 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 15530 | /* 41515 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15531 | /* 41519 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15532 | /* 41523 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15533 | /* 41527 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15534 | /* 41531 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15535 | /* 41534 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15536 | /* 41538 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15537 | /* 41542 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15538 | /* 41544 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15539 | /* 41551 */ // (xor:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15540 | /* 41551 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 15541 | /* 41554 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15542 | /* 41556 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15543 | /* 41558 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15544 | /* 41562 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15545 | /* 41567 */ GIR_RootConstrainSelectedInstOperands, |
| 15546 | /* 41568 */ // GIR_Coverage, 18165, |
| 15547 | /* 41568 */ GIR_EraseRootFromParent_Done, |
| 15548 | /* 41569 */ // Label 998: @41569 |
| 15549 | /* 41569 */ GIM_Try, /*On fail goto*//*Label 999*/ GIMT_Encode4(41631), // Rule ID 20029 // |
| 15550 | /* 41574 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15551 | /* 41577 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15552 | /* 41581 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15553 | /* 41585 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15554 | /* 41589 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15555 | /* 41593 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15556 | /* 41596 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15557 | /* 41600 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15558 | /* 41604 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15559 | /* 41606 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15560 | /* 41613 */ // (xor:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15561 | /* 41613 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 15562 | /* 41616 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15563 | /* 41618 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15564 | /* 41620 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15565 | /* 41624 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15566 | /* 41629 */ GIR_RootConstrainSelectedInstOperands, |
| 15567 | /* 41630 */ // GIR_Coverage, 20029, |
| 15568 | /* 41630 */ GIR_EraseRootFromParent_Done, |
| 15569 | /* 41631 */ // Label 999: @41631 |
| 15570 | /* 41631 */ GIM_Try, /*On fail goto*//*Label 1000*/ GIMT_Encode4(41863), // Rule ID 21944 // |
| 15571 | /* 41636 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 15572 | /* 41639 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 15573 | /* 41643 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15574 | /* 41647 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15575 | /* 41651 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15576 | /* 41657 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15577 | /* 41659 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15578 | /* 41661 */ // (xor:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, immAllOnesV:{ *:[v8i16] }) => (EXTRACT_SUBREG:{ *:[v8i16] } (VPTERNLOGQZrri:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v8i16] }:$src, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v8i16] }:$src, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v8i16] }:$src, sub_xmm:{ *:[i32] }), 15:{ *:[i8] }), sub_xmm:{ *:[i32] }) |
| 15579 | /* 41661 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 15580 | /* 41664 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15581 | /* 41668 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15582 | /* 41673 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 15583 | /* 41675 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 15584 | /* 41678 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15585 | /* 41682 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15586 | /* 41687 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 15587 | /* 41690 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15588 | /* 41694 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/11, |
| 15589 | /* 41697 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15590 | /* 41702 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15591 | /* 41707 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 15592 | /* 41712 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 15593 | /* 41715 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15594 | /* 41719 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15595 | /* 41724 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 15596 | /* 41726 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 15597 | /* 41729 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15598 | /* 41733 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15599 | /* 41738 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 15600 | /* 41741 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15601 | /* 41745 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 15602 | /* 41748 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15603 | /* 41753 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15604 | /* 41758 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 15605 | /* 41763 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 15606 | /* 41766 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15607 | /* 41770 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15608 | /* 41775 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 15609 | /* 41777 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 15610 | /* 41780 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15611 | /* 41784 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15612 | /* 41789 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 15613 | /* 41792 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15614 | /* 41796 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 15615 | /* 41799 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15616 | /* 41804 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15617 | /* 41809 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 15618 | /* 41814 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 15619 | /* 41817 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 15620 | /* 41821 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15621 | /* 41826 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15622 | /* 41829 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 15623 | /* 41832 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 15624 | /* 41835 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 15625 | /* 41838 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15626 | /* 41840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15627 | /* 41843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15628 | /* 41845 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 15629 | /* 41852 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 15630 | /* 41857 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15631 | /* 41862 */ // GIR_Coverage, 21944, |
| 15632 | /* 41862 */ GIR_EraseRootFromParent_Done, |
| 15633 | /* 41863 */ // Label 1000: @41863 |
| 15634 | /* 41863 */ GIM_Try, /*On fail goto*//*Label 1001*/ GIMT_Encode4(41909), // Rule ID 21952 // |
| 15635 | /* 41868 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15636 | /* 41871 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15637 | /* 41875 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15638 | /* 41879 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15639 | /* 41883 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15640 | /* 41889 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15641 | /* 41891 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15642 | /* 41893 */ // (xor:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, immAllOnesV:{ *:[v8i16] }) => (VPTERNLOGQZ128rri:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, VR128X:{ *:[v8i16] }:$src, VR128X:{ *:[v8i16] }:$src, 15:{ *:[i8] }) |
| 15643 | /* 41893 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ128rri), |
| 15644 | /* 41896 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15645 | /* 41898 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15646 | /* 41900 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15647 | /* 41902 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15648 | /* 41904 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 15649 | /* 41907 */ GIR_RootConstrainSelectedInstOperands, |
| 15650 | /* 41908 */ // GIR_Coverage, 21952, |
| 15651 | /* 41908 */ GIR_EraseRootFromParent_Done, |
| 15652 | /* 41909 */ // Label 1001: @41909 |
| 15653 | /* 41909 */ GIM_Try, /*On fail goto*//*Label 1002*/ GIMT_Encode4(41936), // Rule ID 18153 // |
| 15654 | /* 41914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 15655 | /* 41917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15656 | /* 41921 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15657 | /* 41925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15658 | /* 41929 */ // (xor:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPXORrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 15659 | /* 41929 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORrr), |
| 15660 | /* 41934 */ GIR_RootConstrainSelectedInstOperands, |
| 15661 | /* 41935 */ // GIR_Coverage, 18153, |
| 15662 | /* 41935 */ GIR_Done, |
| 15663 | /* 41936 */ // Label 1002: @41936 |
| 15664 | /* 41936 */ GIM_Try, /*On fail goto*//*Label 1003*/ GIMT_Encode4(41963), // Rule ID 18177 // |
| 15665 | /* 41941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 15666 | /* 41944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15667 | /* 41948 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15668 | /* 41952 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15669 | /* 41956 */ // (xor:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PXORrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 15670 | /* 41956 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PXORrr), |
| 15671 | /* 41961 */ GIR_RootConstrainSelectedInstOperands, |
| 15672 | /* 41962 */ // GIR_Coverage, 18177, |
| 15673 | /* 41962 */ GIR_Done, |
| 15674 | /* 41963 */ // Label 1003: @41963 |
| 15675 | /* 41963 */ GIM_Try, /*On fail goto*//*Label 1004*/ GIMT_Encode4(41990), // Rule ID 20021 // |
| 15676 | /* 41968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15677 | /* 41971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15678 | /* 41975 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15679 | /* 41979 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15680 | /* 41983 */ // (xor:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPXORQZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 15681 | /* 41983 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rr), |
| 15682 | /* 41988 */ GIR_RootConstrainSelectedInstOperands, |
| 15683 | /* 41989 */ // GIR_Coverage, 20021, |
| 15684 | /* 41989 */ GIR_Done, |
| 15685 | /* 41990 */ // Label 1004: @41990 |
| 15686 | /* 41990 */ GIM_Reject, |
| 15687 | /* 41991 */ // Label 995: @41991 |
| 15688 | /* 41991 */ GIM_Reject, |
| 15689 | /* 41992 */ // Label 861: @41992 |
| 15690 | /* 41992 */ GIM_Try, /*On fail goto*//*Label 1005*/ GIMT_Encode4(42735), |
| 15691 | /* 41997 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 15692 | /* 42000 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 15693 | /* 42003 */ GIM_Try, /*On fail goto*//*Label 1006*/ GIMT_Encode4(42065), // Rule ID 24233 // |
| 15694 | /* 42008 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 15695 | /* 42011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15696 | /* 42015 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15697 | /* 42019 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15698 | /* 42023 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15699 | /* 42026 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15700 | /* 42030 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15701 | /* 42034 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15702 | /* 42038 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15703 | /* 42040 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15704 | /* 42047 */ // (xor:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPXORDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15705 | /* 42047 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZ256rm), |
| 15706 | /* 42050 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15707 | /* 42052 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15708 | /* 42054 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15709 | /* 42058 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15710 | /* 42063 */ GIR_RootConstrainSelectedInstOperands, |
| 15711 | /* 42064 */ // GIR_Coverage, 24233, |
| 15712 | /* 42064 */ GIR_EraseRootFromParent_Done, |
| 15713 | /* 42065 */ // Label 1006: @42065 |
| 15714 | /* 42065 */ GIM_Try, /*On fail goto*//*Label 1007*/ GIMT_Encode4(42127), // Rule ID 25238 // |
| 15715 | /* 42070 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15716 | /* 42073 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15717 | /* 42077 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15718 | /* 42081 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15719 | /* 42085 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15720 | /* 42088 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15721 | /* 42092 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15722 | /* 42096 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15723 | /* 42100 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15724 | /* 42102 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15725 | /* 42109 */ // (xor:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPXORYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15726 | /* 42109 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 15727 | /* 42112 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15728 | /* 42114 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15729 | /* 42116 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15730 | /* 42120 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15731 | /* 42125 */ GIR_RootConstrainSelectedInstOperands, |
| 15732 | /* 42126 */ // GIR_Coverage, 25238, |
| 15733 | /* 42126 */ GIR_EraseRootFromParent_Done, |
| 15734 | /* 42127 */ // Label 1007: @42127 |
| 15735 | /* 42127 */ GIM_Try, /*On fail goto*//*Label 1008*/ GIMT_Encode4(42189), // Rule ID 25249 // |
| 15736 | /* 42132 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15737 | /* 42135 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15738 | /* 42139 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15739 | /* 42143 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15740 | /* 42147 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15741 | /* 42150 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15742 | /* 42154 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15743 | /* 42158 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15744 | /* 42162 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15745 | /* 42164 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15746 | /* 42171 */ // (xor:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VXORPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15747 | /* 42171 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 15748 | /* 42174 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15749 | /* 42176 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15750 | /* 42178 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15751 | /* 42182 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15752 | /* 42187 */ GIR_RootConstrainSelectedInstOperands, |
| 15753 | /* 42188 */ // GIR_Coverage, 25249, |
| 15754 | /* 42188 */ GIR_EraseRootFromParent_Done, |
| 15755 | /* 42189 */ // Label 1008: @42189 |
| 15756 | /* 42189 */ GIM_Try, /*On fail goto*//*Label 1009*/ GIMT_Encode4(42251), // Rule ID 5833 // |
| 15757 | /* 42194 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 15758 | /* 42197 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15759 | /* 42201 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15760 | /* 42205 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15761 | /* 42209 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15762 | /* 42213 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15763 | /* 42216 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15764 | /* 42220 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15765 | /* 42224 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15766 | /* 42226 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15767 | /* 42233 */ // (xor:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15768 | /* 42233 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZ256rm), |
| 15769 | /* 42236 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15770 | /* 42238 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15771 | /* 42240 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15772 | /* 42244 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15773 | /* 42249 */ GIR_RootConstrainSelectedInstOperands, |
| 15774 | /* 42250 */ // GIR_Coverage, 5833, |
| 15775 | /* 42250 */ GIR_EraseRootFromParent_Done, |
| 15776 | /* 42251 */ // Label 1009: @42251 |
| 15777 | /* 42251 */ GIM_Try, /*On fail goto*//*Label 1010*/ GIMT_Encode4(42313), // Rule ID 18110 // |
| 15778 | /* 42256 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15779 | /* 42259 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15780 | /* 42263 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15781 | /* 42267 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15782 | /* 42271 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15783 | /* 42275 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15784 | /* 42278 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15785 | /* 42282 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15786 | /* 42286 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15787 | /* 42288 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15788 | /* 42295 */ // (xor:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15789 | /* 42295 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 15790 | /* 42298 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15791 | /* 42300 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15792 | /* 42302 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15793 | /* 42306 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15794 | /* 42311 */ GIR_RootConstrainSelectedInstOperands, |
| 15795 | /* 42312 */ // GIR_Coverage, 18110, |
| 15796 | /* 42312 */ GIR_EraseRootFromParent_Done, |
| 15797 | /* 42313 */ // Label 1010: @42313 |
| 15798 | /* 42313 */ GIM_Try, /*On fail goto*//*Label 1011*/ GIMT_Encode4(42375), // Rule ID 18140 // |
| 15799 | /* 42318 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15800 | /* 42321 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15801 | /* 42325 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15802 | /* 42329 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15803 | /* 42333 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15804 | /* 42337 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15805 | /* 42340 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15806 | /* 42344 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15807 | /* 42348 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15808 | /* 42350 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15809 | /* 42357 */ // (xor:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VXORPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15810 | /* 42357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 15811 | /* 42360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15812 | /* 42362 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15813 | /* 42364 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15814 | /* 42368 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15815 | /* 42373 */ GIR_RootConstrainSelectedInstOperands, |
| 15816 | /* 42374 */ // GIR_Coverage, 18140, |
| 15817 | /* 42374 */ GIR_EraseRootFromParent_Done, |
| 15818 | /* 42375 */ // Label 1011: @42375 |
| 15819 | /* 42375 */ GIM_Try, /*On fail goto*//*Label 1012*/ GIMT_Encode4(42607), // Rule ID 21949 // |
| 15820 | /* 42380 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 15821 | /* 42383 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15822 | /* 42387 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15823 | /* 42391 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15824 | /* 42395 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15825 | /* 42401 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15826 | /* 42403 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15827 | /* 42405 */ // (xor:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, immAllOnesV:{ *:[v8i32] }) => (EXTRACT_SUBREG:{ *:[v8i32] } (VPTERNLOGQZrri:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v8i32] }:$src, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v8i32] }:$src, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v8i32] }:$src, sub_ymm:{ *:[i32] }), 15:{ *:[i8] }), sub_ymm:{ *:[i32] }) |
| 15828 | /* 42405 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 15829 | /* 42408 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15830 | /* 42412 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15831 | /* 42417 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 15832 | /* 42419 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 15833 | /* 42422 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15834 | /* 42426 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15835 | /* 42431 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 15836 | /* 42434 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15837 | /* 42438 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/12, |
| 15838 | /* 42441 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15839 | /* 42446 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15840 | /* 42451 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15841 | /* 42456 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 15842 | /* 42459 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15843 | /* 42463 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15844 | /* 42468 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 15845 | /* 42470 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 15846 | /* 42473 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15847 | /* 42477 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15848 | /* 42482 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 15849 | /* 42485 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15850 | /* 42489 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 15851 | /* 42492 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15852 | /* 42497 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15853 | /* 42502 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15854 | /* 42507 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 15855 | /* 42510 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15856 | /* 42514 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15857 | /* 42519 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 15858 | /* 42521 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 15859 | /* 42524 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15860 | /* 42528 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15861 | /* 42533 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 15862 | /* 42536 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15863 | /* 42540 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 15864 | /* 42543 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15865 | /* 42548 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15866 | /* 42553 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15867 | /* 42558 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 15868 | /* 42561 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 15869 | /* 42565 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 15870 | /* 42570 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15871 | /* 42573 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 15872 | /* 42576 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 15873 | /* 42579 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 15874 | /* 42582 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15875 | /* 42584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15876 | /* 42587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15877 | /* 42589 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 15878 | /* 42596 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 15879 | /* 42601 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15880 | /* 42606 */ // GIR_Coverage, 21949, |
| 15881 | /* 42606 */ GIR_EraseRootFromParent_Done, |
| 15882 | /* 42607 */ // Label 1012: @42607 |
| 15883 | /* 42607 */ GIM_Try, /*On fail goto*//*Label 1013*/ GIMT_Encode4(42653), // Rule ID 21957 // |
| 15884 | /* 42612 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15885 | /* 42615 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15886 | /* 42619 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15887 | /* 42623 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15888 | /* 42627 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15889 | /* 42633 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15890 | /* 42635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15891 | /* 42637 */ // (xor:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, immAllOnesV:{ *:[v8i32] }) => (VPTERNLOGQZ256rri:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, VR256X:{ *:[v8i32] }:$src, VR256X:{ *:[v8i32] }:$src, 15:{ *:[i8] }) |
| 15892 | /* 42637 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ256rri), |
| 15893 | /* 42640 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15894 | /* 42642 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15895 | /* 42644 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15896 | /* 42646 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15897 | /* 42648 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 15898 | /* 42651 */ GIR_RootConstrainSelectedInstOperands, |
| 15899 | /* 42652 */ // GIR_Coverage, 21957, |
| 15900 | /* 42652 */ GIR_EraseRootFromParent_Done, |
| 15901 | /* 42653 */ // Label 1013: @42653 |
| 15902 | /* 42653 */ GIM_Try, /*On fail goto*//*Label 1014*/ GIMT_Encode4(42680), // Rule ID 5830 // |
| 15903 | /* 42658 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 15904 | /* 42661 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15905 | /* 42665 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15906 | /* 42669 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15907 | /* 42673 */ // (xor:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPXORDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 15908 | /* 42673 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORDZ256rr), |
| 15909 | /* 42678 */ GIR_RootConstrainSelectedInstOperands, |
| 15910 | /* 42679 */ // GIR_Coverage, 5830, |
| 15911 | /* 42679 */ GIR_Done, |
| 15912 | /* 42680 */ // Label 1014: @42680 |
| 15913 | /* 42680 */ GIM_Try, /*On fail goto*//*Label 1015*/ GIMT_Encode4(42707), // Rule ID 18098 // |
| 15914 | /* 42685 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15915 | /* 42688 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15916 | /* 42692 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15917 | /* 42696 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15918 | /* 42700 */ // (xor:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPXORYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 15919 | /* 42700 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORYrr), |
| 15920 | /* 42705 */ GIR_RootConstrainSelectedInstOperands, |
| 15921 | /* 42706 */ // GIR_Coverage, 18098, |
| 15922 | /* 42706 */ GIR_Done, |
| 15923 | /* 42707 */ // Label 1015: @42707 |
| 15924 | /* 42707 */ GIM_Try, /*On fail goto*//*Label 1016*/ GIMT_Encode4(42734), // Rule ID 18124 // |
| 15925 | /* 42712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15926 | /* 42715 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15927 | /* 42719 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15928 | /* 42723 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15929 | /* 42727 */ // (xor:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VXORPSYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 15930 | /* 42727 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VXORPSYrr), |
| 15931 | /* 42732 */ GIR_RootConstrainSelectedInstOperands, |
| 15932 | /* 42733 */ // GIR_Coverage, 18124, |
| 15933 | /* 42733 */ GIR_Done, |
| 15934 | /* 42734 */ // Label 1016: @42734 |
| 15935 | /* 42734 */ GIM_Reject, |
| 15936 | /* 42735 */ // Label 1005: @42735 |
| 15937 | /* 42735 */ GIM_Reject, |
| 15938 | /* 42736 */ // Label 862: @42736 |
| 15939 | /* 42736 */ GIM_Try, /*On fail goto*//*Label 1017*/ GIMT_Encode4(42933), |
| 15940 | /* 42741 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 15941 | /* 42744 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 15942 | /* 42747 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15943 | /* 42751 */ GIM_Try, /*On fail goto*//*Label 1018*/ GIMT_Encode4(42809), // Rule ID 24209 // |
| 15944 | /* 42756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15945 | /* 42759 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15946 | /* 42763 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15947 | /* 42767 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15948 | /* 42770 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15949 | /* 42774 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15950 | /* 42778 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15951 | /* 42782 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15952 | /* 42784 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15953 | /* 42791 */ // (xor:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPXORQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15954 | /* 42791 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 15955 | /* 42794 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15956 | /* 42796 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15957 | /* 42798 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15958 | /* 42802 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15959 | /* 42807 */ GIR_RootConstrainSelectedInstOperands, |
| 15960 | /* 42808 */ // GIR_Coverage, 24209, |
| 15961 | /* 42808 */ GIR_EraseRootFromParent_Done, |
| 15962 | /* 42809 */ // Label 1018: @42809 |
| 15963 | /* 42809 */ GIM_Try, /*On fail goto*//*Label 1019*/ GIMT_Encode4(42867), // Rule ID 5797 // |
| 15964 | /* 42814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15965 | /* 42817 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15966 | /* 42821 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15967 | /* 42825 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15968 | /* 42829 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15969 | /* 42832 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15970 | /* 42836 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15971 | /* 42840 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15972 | /* 42842 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15973 | /* 42849 */ // (xor:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15974 | /* 42849 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 15975 | /* 42852 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15976 | /* 42854 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15977 | /* 42856 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15978 | /* 42860 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15979 | /* 42865 */ GIR_RootConstrainSelectedInstOperands, |
| 15980 | /* 42866 */ // GIR_Coverage, 5797, |
| 15981 | /* 42866 */ GIR_EraseRootFromParent_Done, |
| 15982 | /* 42867 */ // Label 1019: @42867 |
| 15983 | /* 42867 */ GIM_Try, /*On fail goto*//*Label 1020*/ GIMT_Encode4(42909), // Rule ID 21942 // |
| 15984 | /* 42872 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15985 | /* 42875 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15986 | /* 42879 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15987 | /* 42883 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15988 | /* 42889 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15989 | /* 42891 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15990 | /* 42893 */ // (xor:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src, immAllOnesV:{ *:[v8i64] }) => (VPTERNLOGQZrri:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src, VR512:{ *:[v8i64] }:$src, VR512:{ *:[v8i64] }:$src, 15:{ *:[i8] }) |
| 15991 | /* 42893 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 15992 | /* 42896 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15993 | /* 42898 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15994 | /* 42900 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15995 | /* 42902 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15996 | /* 42904 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 15997 | /* 42907 */ GIR_RootConstrainSelectedInstOperands, |
| 15998 | /* 42908 */ // GIR_Coverage, 21942, |
| 15999 | /* 42908 */ GIR_EraseRootFromParent_Done, |
| 16000 | /* 42909 */ // Label 1020: @42909 |
| 16001 | /* 42909 */ GIM_Try, /*On fail goto*//*Label 1021*/ GIMT_Encode4(42932), // Rule ID 5794 // |
| 16002 | /* 42914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16003 | /* 42917 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16004 | /* 42921 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16005 | /* 42925 */ // (xor:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPXORQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 16006 | /* 42925 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZrr), |
| 16007 | /* 42930 */ GIR_RootConstrainSelectedInstOperands, |
| 16008 | /* 42931 */ // GIR_Coverage, 5794, |
| 16009 | /* 42931 */ GIR_Done, |
| 16010 | /* 42932 */ // Label 1021: @42932 |
| 16011 | /* 42932 */ GIM_Reject, |
| 16012 | /* 42933 */ // Label 1017: @42933 |
| 16013 | /* 42933 */ GIM_Reject, |
| 16014 | /* 42934 */ // Label 863: @42934 |
| 16015 | /* 42934 */ GIM_Try, /*On fail goto*//*Label 1022*/ GIMT_Encode4(43191), |
| 16016 | /* 42939 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 16017 | /* 42942 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 16018 | /* 42945 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16019 | /* 42949 */ GIM_Try, /*On fail goto*//*Label 1023*/ GIMT_Encode4(43009), // Rule ID 23686 // |
| 16020 | /* 42954 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16021 | /* 42957 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16022 | /* 42961 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 16023 | /* 42965 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 16024 | /* 42969 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 16025 | /* 42973 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16026 | /* 42978 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 16027 | /* 42982 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16028 | /* 42988 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 16029 | /* 42990 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16030 | /* 42994 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 16031 | /* 42996 */ // (xor:{ *:[v16i1] } (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, immAllOnesV:{ *:[v16i1] }), VK16:{ *:[v16i1] }:$src2) => (KXNORWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 16032 | /* 42996 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 16033 | /* 42999 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16034 | /* 43001 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 16035 | /* 43005 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 16036 | /* 43007 */ GIR_RootConstrainSelectedInstOperands, |
| 16037 | /* 43008 */ // GIR_Coverage, 23686, |
| 16038 | /* 43008 */ GIR_EraseRootFromParent_Done, |
| 16039 | /* 43009 */ // Label 1023: @43009 |
| 16040 | /* 43009 */ GIM_Try, /*On fail goto*//*Label 1024*/ GIMT_Encode4(43072), // Rule ID 4424 // |
| 16041 | /* 43014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16042 | /* 43017 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16043 | /* 43021 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 16044 | /* 43025 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 16045 | /* 43029 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 16046 | /* 43033 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16047 | /* 43038 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16048 | /* 43043 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 16049 | /* 43047 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16050 | /* 43053 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 16051 | /* 43055 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 16052 | /* 43057 */ // (xor:{ *:[v16i1] } (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2), immAllOnesV:{ *:[v16i1] }) => (KXNORWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 16053 | /* 43057 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 16054 | /* 43060 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16055 | /* 43062 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 16056 | /* 43066 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 16057 | /* 43070 */ GIR_RootConstrainSelectedInstOperands, |
| 16058 | /* 43071 */ // GIR_Coverage, 4424, |
| 16059 | /* 43071 */ GIR_EraseRootFromParent_Done, |
| 16060 | /* 43072 */ // Label 1024: @43072 |
| 16061 | /* 43072 */ GIM_Try, /*On fail goto*//*Label 1025*/ GIMT_Encode4(43132), // Rule ID 23687 // |
| 16062 | /* 43077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16063 | /* 43080 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16064 | /* 43084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16065 | /* 43088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 16066 | /* 43092 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 16067 | /* 43096 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 16068 | /* 43100 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16069 | /* 43105 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 16070 | /* 43109 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16071 | /* 43115 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 16072 | /* 43117 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 16073 | /* 43119 */ // (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src2, (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, immAllOnesV:{ *:[v16i1] })) => (KXNORWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 16074 | /* 43119 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 16075 | /* 43122 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16076 | /* 43124 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 16077 | /* 43128 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 16078 | /* 43130 */ GIR_RootConstrainSelectedInstOperands, |
| 16079 | /* 43131 */ // GIR_Coverage, 23687, |
| 16080 | /* 43131 */ GIR_EraseRootFromParent_Done, |
| 16081 | /* 43132 */ // Label 1025: @43132 |
| 16082 | /* 43132 */ GIM_Try, /*On fail goto*//*Label 1026*/ GIMT_Encode4(43167), // Rule ID 4412 // |
| 16083 | /* 43137 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16084 | /* 43140 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16085 | /* 43144 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16086 | /* 43148 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16087 | /* 43154 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16088 | /* 43156 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16089 | /* 43158 */ // (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src, immAllOnesV:{ *:[v16i1] }) => (KNOTWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src) |
| 16090 | /* 43158 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 16091 | /* 43161 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16092 | /* 43163 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16093 | /* 43165 */ GIR_RootConstrainSelectedInstOperands, |
| 16094 | /* 43166 */ // GIR_Coverage, 4412, |
| 16095 | /* 43166 */ GIR_EraseRootFromParent_Done, |
| 16096 | /* 43167 */ // Label 1026: @43167 |
| 16097 | /* 43167 */ GIM_Try, /*On fail goto*//*Label 1027*/ GIMT_Encode4(43190), // Rule ID 4428 // |
| 16098 | /* 43172 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16099 | /* 43175 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16100 | /* 43179 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16101 | /* 43183 */ // (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) => (KXORWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 16102 | /* 43183 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KXORWkk), |
| 16103 | /* 43188 */ GIR_RootConstrainSelectedInstOperands, |
| 16104 | /* 43189 */ // GIR_Coverage, 4428, |
| 16105 | /* 43189 */ GIR_Done, |
| 16106 | /* 43190 */ // Label 1027: @43190 |
| 16107 | /* 43190 */ GIM_Reject, |
| 16108 | /* 43191 */ // Label 1022: @43191 |
| 16109 | /* 43191 */ GIM_Reject, |
| 16110 | /* 43192 */ // Label 864: @43192 |
| 16111 | /* 43192 */ GIM_Try, /*On fail goto*//*Label 1028*/ GIMT_Encode4(43811), |
| 16112 | /* 43197 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 16113 | /* 43200 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 16114 | /* 43203 */ GIM_Try, /*On fail goto*//*Label 1029*/ GIMT_Encode4(43265), // Rule ID 25257 // |
| 16115 | /* 43208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 16116 | /* 43211 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16117 | /* 43215 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16118 | /* 43219 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16119 | /* 43223 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16120 | /* 43226 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16121 | /* 43230 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16122 | /* 43234 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16123 | /* 43238 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16124 | /* 43240 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16125 | /* 43247 */ // (xor:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPXORrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16126 | /* 43247 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 16127 | /* 43250 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16128 | /* 43252 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16129 | /* 43254 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16130 | /* 43258 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16131 | /* 43263 */ GIR_RootConstrainSelectedInstOperands, |
| 16132 | /* 43264 */ // GIR_Coverage, 25257, |
| 16133 | /* 43264 */ GIR_EraseRootFromParent_Done, |
| 16134 | /* 43265 */ // Label 1029: @43265 |
| 16135 | /* 43265 */ GIM_Try, /*On fail goto*//*Label 1030*/ GIMT_Encode4(43327), // Rule ID 25436 // |
| 16136 | /* 43270 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16137 | /* 43273 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16138 | /* 43277 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16139 | /* 43281 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16140 | /* 43285 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16141 | /* 43288 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16142 | /* 43292 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16143 | /* 43296 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16144 | /* 43300 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16145 | /* 43302 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16146 | /* 43309 */ // (xor:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPXORQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16147 | /* 43309 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 16148 | /* 43312 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16149 | /* 43314 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16150 | /* 43316 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16151 | /* 43320 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16152 | /* 43325 */ GIR_RootConstrainSelectedInstOperands, |
| 16153 | /* 43326 */ // GIR_Coverage, 25436, |
| 16154 | /* 43326 */ GIR_EraseRootFromParent_Done, |
| 16155 | /* 43327 */ // Label 1030: @43327 |
| 16156 | /* 43327 */ GIM_Try, /*On fail goto*//*Label 1031*/ GIMT_Encode4(43389), // Rule ID 18164 // |
| 16157 | /* 43332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 16158 | /* 43335 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16159 | /* 43339 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16160 | /* 43343 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16161 | /* 43347 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16162 | /* 43351 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16163 | /* 43354 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16164 | /* 43358 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16165 | /* 43362 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16166 | /* 43364 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16167 | /* 43371 */ // (xor:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16168 | /* 43371 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 16169 | /* 43374 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16170 | /* 43376 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16171 | /* 43378 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16172 | /* 43382 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16173 | /* 43387 */ GIR_RootConstrainSelectedInstOperands, |
| 16174 | /* 43388 */ // GIR_Coverage, 18164, |
| 16175 | /* 43388 */ GIR_EraseRootFromParent_Done, |
| 16176 | /* 43389 */ // Label 1031: @43389 |
| 16177 | /* 43389 */ GIM_Try, /*On fail goto*//*Label 1032*/ GIMT_Encode4(43451), // Rule ID 20028 // |
| 16178 | /* 43394 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16179 | /* 43397 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16180 | /* 43401 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16181 | /* 43405 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16182 | /* 43409 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16183 | /* 43413 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16184 | /* 43416 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16185 | /* 43420 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16186 | /* 43424 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16187 | /* 43426 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16188 | /* 43433 */ // (xor:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16189 | /* 43433 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 16190 | /* 43436 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16191 | /* 43438 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16192 | /* 43440 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16193 | /* 43444 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16194 | /* 43449 */ GIR_RootConstrainSelectedInstOperands, |
| 16195 | /* 43450 */ // GIR_Coverage, 20028, |
| 16196 | /* 43450 */ GIR_EraseRootFromParent_Done, |
| 16197 | /* 43451 */ // Label 1032: @43451 |
| 16198 | /* 43451 */ GIM_Try, /*On fail goto*//*Label 1033*/ GIMT_Encode4(43683), // Rule ID 21943 // |
| 16199 | /* 43456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 16200 | /* 43459 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 16201 | /* 43463 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16202 | /* 43467 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16203 | /* 43471 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16204 | /* 43477 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16205 | /* 43479 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16206 | /* 43481 */ // (xor:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, immAllOnesV:{ *:[v16i8] }) => (EXTRACT_SUBREG:{ *:[v16i8] } (VPTERNLOGQZrri:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v16i8] }:$src, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v16i8] }:$src, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v16i8] }:$src, sub_xmm:{ *:[i32] }), 15:{ *:[i8] }), sub_xmm:{ *:[i32] }) |
| 16207 | /* 43481 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 16208 | /* 43484 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16209 | /* 43488 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16210 | /* 43493 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 16211 | /* 43495 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 16212 | /* 43498 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16213 | /* 43502 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16214 | /* 43507 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 16215 | /* 43510 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16216 | /* 43514 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/11, |
| 16217 | /* 43517 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 16218 | /* 43522 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16219 | /* 43527 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 16220 | /* 43532 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 16221 | /* 43535 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16222 | /* 43539 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16223 | /* 43544 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 16224 | /* 43546 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 16225 | /* 43549 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16226 | /* 43553 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16227 | /* 43558 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 16228 | /* 43561 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16229 | /* 43565 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 16230 | /* 43568 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 16231 | /* 43573 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16232 | /* 43578 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 16233 | /* 43583 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 16234 | /* 43586 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16235 | /* 43590 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16236 | /* 43595 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 16237 | /* 43597 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 16238 | /* 43600 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16239 | /* 43604 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16240 | /* 43609 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 16241 | /* 43612 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16242 | /* 43616 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 16243 | /* 43619 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 16244 | /* 43624 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16245 | /* 43629 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 16246 | /* 43634 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 16247 | /* 43637 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 16248 | /* 43641 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16249 | /* 43646 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 16250 | /* 43649 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 16251 | /* 43652 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 16252 | /* 43655 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 16253 | /* 43658 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16254 | /* 43660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16255 | /* 43663 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16256 | /* 43665 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 16257 | /* 43672 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 16258 | /* 43677 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16259 | /* 43682 */ // GIR_Coverage, 21943, |
| 16260 | /* 43682 */ GIR_EraseRootFromParent_Done, |
| 16261 | /* 43683 */ // Label 1033: @43683 |
| 16262 | /* 43683 */ GIM_Try, /*On fail goto*//*Label 1034*/ GIMT_Encode4(43729), // Rule ID 21951 // |
| 16263 | /* 43688 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16264 | /* 43691 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16265 | /* 43695 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16266 | /* 43699 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16267 | /* 43703 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16268 | /* 43709 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16269 | /* 43711 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16270 | /* 43713 */ // (xor:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, immAllOnesV:{ *:[v16i8] }) => (VPTERNLOGQZ128rri:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, VR128X:{ *:[v16i8] }:$src, VR128X:{ *:[v16i8] }:$src, 15:{ *:[i8] }) |
| 16271 | /* 43713 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ128rri), |
| 16272 | /* 43716 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16273 | /* 43718 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16274 | /* 43720 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16275 | /* 43722 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16276 | /* 43724 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 16277 | /* 43727 */ GIR_RootConstrainSelectedInstOperands, |
| 16278 | /* 43728 */ // GIR_Coverage, 21951, |
| 16279 | /* 43728 */ GIR_EraseRootFromParent_Done, |
| 16280 | /* 43729 */ // Label 1034: @43729 |
| 16281 | /* 43729 */ GIM_Try, /*On fail goto*//*Label 1035*/ GIMT_Encode4(43756), // Rule ID 18152 // |
| 16282 | /* 43734 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 16283 | /* 43737 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16284 | /* 43741 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16285 | /* 43745 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16286 | /* 43749 */ // (xor:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPXORrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 16287 | /* 43749 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORrr), |
| 16288 | /* 43754 */ GIR_RootConstrainSelectedInstOperands, |
| 16289 | /* 43755 */ // GIR_Coverage, 18152, |
| 16290 | /* 43755 */ GIR_Done, |
| 16291 | /* 43756 */ // Label 1035: @43756 |
| 16292 | /* 43756 */ GIM_Try, /*On fail goto*//*Label 1036*/ GIMT_Encode4(43783), // Rule ID 18176 // |
| 16293 | /* 43761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 16294 | /* 43764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16295 | /* 43768 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16296 | /* 43772 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16297 | /* 43776 */ // (xor:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PXORrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 16298 | /* 43776 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PXORrr), |
| 16299 | /* 43781 */ GIR_RootConstrainSelectedInstOperands, |
| 16300 | /* 43782 */ // GIR_Coverage, 18176, |
| 16301 | /* 43782 */ GIR_Done, |
| 16302 | /* 43783 */ // Label 1036: @43783 |
| 16303 | /* 43783 */ GIM_Try, /*On fail goto*//*Label 1037*/ GIMT_Encode4(43810), // Rule ID 20020 // |
| 16304 | /* 43788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16305 | /* 43791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16306 | /* 43795 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16307 | /* 43799 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16308 | /* 43803 */ // (xor:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPXORQZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 16309 | /* 43803 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rr), |
| 16310 | /* 43808 */ GIR_RootConstrainSelectedInstOperands, |
| 16311 | /* 43809 */ // GIR_Coverage, 20020, |
| 16312 | /* 43809 */ GIR_Done, |
| 16313 | /* 43810 */ // Label 1037: @43810 |
| 16314 | /* 43810 */ GIM_Reject, |
| 16315 | /* 43811 */ // Label 1028: @43811 |
| 16316 | /* 43811 */ GIM_Reject, |
| 16317 | /* 43812 */ // Label 865: @43812 |
| 16318 | /* 43812 */ GIM_Try, /*On fail goto*//*Label 1038*/ GIMT_Encode4(44555), |
| 16319 | /* 43817 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 16320 | /* 43820 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 16321 | /* 43823 */ GIM_Try, /*On fail goto*//*Label 1039*/ GIMT_Encode4(43885), // Rule ID 25237 // |
| 16322 | /* 43828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 16323 | /* 43831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16324 | /* 43835 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16325 | /* 43839 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16326 | /* 43843 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16327 | /* 43846 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16328 | /* 43850 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16329 | /* 43854 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16330 | /* 43858 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16331 | /* 43860 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16332 | /* 43867 */ // (xor:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPXORYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16333 | /* 43867 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 16334 | /* 43870 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16335 | /* 43872 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16336 | /* 43874 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16337 | /* 43878 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16338 | /* 43883 */ GIR_RootConstrainSelectedInstOperands, |
| 16339 | /* 43884 */ // GIR_Coverage, 25237, |
| 16340 | /* 43884 */ GIR_EraseRootFromParent_Done, |
| 16341 | /* 43885 */ // Label 1039: @43885 |
| 16342 | /* 43885 */ GIM_Try, /*On fail goto*//*Label 1040*/ GIMT_Encode4(43947), // Rule ID 25248 // |
| 16343 | /* 43890 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 16344 | /* 43893 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16345 | /* 43897 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16346 | /* 43901 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16347 | /* 43905 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16348 | /* 43908 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16349 | /* 43912 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16350 | /* 43916 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16351 | /* 43920 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16352 | /* 43922 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16353 | /* 43929 */ // (xor:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VXORPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16354 | /* 43929 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 16355 | /* 43932 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16356 | /* 43934 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16357 | /* 43936 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16358 | /* 43940 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16359 | /* 43945 */ GIR_RootConstrainSelectedInstOperands, |
| 16360 | /* 43946 */ // GIR_Coverage, 25248, |
| 16361 | /* 43946 */ GIR_EraseRootFromParent_Done, |
| 16362 | /* 43947 */ // Label 1040: @43947 |
| 16363 | /* 43947 */ GIM_Try, /*On fail goto*//*Label 1041*/ GIMT_Encode4(44009), // Rule ID 25443 // |
| 16364 | /* 43952 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16365 | /* 43955 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16366 | /* 43959 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16367 | /* 43963 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16368 | /* 43967 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16369 | /* 43970 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16370 | /* 43974 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16371 | /* 43978 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16372 | /* 43982 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16373 | /* 43984 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16374 | /* 43991 */ // (xor:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPXORQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16375 | /* 43991 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 16376 | /* 43994 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16377 | /* 43996 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16378 | /* 43998 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16379 | /* 44002 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16380 | /* 44007 */ GIR_RootConstrainSelectedInstOperands, |
| 16381 | /* 44008 */ // GIR_Coverage, 25443, |
| 16382 | /* 44008 */ GIR_EraseRootFromParent_Done, |
| 16383 | /* 44009 */ // Label 1041: @44009 |
| 16384 | /* 44009 */ GIM_Try, /*On fail goto*//*Label 1042*/ GIMT_Encode4(44071), // Rule ID 18109 // |
| 16385 | /* 44014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 16386 | /* 44017 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16387 | /* 44021 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16388 | /* 44025 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16389 | /* 44029 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16390 | /* 44033 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16391 | /* 44036 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16392 | /* 44040 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16393 | /* 44044 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16394 | /* 44046 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16395 | /* 44053 */ // (xor:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16396 | /* 44053 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 16397 | /* 44056 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16398 | /* 44058 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16399 | /* 44060 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16400 | /* 44064 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16401 | /* 44069 */ GIR_RootConstrainSelectedInstOperands, |
| 16402 | /* 44070 */ // GIR_Coverage, 18109, |
| 16403 | /* 44070 */ GIR_EraseRootFromParent_Done, |
| 16404 | /* 44071 */ // Label 1042: @44071 |
| 16405 | /* 44071 */ GIM_Try, /*On fail goto*//*Label 1043*/ GIMT_Encode4(44133), // Rule ID 18139 // |
| 16406 | /* 44076 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 16407 | /* 44079 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16408 | /* 44083 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16409 | /* 44087 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16410 | /* 44091 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16411 | /* 44095 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16412 | /* 44098 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16413 | /* 44102 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16414 | /* 44106 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16415 | /* 44108 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16416 | /* 44115 */ // (xor:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VXORPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16417 | /* 44115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 16418 | /* 44118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16419 | /* 44120 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16420 | /* 44122 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16421 | /* 44126 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16422 | /* 44131 */ GIR_RootConstrainSelectedInstOperands, |
| 16423 | /* 44132 */ // GIR_Coverage, 18139, |
| 16424 | /* 44132 */ GIR_EraseRootFromParent_Done, |
| 16425 | /* 44133 */ // Label 1043: @44133 |
| 16426 | /* 44133 */ GIM_Try, /*On fail goto*//*Label 1044*/ GIMT_Encode4(44195), // Rule ID 20045 // |
| 16427 | /* 44138 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16428 | /* 44141 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16429 | /* 44145 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16430 | /* 44149 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16431 | /* 44153 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16432 | /* 44157 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16433 | /* 44160 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16434 | /* 44164 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16435 | /* 44168 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16436 | /* 44170 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16437 | /* 44177 */ // (xor:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16438 | /* 44177 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 16439 | /* 44180 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16440 | /* 44182 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16441 | /* 44184 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16442 | /* 44188 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16443 | /* 44193 */ GIR_RootConstrainSelectedInstOperands, |
| 16444 | /* 44194 */ // GIR_Coverage, 20045, |
| 16445 | /* 44194 */ GIR_EraseRootFromParent_Done, |
| 16446 | /* 44195 */ // Label 1044: @44195 |
| 16447 | /* 44195 */ GIM_Try, /*On fail goto*//*Label 1045*/ GIMT_Encode4(44427), // Rule ID 21948 // |
| 16448 | /* 44200 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 16449 | /* 44203 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16450 | /* 44207 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16451 | /* 44211 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16452 | /* 44215 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16453 | /* 44221 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16454 | /* 44223 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16455 | /* 44225 */ // (xor:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, immAllOnesV:{ *:[v16i16] }) => (EXTRACT_SUBREG:{ *:[v16i16] } (VPTERNLOGQZrri:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v16i16] }:$src, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v16i16] }:$src, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v16i16] }:$src, sub_ymm:{ *:[i32] }), 15:{ *:[i8] }), sub_ymm:{ *:[i32] }) |
| 16456 | /* 44225 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 16457 | /* 44228 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16458 | /* 44232 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16459 | /* 44237 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 16460 | /* 44239 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 16461 | /* 44242 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16462 | /* 44246 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16463 | /* 44251 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 16464 | /* 44254 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16465 | /* 44258 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/12, |
| 16466 | /* 44261 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 16467 | /* 44266 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16468 | /* 44271 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 16469 | /* 44276 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 16470 | /* 44279 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16471 | /* 44283 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16472 | /* 44288 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 16473 | /* 44290 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 16474 | /* 44293 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16475 | /* 44297 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16476 | /* 44302 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 16477 | /* 44305 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16478 | /* 44309 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 16479 | /* 44312 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 16480 | /* 44317 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16481 | /* 44322 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 16482 | /* 44327 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 16483 | /* 44330 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16484 | /* 44334 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16485 | /* 44339 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 16486 | /* 44341 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 16487 | /* 44344 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16488 | /* 44348 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16489 | /* 44353 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 16490 | /* 44356 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16491 | /* 44360 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 16492 | /* 44363 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 16493 | /* 44368 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16494 | /* 44373 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 16495 | /* 44378 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 16496 | /* 44381 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 16497 | /* 44385 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16498 | /* 44390 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 16499 | /* 44393 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 16500 | /* 44396 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 16501 | /* 44399 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 16502 | /* 44402 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16503 | /* 44404 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16504 | /* 44407 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16505 | /* 44409 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 16506 | /* 44416 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 16507 | /* 44421 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16508 | /* 44426 */ // GIR_Coverage, 21948, |
| 16509 | /* 44426 */ GIR_EraseRootFromParent_Done, |
| 16510 | /* 44427 */ // Label 1045: @44427 |
| 16511 | /* 44427 */ GIM_Try, /*On fail goto*//*Label 1046*/ GIMT_Encode4(44473), // Rule ID 21956 // |
| 16512 | /* 44432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16513 | /* 44435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16514 | /* 44439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16515 | /* 44443 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16516 | /* 44447 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16517 | /* 44453 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16518 | /* 44455 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16519 | /* 44457 */ // (xor:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, immAllOnesV:{ *:[v16i16] }) => (VPTERNLOGQZ256rri:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, VR256X:{ *:[v16i16] }:$src, VR256X:{ *:[v16i16] }:$src, 15:{ *:[i8] }) |
| 16520 | /* 44457 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ256rri), |
| 16521 | /* 44460 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16522 | /* 44462 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16523 | /* 44464 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16524 | /* 44466 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16525 | /* 44468 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 16526 | /* 44471 */ GIR_RootConstrainSelectedInstOperands, |
| 16527 | /* 44472 */ // GIR_Coverage, 21956, |
| 16528 | /* 44472 */ GIR_EraseRootFromParent_Done, |
| 16529 | /* 44473 */ // Label 1046: @44473 |
| 16530 | /* 44473 */ GIM_Try, /*On fail goto*//*Label 1047*/ GIMT_Encode4(44500), // Rule ID 18097 // |
| 16531 | /* 44478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 16532 | /* 44481 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16533 | /* 44485 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16534 | /* 44489 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16535 | /* 44493 */ // (xor:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPXORYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 16536 | /* 44493 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORYrr), |
| 16537 | /* 44498 */ GIR_RootConstrainSelectedInstOperands, |
| 16538 | /* 44499 */ // GIR_Coverage, 18097, |
| 16539 | /* 44499 */ GIR_Done, |
| 16540 | /* 44500 */ // Label 1047: @44500 |
| 16541 | /* 44500 */ GIM_Try, /*On fail goto*//*Label 1048*/ GIMT_Encode4(44527), // Rule ID 18123 // |
| 16542 | /* 44505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 16543 | /* 44508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16544 | /* 44512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16545 | /* 44516 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16546 | /* 44520 */ // (xor:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VXORPSYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 16547 | /* 44520 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VXORPSYrr), |
| 16548 | /* 44525 */ GIR_RootConstrainSelectedInstOperands, |
| 16549 | /* 44526 */ // GIR_Coverage, 18123, |
| 16550 | /* 44526 */ GIR_Done, |
| 16551 | /* 44527 */ // Label 1048: @44527 |
| 16552 | /* 44527 */ GIM_Try, /*On fail goto*//*Label 1049*/ GIMT_Encode4(44554), // Rule ID 20037 // |
| 16553 | /* 44532 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16554 | /* 44535 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16555 | /* 44539 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16556 | /* 44543 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16557 | /* 44547 */ // (xor:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPXORQZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 16558 | /* 44547 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rr), |
| 16559 | /* 44552 */ GIR_RootConstrainSelectedInstOperands, |
| 16560 | /* 44553 */ // GIR_Coverage, 20037, |
| 16561 | /* 44553 */ GIR_Done, |
| 16562 | /* 44554 */ // Label 1049: @44554 |
| 16563 | /* 44554 */ GIM_Reject, |
| 16564 | /* 44555 */ // Label 1038: @44555 |
| 16565 | /* 44555 */ GIM_Reject, |
| 16566 | /* 44556 */ // Label 866: @44556 |
| 16567 | /* 44556 */ GIM_Try, /*On fail goto*//*Label 1050*/ GIMT_Encode4(44753), |
| 16568 | /* 44561 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 16569 | /* 44564 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 16570 | /* 44567 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16571 | /* 44571 */ GIM_Try, /*On fail goto*//*Label 1051*/ GIMT_Encode4(44629), // Rule ID 24227 // |
| 16572 | /* 44576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16573 | /* 44579 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16574 | /* 44583 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16575 | /* 44587 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16576 | /* 44590 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16577 | /* 44594 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16578 | /* 44598 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16579 | /* 44602 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16580 | /* 44604 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16581 | /* 44611 */ // (xor:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPXORDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16582 | /* 44611 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZrm), |
| 16583 | /* 44614 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16584 | /* 44616 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16585 | /* 44618 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16586 | /* 44622 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16587 | /* 44627 */ GIR_RootConstrainSelectedInstOperands, |
| 16588 | /* 44628 */ // GIR_Coverage, 24227, |
| 16589 | /* 44628 */ GIR_EraseRootFromParent_Done, |
| 16590 | /* 44629 */ // Label 1051: @44629 |
| 16591 | /* 44629 */ GIM_Try, /*On fail goto*//*Label 1052*/ GIMT_Encode4(44687), // Rule ID 5824 // |
| 16592 | /* 44634 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16593 | /* 44637 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16594 | /* 44641 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16595 | /* 44645 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16596 | /* 44649 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16597 | /* 44652 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16598 | /* 44656 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16599 | /* 44660 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16600 | /* 44662 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16601 | /* 44669 */ // (xor:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16602 | /* 44669 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZrm), |
| 16603 | /* 44672 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16604 | /* 44674 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16605 | /* 44676 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16606 | /* 44680 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16607 | /* 44685 */ GIR_RootConstrainSelectedInstOperands, |
| 16608 | /* 44686 */ // GIR_Coverage, 5824, |
| 16609 | /* 44686 */ GIR_EraseRootFromParent_Done, |
| 16610 | /* 44687 */ // Label 1052: @44687 |
| 16611 | /* 44687 */ GIM_Try, /*On fail goto*//*Label 1053*/ GIMT_Encode4(44729), // Rule ID 21941 // |
| 16612 | /* 44692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16613 | /* 44695 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16614 | /* 44699 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16615 | /* 44703 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16616 | /* 44709 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16617 | /* 44711 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16618 | /* 44713 */ // (xor:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src, immAllOnesV:{ *:[v16i32] }) => (VPTERNLOGQZrri:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src, VR512:{ *:[v16i32] }:$src, VR512:{ *:[v16i32] }:$src, 15:{ *:[i8] }) |
| 16619 | /* 44713 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 16620 | /* 44716 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16621 | /* 44718 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16622 | /* 44720 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16623 | /* 44722 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16624 | /* 44724 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 16625 | /* 44727 */ GIR_RootConstrainSelectedInstOperands, |
| 16626 | /* 44728 */ // GIR_Coverage, 21941, |
| 16627 | /* 44728 */ GIR_EraseRootFromParent_Done, |
| 16628 | /* 44729 */ // Label 1053: @44729 |
| 16629 | /* 44729 */ GIM_Try, /*On fail goto*//*Label 1054*/ GIMT_Encode4(44752), // Rule ID 5821 // |
| 16630 | /* 44734 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16631 | /* 44737 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16632 | /* 44741 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16633 | /* 44745 */ // (xor:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPXORDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 16634 | /* 44745 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORDZrr), |
| 16635 | /* 44750 */ GIR_RootConstrainSelectedInstOperands, |
| 16636 | /* 44751 */ // GIR_Coverage, 5821, |
| 16637 | /* 44751 */ GIR_Done, |
| 16638 | /* 44752 */ // Label 1054: @44752 |
| 16639 | /* 44752 */ GIM_Reject, |
| 16640 | /* 44753 */ // Label 1050: @44753 |
| 16641 | /* 44753 */ GIM_Reject, |
| 16642 | /* 44754 */ // Label 867: @44754 |
| 16643 | /* 44754 */ GIM_Try, /*On fail goto*//*Label 1055*/ GIMT_Encode4(45011), |
| 16644 | /* 44759 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 16645 | /* 44762 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 16646 | /* 44765 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16647 | /* 44769 */ GIM_Try, /*On fail goto*//*Label 1056*/ GIMT_Encode4(44829), // Rule ID 23688 // |
| 16648 | /* 44774 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16649 | /* 44777 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16650 | /* 44781 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 16651 | /* 44785 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v32s1, |
| 16652 | /* 44789 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v32s1, |
| 16653 | /* 44793 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16654 | /* 44798 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 16655 | /* 44802 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16656 | /* 44808 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 16657 | /* 44810 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16658 | /* 44814 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 16659 | /* 44816 */ // (xor:{ *:[v32i1] } (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, immAllOnesV:{ *:[v32i1] }), VK32:{ *:[v32i1] }:$src2) => (KXNORDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 16660 | /* 44816 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORDkk), |
| 16661 | /* 44819 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16662 | /* 44821 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 16663 | /* 44825 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 16664 | /* 44827 */ GIR_RootConstrainSelectedInstOperands, |
| 16665 | /* 44828 */ // GIR_Coverage, 23688, |
| 16666 | /* 44828 */ GIR_EraseRootFromParent_Done, |
| 16667 | /* 44829 */ // Label 1056: @44829 |
| 16668 | /* 44829 */ GIM_Try, /*On fail goto*//*Label 1057*/ GIMT_Encode4(44892), // Rule ID 4425 // |
| 16669 | /* 44834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16670 | /* 44837 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16671 | /* 44841 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 16672 | /* 44845 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v32s1, |
| 16673 | /* 44849 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v32s1, |
| 16674 | /* 44853 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16675 | /* 44858 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16676 | /* 44863 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 16677 | /* 44867 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16678 | /* 44873 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 16679 | /* 44875 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 16680 | /* 44877 */ // (xor:{ *:[v32i1] } (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2), immAllOnesV:{ *:[v32i1] }) => (KXNORDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 16681 | /* 44877 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORDkk), |
| 16682 | /* 44880 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16683 | /* 44882 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 16684 | /* 44886 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 16685 | /* 44890 */ GIR_RootConstrainSelectedInstOperands, |
| 16686 | /* 44891 */ // GIR_Coverage, 4425, |
| 16687 | /* 44891 */ GIR_EraseRootFromParent_Done, |
| 16688 | /* 44892 */ // Label 1057: @44892 |
| 16689 | /* 44892 */ GIM_Try, /*On fail goto*//*Label 1058*/ GIMT_Encode4(44952), // Rule ID 23689 // |
| 16690 | /* 44897 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16691 | /* 44900 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16692 | /* 44904 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16693 | /* 44908 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 16694 | /* 44912 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v32s1, |
| 16695 | /* 44916 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v32s1, |
| 16696 | /* 44920 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16697 | /* 44925 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 16698 | /* 44929 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16699 | /* 44935 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 16700 | /* 44937 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 16701 | /* 44939 */ // (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src2, (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, immAllOnesV:{ *:[v32i1] })) => (KXNORDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 16702 | /* 44939 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORDkk), |
| 16703 | /* 44942 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16704 | /* 44944 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 16705 | /* 44948 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 16706 | /* 44950 */ GIR_RootConstrainSelectedInstOperands, |
| 16707 | /* 44951 */ // GIR_Coverage, 23689, |
| 16708 | /* 44951 */ GIR_EraseRootFromParent_Done, |
| 16709 | /* 44952 */ // Label 1058: @44952 |
| 16710 | /* 44952 */ GIM_Try, /*On fail goto*//*Label 1059*/ GIMT_Encode4(44987), // Rule ID 4413 // |
| 16711 | /* 44957 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16712 | /* 44960 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16713 | /* 44964 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16714 | /* 44968 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16715 | /* 44974 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16716 | /* 44976 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16717 | /* 44978 */ // (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src, immAllOnesV:{ *:[v32i1] }) => (KNOTDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src) |
| 16718 | /* 44978 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KNOTDkk), |
| 16719 | /* 44981 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16720 | /* 44983 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16721 | /* 44985 */ GIR_RootConstrainSelectedInstOperands, |
| 16722 | /* 44986 */ // GIR_Coverage, 4413, |
| 16723 | /* 44986 */ GIR_EraseRootFromParent_Done, |
| 16724 | /* 44987 */ // Label 1059: @44987 |
| 16725 | /* 44987 */ GIM_Try, /*On fail goto*//*Label 1060*/ GIMT_Encode4(45010), // Rule ID 4429 // |
| 16726 | /* 44992 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16727 | /* 44995 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16728 | /* 44999 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16729 | /* 45003 */ // (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) => (KXORDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 16730 | /* 45003 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KXORDkk), |
| 16731 | /* 45008 */ GIR_RootConstrainSelectedInstOperands, |
| 16732 | /* 45009 */ // GIR_Coverage, 4429, |
| 16733 | /* 45009 */ GIR_Done, |
| 16734 | /* 45010 */ // Label 1060: @45010 |
| 16735 | /* 45010 */ GIM_Reject, |
| 16736 | /* 45011 */ // Label 1055: @45011 |
| 16737 | /* 45011 */ GIM_Reject, |
| 16738 | /* 45012 */ // Label 868: @45012 |
| 16739 | /* 45012 */ GIM_Try, /*On fail goto*//*Label 1061*/ GIMT_Encode4(45755), |
| 16740 | /* 45017 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 16741 | /* 45020 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 16742 | /* 45023 */ GIM_Try, /*On fail goto*//*Label 1062*/ GIMT_Encode4(45085), // Rule ID 25236 // |
| 16743 | /* 45028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 16744 | /* 45031 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16745 | /* 45035 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16746 | /* 45039 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16747 | /* 45043 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16748 | /* 45046 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16749 | /* 45050 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16750 | /* 45054 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16751 | /* 45058 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16752 | /* 45060 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16753 | /* 45067 */ // (xor:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPXORYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16754 | /* 45067 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 16755 | /* 45070 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16756 | /* 45072 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16757 | /* 45074 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16758 | /* 45078 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16759 | /* 45083 */ GIR_RootConstrainSelectedInstOperands, |
| 16760 | /* 45084 */ // GIR_Coverage, 25236, |
| 16761 | /* 45084 */ GIR_EraseRootFromParent_Done, |
| 16762 | /* 45085 */ // Label 1062: @45085 |
| 16763 | /* 45085 */ GIM_Try, /*On fail goto*//*Label 1063*/ GIMT_Encode4(45147), // Rule ID 25247 // |
| 16764 | /* 45090 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 16765 | /* 45093 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16766 | /* 45097 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16767 | /* 45101 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16768 | /* 45105 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16769 | /* 45108 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16770 | /* 45112 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16771 | /* 45116 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16772 | /* 45120 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16773 | /* 45122 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16774 | /* 45129 */ // (xor:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VXORPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16775 | /* 45129 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 16776 | /* 45132 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16777 | /* 45134 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16778 | /* 45136 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16779 | /* 45140 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16780 | /* 45145 */ GIR_RootConstrainSelectedInstOperands, |
| 16781 | /* 45146 */ // GIR_Coverage, 25247, |
| 16782 | /* 45146 */ GIR_EraseRootFromParent_Done, |
| 16783 | /* 45147 */ // Label 1063: @45147 |
| 16784 | /* 45147 */ GIM_Try, /*On fail goto*//*Label 1064*/ GIMT_Encode4(45209), // Rule ID 25442 // |
| 16785 | /* 45152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16786 | /* 45155 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16787 | /* 45159 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16788 | /* 45163 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16789 | /* 45167 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16790 | /* 45170 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16791 | /* 45174 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16792 | /* 45178 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16793 | /* 45182 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16794 | /* 45184 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16795 | /* 45191 */ // (xor:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPXORQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16796 | /* 45191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 16797 | /* 45194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16798 | /* 45196 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16799 | /* 45198 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16800 | /* 45202 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16801 | /* 45207 */ GIR_RootConstrainSelectedInstOperands, |
| 16802 | /* 45208 */ // GIR_Coverage, 25442, |
| 16803 | /* 45208 */ GIR_EraseRootFromParent_Done, |
| 16804 | /* 45209 */ // Label 1064: @45209 |
| 16805 | /* 45209 */ GIM_Try, /*On fail goto*//*Label 1065*/ GIMT_Encode4(45271), // Rule ID 18108 // |
| 16806 | /* 45214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 16807 | /* 45217 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16808 | /* 45221 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16809 | /* 45225 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16810 | /* 45229 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16811 | /* 45233 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16812 | /* 45236 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16813 | /* 45240 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16814 | /* 45244 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16815 | /* 45246 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16816 | /* 45253 */ // (xor:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16817 | /* 45253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 16818 | /* 45256 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16819 | /* 45258 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16820 | /* 45260 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16821 | /* 45264 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16822 | /* 45269 */ GIR_RootConstrainSelectedInstOperands, |
| 16823 | /* 45270 */ // GIR_Coverage, 18108, |
| 16824 | /* 45270 */ GIR_EraseRootFromParent_Done, |
| 16825 | /* 45271 */ // Label 1065: @45271 |
| 16826 | /* 45271 */ GIM_Try, /*On fail goto*//*Label 1066*/ GIMT_Encode4(45333), // Rule ID 18138 // |
| 16827 | /* 45276 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 16828 | /* 45279 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16829 | /* 45283 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16830 | /* 45287 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16831 | /* 45291 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16832 | /* 45295 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16833 | /* 45298 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16834 | /* 45302 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16835 | /* 45306 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16836 | /* 45308 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16837 | /* 45315 */ // (xor:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VXORPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16838 | /* 45315 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 16839 | /* 45318 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16840 | /* 45320 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16841 | /* 45322 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16842 | /* 45326 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16843 | /* 45331 */ GIR_RootConstrainSelectedInstOperands, |
| 16844 | /* 45332 */ // GIR_Coverage, 18138, |
| 16845 | /* 45332 */ GIR_EraseRootFromParent_Done, |
| 16846 | /* 45333 */ // Label 1066: @45333 |
| 16847 | /* 45333 */ GIM_Try, /*On fail goto*//*Label 1067*/ GIMT_Encode4(45395), // Rule ID 20044 // |
| 16848 | /* 45338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16849 | /* 45341 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16850 | /* 45345 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16851 | /* 45349 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16852 | /* 45353 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16853 | /* 45357 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16854 | /* 45360 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16855 | /* 45364 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16856 | /* 45368 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16857 | /* 45370 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16858 | /* 45377 */ // (xor:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16859 | /* 45377 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 16860 | /* 45380 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16861 | /* 45382 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16862 | /* 45384 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16863 | /* 45388 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16864 | /* 45393 */ GIR_RootConstrainSelectedInstOperands, |
| 16865 | /* 45394 */ // GIR_Coverage, 20044, |
| 16866 | /* 45394 */ GIR_EraseRootFromParent_Done, |
| 16867 | /* 45395 */ // Label 1067: @45395 |
| 16868 | /* 45395 */ GIM_Try, /*On fail goto*//*Label 1068*/ GIMT_Encode4(45627), // Rule ID 21947 // |
| 16869 | /* 45400 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 16870 | /* 45403 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16871 | /* 45407 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16872 | /* 45411 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16873 | /* 45415 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16874 | /* 45421 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16875 | /* 45423 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16876 | /* 45425 */ // (xor:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, immAllOnesV:{ *:[v32i8] }) => (EXTRACT_SUBREG:{ *:[v32i8] } (VPTERNLOGQZrri:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v32i8] }:$src, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v32i8] }:$src, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v32i8] }:$src, sub_ymm:{ *:[i32] }), 15:{ *:[i8] }), sub_ymm:{ *:[i32] }) |
| 16877 | /* 45425 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 16878 | /* 45428 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16879 | /* 45432 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16880 | /* 45437 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 16881 | /* 45439 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 16882 | /* 45442 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16883 | /* 45446 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16884 | /* 45451 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 16885 | /* 45454 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16886 | /* 45458 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/12, |
| 16887 | /* 45461 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 16888 | /* 45466 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16889 | /* 45471 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 16890 | /* 45476 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 16891 | /* 45479 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16892 | /* 45483 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16893 | /* 45488 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 16894 | /* 45490 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 16895 | /* 45493 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16896 | /* 45497 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16897 | /* 45502 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 16898 | /* 45505 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16899 | /* 45509 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 16900 | /* 45512 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 16901 | /* 45517 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16902 | /* 45522 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 16903 | /* 45527 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 16904 | /* 45530 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16905 | /* 45534 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16906 | /* 45539 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 16907 | /* 45541 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 16908 | /* 45544 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16909 | /* 45548 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16910 | /* 45553 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 16911 | /* 45556 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16912 | /* 45560 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 16913 | /* 45563 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 16914 | /* 45568 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16915 | /* 45573 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 16916 | /* 45578 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 16917 | /* 45581 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 16918 | /* 45585 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 16919 | /* 45590 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 16920 | /* 45593 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 16921 | /* 45596 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 16922 | /* 45599 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 16923 | /* 45602 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16924 | /* 45604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16925 | /* 45607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16926 | /* 45609 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 16927 | /* 45616 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 16928 | /* 45621 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 16929 | /* 45626 */ // GIR_Coverage, 21947, |
| 16930 | /* 45626 */ GIR_EraseRootFromParent_Done, |
| 16931 | /* 45627 */ // Label 1068: @45627 |
| 16932 | /* 45627 */ GIM_Try, /*On fail goto*//*Label 1069*/ GIMT_Encode4(45673), // Rule ID 21955 // |
| 16933 | /* 45632 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16934 | /* 45635 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16935 | /* 45639 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16936 | /* 45643 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16937 | /* 45647 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16938 | /* 45653 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16939 | /* 45655 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16940 | /* 45657 */ // (xor:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, immAllOnesV:{ *:[v32i8] }) => (VPTERNLOGQZ256rri:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, VR256X:{ *:[v32i8] }:$src, VR256X:{ *:[v32i8] }:$src, 15:{ *:[i8] }) |
| 16941 | /* 45657 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ256rri), |
| 16942 | /* 45660 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16943 | /* 45662 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16944 | /* 45664 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16945 | /* 45666 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16946 | /* 45668 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 16947 | /* 45671 */ GIR_RootConstrainSelectedInstOperands, |
| 16948 | /* 45672 */ // GIR_Coverage, 21955, |
| 16949 | /* 45672 */ GIR_EraseRootFromParent_Done, |
| 16950 | /* 45673 */ // Label 1069: @45673 |
| 16951 | /* 45673 */ GIM_Try, /*On fail goto*//*Label 1070*/ GIMT_Encode4(45700), // Rule ID 18096 // |
| 16952 | /* 45678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 16953 | /* 45681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16954 | /* 45685 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16955 | /* 45689 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16956 | /* 45693 */ // (xor:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPXORYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 16957 | /* 45693 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORYrr), |
| 16958 | /* 45698 */ GIR_RootConstrainSelectedInstOperands, |
| 16959 | /* 45699 */ // GIR_Coverage, 18096, |
| 16960 | /* 45699 */ GIR_Done, |
| 16961 | /* 45700 */ // Label 1070: @45700 |
| 16962 | /* 45700 */ GIM_Try, /*On fail goto*//*Label 1071*/ GIMT_Encode4(45727), // Rule ID 18122 // |
| 16963 | /* 45705 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 16964 | /* 45708 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16965 | /* 45712 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16966 | /* 45716 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16967 | /* 45720 */ // (xor:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VXORPSYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 16968 | /* 45720 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VXORPSYrr), |
| 16969 | /* 45725 */ GIR_RootConstrainSelectedInstOperands, |
| 16970 | /* 45726 */ // GIR_Coverage, 18122, |
| 16971 | /* 45726 */ GIR_Done, |
| 16972 | /* 45727 */ // Label 1071: @45727 |
| 16973 | /* 45727 */ GIM_Try, /*On fail goto*//*Label 1072*/ GIMT_Encode4(45754), // Rule ID 20036 // |
| 16974 | /* 45732 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 16975 | /* 45735 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16976 | /* 45739 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16977 | /* 45743 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16978 | /* 45747 */ // (xor:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPXORQZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 16979 | /* 45747 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rr), |
| 16980 | /* 45752 */ GIR_RootConstrainSelectedInstOperands, |
| 16981 | /* 45753 */ // GIR_Coverage, 20036, |
| 16982 | /* 45753 */ GIR_Done, |
| 16983 | /* 45754 */ // Label 1072: @45754 |
| 16984 | /* 45754 */ GIM_Reject, |
| 16985 | /* 45755 */ // Label 1061: @45755 |
| 16986 | /* 45755 */ GIM_Reject, |
| 16987 | /* 45756 */ // Label 869: @45756 |
| 16988 | /* 45756 */ GIM_Try, /*On fail goto*//*Label 1073*/ GIMT_Encode4(45953), |
| 16989 | /* 45761 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 16990 | /* 45764 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 16991 | /* 45767 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16992 | /* 45771 */ GIM_Try, /*On fail goto*//*Label 1074*/ GIMT_Encode4(45829), // Rule ID 25449 // |
| 16993 | /* 45776 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16994 | /* 45779 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16995 | /* 45783 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16996 | /* 45787 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16997 | /* 45790 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16998 | /* 45794 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16999 | /* 45798 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17000 | /* 45802 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17001 | /* 45804 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17002 | /* 45811 */ // (xor:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPXORQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 17003 | /* 45811 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 17004 | /* 45814 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17005 | /* 45816 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 17006 | /* 45818 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 17007 | /* 45822 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17008 | /* 45827 */ GIR_RootConstrainSelectedInstOperands, |
| 17009 | /* 45828 */ // GIR_Coverage, 25449, |
| 17010 | /* 45828 */ GIR_EraseRootFromParent_Done, |
| 17011 | /* 45829 */ // Label 1074: @45829 |
| 17012 | /* 45829 */ GIM_Try, /*On fail goto*//*Label 1075*/ GIMT_Encode4(45887), // Rule ID 20061 // |
| 17013 | /* 45834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17014 | /* 45837 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17015 | /* 45841 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17016 | /* 45845 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17017 | /* 45849 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17018 | /* 45852 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17019 | /* 45856 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17020 | /* 45860 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17021 | /* 45862 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17022 | /* 45869 */ // (xor:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 17023 | /* 45869 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 17024 | /* 45872 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17025 | /* 45874 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 17026 | /* 45876 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 17027 | /* 45880 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17028 | /* 45885 */ GIR_RootConstrainSelectedInstOperands, |
| 17029 | /* 45886 */ // GIR_Coverage, 20061, |
| 17030 | /* 45886 */ GIR_EraseRootFromParent_Done, |
| 17031 | /* 45887 */ // Label 1075: @45887 |
| 17032 | /* 45887 */ GIM_Try, /*On fail goto*//*Label 1076*/ GIMT_Encode4(45929), // Rule ID 21940 // |
| 17033 | /* 45892 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17034 | /* 45895 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17035 | /* 45899 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17036 | /* 45903 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 17037 | /* 45909 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 17038 | /* 45911 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17039 | /* 45913 */ // (xor:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src, immAllOnesV:{ *:[v32i16] }) => (VPTERNLOGQZrri:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src, VR512:{ *:[v32i16] }:$src, VR512:{ *:[v32i16] }:$src, 15:{ *:[i8] }) |
| 17040 | /* 45913 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 17041 | /* 45916 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17042 | /* 45918 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 17043 | /* 45920 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 17044 | /* 45922 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 17045 | /* 45924 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 17046 | /* 45927 */ GIR_RootConstrainSelectedInstOperands, |
| 17047 | /* 45928 */ // GIR_Coverage, 21940, |
| 17048 | /* 45928 */ GIR_EraseRootFromParent_Done, |
| 17049 | /* 45929 */ // Label 1076: @45929 |
| 17050 | /* 45929 */ GIM_Try, /*On fail goto*//*Label 1077*/ GIMT_Encode4(45952), // Rule ID 20053 // |
| 17051 | /* 45934 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17052 | /* 45937 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17053 | /* 45941 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17054 | /* 45945 */ // (xor:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPXORQZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 17055 | /* 45945 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZrr), |
| 17056 | /* 45950 */ GIR_RootConstrainSelectedInstOperands, |
| 17057 | /* 45951 */ // GIR_Coverage, 20053, |
| 17058 | /* 45951 */ GIR_Done, |
| 17059 | /* 45952 */ // Label 1077: @45952 |
| 17060 | /* 45952 */ GIM_Reject, |
| 17061 | /* 45953 */ // Label 1073: @45953 |
| 17062 | /* 45953 */ GIM_Reject, |
| 17063 | /* 45954 */ // Label 870: @45954 |
| 17064 | /* 45954 */ GIM_Try, /*On fail goto*//*Label 1078*/ GIMT_Encode4(46211), |
| 17065 | /* 45959 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 17066 | /* 45962 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s1, |
| 17067 | /* 45965 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17068 | /* 45969 */ GIM_Try, /*On fail goto*//*Label 1079*/ GIMT_Encode4(46029), // Rule ID 23690 // |
| 17069 | /* 45974 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17070 | /* 45977 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17071 | /* 45981 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 17072 | /* 45985 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v64s1, |
| 17073 | /* 45989 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v64s1, |
| 17074 | /* 45993 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17075 | /* 45998 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 17076 | /* 46002 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 17077 | /* 46008 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 17078 | /* 46010 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17079 | /* 46014 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 17080 | /* 46016 */ // (xor:{ *:[v64i1] } (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, immAllOnesV:{ *:[v64i1] }), VK64:{ *:[v64i1] }:$src2) => (KXNORQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 17081 | /* 46016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORQkk), |
| 17082 | /* 46019 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17083 | /* 46021 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 17084 | /* 46025 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 17085 | /* 46027 */ GIR_RootConstrainSelectedInstOperands, |
| 17086 | /* 46028 */ // GIR_Coverage, 23690, |
| 17087 | /* 46028 */ GIR_EraseRootFromParent_Done, |
| 17088 | /* 46029 */ // Label 1079: @46029 |
| 17089 | /* 46029 */ GIM_Try, /*On fail goto*//*Label 1080*/ GIMT_Encode4(46092), // Rule ID 4426 // |
| 17090 | /* 46034 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17091 | /* 46037 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17092 | /* 46041 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 17093 | /* 46045 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v64s1, |
| 17094 | /* 46049 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v64s1, |
| 17095 | /* 46053 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17096 | /* 46058 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17097 | /* 46063 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 17098 | /* 46067 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 17099 | /* 46073 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 17100 | /* 46075 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 17101 | /* 46077 */ // (xor:{ *:[v64i1] } (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2), immAllOnesV:{ *:[v64i1] }) => (KXNORQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 17102 | /* 46077 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORQkk), |
| 17103 | /* 46080 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17104 | /* 46082 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 17105 | /* 46086 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 17106 | /* 46090 */ GIR_RootConstrainSelectedInstOperands, |
| 17107 | /* 46091 */ // GIR_Coverage, 4426, |
| 17108 | /* 46091 */ GIR_EraseRootFromParent_Done, |
| 17109 | /* 46092 */ // Label 1080: @46092 |
| 17110 | /* 46092 */ GIM_Try, /*On fail goto*//*Label 1081*/ GIMT_Encode4(46152), // Rule ID 23691 // |
| 17111 | /* 46097 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17112 | /* 46100 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17113 | /* 46104 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17114 | /* 46108 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 17115 | /* 46112 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v64s1, |
| 17116 | /* 46116 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v64s1, |
| 17117 | /* 46120 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17118 | /* 46125 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 17119 | /* 46129 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 17120 | /* 46135 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 17121 | /* 46137 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 17122 | /* 46139 */ // (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src2, (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, immAllOnesV:{ *:[v64i1] })) => (KXNORQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 17123 | /* 46139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORQkk), |
| 17124 | /* 46142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17125 | /* 46144 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 17126 | /* 46148 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 17127 | /* 46150 */ GIR_RootConstrainSelectedInstOperands, |
| 17128 | /* 46151 */ // GIR_Coverage, 23691, |
| 17129 | /* 46151 */ GIR_EraseRootFromParent_Done, |
| 17130 | /* 46152 */ // Label 1081: @46152 |
| 17131 | /* 46152 */ GIM_Try, /*On fail goto*//*Label 1082*/ GIMT_Encode4(46187), // Rule ID 4414 // |
| 17132 | /* 46157 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17133 | /* 46160 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17134 | /* 46164 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17135 | /* 46168 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 17136 | /* 46174 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 17137 | /* 46176 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17138 | /* 46178 */ // (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src, immAllOnesV:{ *:[v64i1] }) => (KNOTQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src) |
| 17139 | /* 46178 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KNOTQkk), |
| 17140 | /* 46181 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17141 | /* 46183 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 17142 | /* 46185 */ GIR_RootConstrainSelectedInstOperands, |
| 17143 | /* 46186 */ // GIR_Coverage, 4414, |
| 17144 | /* 46186 */ GIR_EraseRootFromParent_Done, |
| 17145 | /* 46187 */ // Label 1082: @46187 |
| 17146 | /* 46187 */ GIM_Try, /*On fail goto*//*Label 1083*/ GIMT_Encode4(46210), // Rule ID 4430 // |
| 17147 | /* 46192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17148 | /* 46195 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17149 | /* 46199 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17150 | /* 46203 */ // (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) => (KXORQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 17151 | /* 46203 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KXORQkk), |
| 17152 | /* 46208 */ GIR_RootConstrainSelectedInstOperands, |
| 17153 | /* 46209 */ // GIR_Coverage, 4430, |
| 17154 | /* 46209 */ GIR_Done, |
| 17155 | /* 46210 */ // Label 1083: @46210 |
| 17156 | /* 46210 */ GIM_Reject, |
| 17157 | /* 46211 */ // Label 1078: @46211 |
| 17158 | /* 46211 */ GIM_Reject, |
| 17159 | /* 46212 */ // Label 871: @46212 |
| 17160 | /* 46212 */ GIM_Try, /*On fail goto*//*Label 1084*/ GIMT_Encode4(46409), |
| 17161 | /* 46217 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 17162 | /* 46220 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 17163 | /* 46223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17164 | /* 46227 */ GIM_Try, /*On fail goto*//*Label 1085*/ GIMT_Encode4(46285), // Rule ID 25448 // |
| 17165 | /* 46232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17166 | /* 46235 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17167 | /* 46239 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17168 | /* 46243 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17169 | /* 46246 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17170 | /* 46250 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17171 | /* 46254 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17172 | /* 46258 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17173 | /* 46260 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17174 | /* 46267 */ // (xor:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPXORQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 17175 | /* 46267 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 17176 | /* 46270 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17177 | /* 46272 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 17178 | /* 46274 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 17179 | /* 46278 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17180 | /* 46283 */ GIR_RootConstrainSelectedInstOperands, |
| 17181 | /* 46284 */ // GIR_Coverage, 25448, |
| 17182 | /* 46284 */ GIR_EraseRootFromParent_Done, |
| 17183 | /* 46285 */ // Label 1085: @46285 |
| 17184 | /* 46285 */ GIM_Try, /*On fail goto*//*Label 1086*/ GIMT_Encode4(46343), // Rule ID 20060 // |
| 17185 | /* 46290 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17186 | /* 46293 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17187 | /* 46297 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17188 | /* 46301 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17189 | /* 46305 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17190 | /* 46308 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17191 | /* 46312 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17192 | /* 46316 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17193 | /* 46318 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17194 | /* 46325 */ // (xor:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 17195 | /* 46325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 17196 | /* 46328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17197 | /* 46330 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 17198 | /* 46332 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 17199 | /* 46336 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17200 | /* 46341 */ GIR_RootConstrainSelectedInstOperands, |
| 17201 | /* 46342 */ // GIR_Coverage, 20060, |
| 17202 | /* 46342 */ GIR_EraseRootFromParent_Done, |
| 17203 | /* 46343 */ // Label 1086: @46343 |
| 17204 | /* 46343 */ GIM_Try, /*On fail goto*//*Label 1087*/ GIMT_Encode4(46385), // Rule ID 21939 // |
| 17205 | /* 46348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17206 | /* 46351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17207 | /* 46355 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17208 | /* 46359 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 17209 | /* 46365 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 17210 | /* 46367 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17211 | /* 46369 */ // (xor:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src, immAllOnesV:{ *:[v64i8] }) => (VPTERNLOGQZrri:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src, VR512:{ *:[v64i8] }:$src, VR512:{ *:[v64i8] }:$src, 15:{ *:[i8] }) |
| 17212 | /* 46369 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 17213 | /* 46372 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17214 | /* 46374 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 17215 | /* 46376 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 17216 | /* 46378 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 17217 | /* 46380 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 17218 | /* 46383 */ GIR_RootConstrainSelectedInstOperands, |
| 17219 | /* 46384 */ // GIR_Coverage, 21939, |
| 17220 | /* 46384 */ GIR_EraseRootFromParent_Done, |
| 17221 | /* 46385 */ // Label 1087: @46385 |
| 17222 | /* 46385 */ GIM_Try, /*On fail goto*//*Label 1088*/ GIMT_Encode4(46408), // Rule ID 20052 // |
| 17223 | /* 46390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17224 | /* 46393 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17225 | /* 46397 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 17226 | /* 46401 */ // (xor:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPXORQZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 17227 | /* 46401 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZrr), |
| 17228 | /* 46406 */ GIR_RootConstrainSelectedInstOperands, |
| 17229 | /* 46407 */ // GIR_Coverage, 20052, |
| 17230 | /* 46407 */ GIR_Done, |
| 17231 | /* 46408 */ // Label 1088: @46408 |
| 17232 | /* 46408 */ GIM_Reject, |
| 17233 | /* 46409 */ // Label 1084: @46409 |
| 17234 | /* 46409 */ GIM_Reject, |
| 17235 | /* 46410 */ // Label 872: @46410 |
| 17236 | /* 46410 */ GIM_Reject, |
| 17237 | /* 46411 */ // Label 6: @46411 |
| 17238 | /* 46411 */ GIM_Try, /*On fail goto*//*Label 1089*/ GIMT_Encode4(46577), |
| 17239 | /* 46416 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/3, |
| 17240 | /* 46419 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(16), GIMT_Encode2(24), /*)*//*default:*//*Label 1093*/ GIMT_Encode4(46576), |
| 17241 | /* 46430 */ /*GILLT_v16s1*//*Label 1090*/ GIMT_Encode4(46462), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 17242 | /* 46446 */ /*GILLT_v32s1*//*Label 1091*/ GIMT_Encode4(46500), GIMT_Encode4(0), GIMT_Encode4(0), |
| 17243 | /* 46458 */ /*GILLT_v64s1*//*Label 1092*/ GIMT_Encode4(46538), |
| 17244 | /* 46462 */ // Label 1090: @46462 |
| 17245 | /* 46462 */ GIM_Try, /*On fail goto*//*Label 1094*/ GIMT_Encode4(46499), // Rule ID 19503 // |
| 17246 | /* 46467 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17247 | /* 46470 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 17248 | /* 46473 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 17249 | /* 46476 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 17250 | /* 46480 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 17251 | /* 46484 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 17252 | /* 46488 */ // (concat_vectors:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (KUNPCKBWkk:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src2, VK8:{ *:[v8i1] }:$src1) |
| 17253 | /* 46488 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KUNPCKBWkk), |
| 17254 | /* 46491 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17255 | /* 46493 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 17256 | /* 46495 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 17257 | /* 46497 */ GIR_RootConstrainSelectedInstOperands, |
| 17258 | /* 46498 */ // GIR_Coverage, 19503, |
| 17259 | /* 46498 */ GIR_EraseRootFromParent_Done, |
| 17260 | /* 46499 */ // Label 1094: @46499 |
| 17261 | /* 46499 */ GIM_Reject, |
| 17262 | /* 46500 */ // Label 1091: @46500 |
| 17263 | /* 46500 */ GIM_Try, /*On fail goto*//*Label 1095*/ GIMT_Encode4(46537), // Rule ID 19504 // |
| 17264 | /* 46505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17265 | /* 46508 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 17266 | /* 46511 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 17267 | /* 46514 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 17268 | /* 46518 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 17269 | /* 46522 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 17270 | /* 46526 */ // (concat_vectors:{ *:[v32i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) => (KUNPCKWDkk:{ *:[v32i1] } VK16:{ *:[v16i1] }:$src2, VK16:{ *:[v16i1] }:$src1) |
| 17271 | /* 46526 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KUNPCKWDkk), |
| 17272 | /* 46529 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17273 | /* 46531 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 17274 | /* 46533 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 17275 | /* 46535 */ GIR_RootConstrainSelectedInstOperands, |
| 17276 | /* 46536 */ // GIR_Coverage, 19504, |
| 17277 | /* 46536 */ GIR_EraseRootFromParent_Done, |
| 17278 | /* 46537 */ // Label 1095: @46537 |
| 17279 | /* 46537 */ GIM_Reject, |
| 17280 | /* 46538 */ // Label 1092: @46538 |
| 17281 | /* 46538 */ GIM_Try, /*On fail goto*//*Label 1096*/ GIMT_Encode4(46575), // Rule ID 19505 // |
| 17282 | /* 46543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17283 | /* 46546 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 17284 | /* 46549 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 17285 | /* 46552 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17286 | /* 46556 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 17287 | /* 46560 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 17288 | /* 46564 */ // (concat_vectors:{ *:[v64i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) => (KUNPCKDQkk:{ *:[v64i1] } VK32:{ *:[v32i1] }:$src2, VK32:{ *:[v32i1] }:$src1) |
| 17289 | /* 46564 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KUNPCKDQkk), |
| 17290 | /* 46567 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17291 | /* 46569 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 17292 | /* 46571 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 17293 | /* 46573 */ GIR_RootConstrainSelectedInstOperands, |
| 17294 | /* 46574 */ // GIR_Coverage, 19505, |
| 17295 | /* 46574 */ GIR_EraseRootFromParent_Done, |
| 17296 | /* 46575 */ // Label 1096: @46575 |
| 17297 | /* 46575 */ GIM_Reject, |
| 17298 | /* 46576 */ // Label 1093: @46576 |
| 17299 | /* 46576 */ GIM_Reject, |
| 17300 | /* 46577 */ // Label 1089: @46577 |
| 17301 | /* 46577 */ GIM_Reject, |
| 17302 | /* 46578 */ // Label 7: @46578 |
| 17303 | /* 46578 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(24), /*)*//*default:*//*Label 1105*/ GIMT_Encode4(48867), |
| 17304 | /* 46589 */ /*GILLT_s8*//*Label 1097*/ GIMT_Encode4(46681), |
| 17305 | /* 46593 */ /*GILLT_s16*//*Label 1098*/ GIMT_Encode4(46742), |
| 17306 | /* 46597 */ /*GILLT_s32*//*Label 1099*/ GIMT_Encode4(47572), |
| 17307 | /* 46601 */ /*GILLT_s64*//*Label 1100*/ GIMT_Encode4(47998), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 17308 | /* 46633 */ /*GILLT_v8s1*//*Label 1101*/ GIMT_Encode4(48424), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 17309 | /* 46649 */ /*GILLT_v16s1*//*Label 1102*/ GIMT_Encode4(48585), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 17310 | /* 46665 */ /*GILLT_v32s1*//*Label 1103*/ GIMT_Encode4(48725), GIMT_Encode4(0), GIMT_Encode4(0), |
| 17311 | /* 46677 */ /*GILLT_v64s1*//*Label 1104*/ GIMT_Encode4(48796), |
| 17312 | /* 46681 */ // Label 1097: @46681 |
| 17313 | /* 46681 */ GIM_Try, /*On fail goto*//*Label 1106*/ GIMT_Encode4(46741), // Rule ID 19434 // |
| 17314 | /* 46686 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 17315 | /* 46689 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 17316 | /* 46693 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 17317 | /* 46697 */ // (bitconvert:{ *:[i8] } VK8:{ *:[v8i1] }:$src) => (EXTRACT_SUBREG:{ *:[i8] } (COPY_TO_REGCLASS:{ *:[i32] } VK8:{ *:[v8i1] }:$src, GR32:{ *:[i32] }), sub_8bit:{ *:[i32] }) |
| 17318 | /* 46697 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17319 | /* 46700 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17320 | /* 46704 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17321 | /* 46709 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17322 | /* 46713 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 17323 | /* 46718 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17324 | /* 46721 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17325 | /* 46723 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_8bit), |
| 17326 | /* 46730 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 17327 | /* 46735 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 17328 | /* 46740 */ // GIR_Coverage, 19434, |
| 17329 | /* 46740 */ GIR_EraseRootFromParent_Done, |
| 17330 | /* 46741 */ // Label 1106: @46741 |
| 17331 | /* 46741 */ GIM_Reject, |
| 17332 | /* 46742 */ // Label 1098: @46742 |
| 17333 | /* 46742 */ GIM_Try, /*On fail goto*//*Label 1107*/ GIMT_Encode4(46802), // Rule ID 19431 // |
| 17334 | /* 46747 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 17335 | /* 46750 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17336 | /* 46754 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 17337 | /* 46758 */ // (bitconvert:{ *:[i16] } VK16:{ *:[v16i1] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (COPY_TO_REGCLASS:{ *:[i32] } VK16:{ *:[v16i1] }:$src, GR32:{ *:[i32] }), sub_16bit:{ *:[i32] }) |
| 17338 | /* 46758 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17339 | /* 46761 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17340 | /* 46765 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17341 | /* 46770 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17342 | /* 46774 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 17343 | /* 46779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17344 | /* 46782 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17345 | /* 46784 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 17346 | /* 46791 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 17347 | /* 46796 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 17348 | /* 46801 */ // GIR_Coverage, 19431, |
| 17349 | /* 46801 */ GIR_EraseRootFromParent_Done, |
| 17350 | /* 46802 */ // Label 1107: @46802 |
| 17351 | /* 46802 */ GIM_Try, /*On fail goto*//*Label 1108*/ GIMT_Encode4(46903), // Rule ID 22140 // |
| 17352 | /* 46807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 17353 | /* 46810 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17354 | /* 46813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 17355 | /* 46817 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17356 | /* 46821 */ // (bitconvert:{ *:[f16] } GR16:{ *:[i16] }:$src) => (COPY_TO_REGCLASS:{ *:[f16] } (VMOVW2SHrr:{ *:[f128] } (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR16:{ *:[i16] }:$src, sub_16bit:{ *:[i32] })), FR16X:{ *:[i32] }) |
| 17357 | /* 46821 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_s32, |
| 17358 | /* 46824 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17359 | /* 46828 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17360 | /* 46833 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 17361 | /* 46835 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 17362 | /* 46838 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17363 | /* 46842 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17364 | /* 46847 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 17365 | /* 46850 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17366 | /* 46854 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/4, |
| 17367 | /* 46857 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17368 | /* 46862 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17369 | /* 46867 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 17370 | /* 46872 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 17371 | /* 46875 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVW2SHrr), |
| 17372 | /* 46879 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17373 | /* 46884 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17374 | /* 46887 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17375 | /* 46889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17376 | /* 46892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17377 | /* 46894 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17378 | /* 46897 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 17379 | /* 46902 */ // GIR_Coverage, 22140, |
| 17380 | /* 46902 */ GIR_EraseRootFromParent_Done, |
| 17381 | /* 46903 */ // Label 1108: @46903 |
| 17382 | /* 46903 */ GIM_Try, /*On fail goto*//*Label 1109*/ GIMT_Encode4(46983), // Rule ID 22153 // |
| 17383 | /* 46908 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 17384 | /* 46911 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17385 | /* 46914 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17386 | /* 46918 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 17387 | /* 46922 */ // (bitconvert:{ *:[i16] } FR16X:{ *:[f16] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (VMOVSH2Wrr:{ *:[i32] } (COPY_TO_REGCLASS:{ *:[f128] } FR16X:{ *:[f16] }:$src, VR128X:{ *:[i32] })), sub_16bit:{ *:[i32] }) |
| 17388 | /* 46922 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s128, |
| 17389 | /* 46925 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17390 | /* 46929 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17391 | /* 46934 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17392 | /* 46938 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR128XRegClassID), |
| 17393 | /* 46943 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17394 | /* 46946 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVSH2Wrr), |
| 17395 | /* 46950 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17396 | /* 46955 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17397 | /* 46958 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17398 | /* 46960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17399 | /* 46963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17400 | /* 46965 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 17401 | /* 46972 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 17402 | /* 46977 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 17403 | /* 46982 */ // GIR_Coverage, 22153, |
| 17404 | /* 46982 */ GIR_EraseRootFromParent_Done, |
| 17405 | /* 46983 */ // Label 1109: @46983 |
| 17406 | /* 46983 */ GIM_Try, /*On fail goto*//*Label 1110*/ GIMT_Encode4(47062), // Rule ID 18340 // |
| 17407 | /* 46988 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoBWI), |
| 17408 | /* 46991 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17409 | /* 46994 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17410 | /* 46998 */ // (bitconvert:{ *:[i16] } f16:{ *:[f16] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (VPEXTRWrri:{ *:[i32] } (COPY_TO_REGCLASS:{ *:[v8i16] } FR16:{ *:[f16] }:$src, VR128:{ *:[i32] }), 0:{ *:[i8] }), sub_16bit:{ *:[i32] }) |
| 17411 | /* 46998 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17412 | /* 47001 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17413 | /* 47005 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17414 | /* 47010 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17415 | /* 47014 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 17416 | /* 47019 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17417 | /* 47022 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPEXTRWrri), |
| 17418 | /* 47026 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17419 | /* 47031 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17420 | /* 47034 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17421 | /* 47037 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17422 | /* 47039 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17423 | /* 47042 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17424 | /* 47044 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 17425 | /* 47051 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 17426 | /* 47056 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 17427 | /* 47061 */ // GIR_Coverage, 18340, |
| 17428 | /* 47061 */ GIR_EraseRootFromParent_Done, |
| 17429 | /* 47062 */ // Label 1110: @47062 |
| 17430 | /* 47062 */ GIM_Try, /*On fail goto*//*Label 1111*/ GIMT_Encode4(47179), // Rule ID 18341 // |
| 17431 | /* 47067 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoBWI), |
| 17432 | /* 47070 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17433 | /* 47073 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 17434 | /* 47077 */ // (bitconvert:{ *:[f16] } i16:{ *:[i16] }:$src) => (COPY_TO_REGCLASS:{ *:[f16] } (VPINSRWrri:{ *:[f128] } (IMPLICIT_DEF:{ *:[v8i16] }), (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR16:{ *:[i16] }:$src, sub_16bit:{ *:[i32] }), 0:{ *:[i8] }), FR16:{ *:[i32] }) |
| 17435 | /* 47077 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_s32, |
| 17436 | /* 47080 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17437 | /* 47084 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17438 | /* 47089 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 17439 | /* 47091 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_s32, |
| 17440 | /* 47094 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17441 | /* 47098 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17442 | /* 47103 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 17443 | /* 47106 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17444 | /* 47110 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/4, |
| 17445 | /* 47113 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17446 | /* 47118 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17447 | /* 47123 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 17448 | /* 47128 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17449 | /* 47131 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17450 | /* 47135 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17451 | /* 47140 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 17452 | /* 47142 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 17453 | /* 47145 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPINSRWrri), |
| 17454 | /* 47149 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17455 | /* 47154 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17456 | /* 47157 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 17457 | /* 47160 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17458 | /* 47163 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17459 | /* 47165 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17460 | /* 47168 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17461 | /* 47170 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17462 | /* 47173 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 17463 | /* 47178 */ // GIR_Coverage, 18341, |
| 17464 | /* 47178 */ GIR_EraseRootFromParent_Done, |
| 17465 | /* 47179 */ // Label 1111: @47179 |
| 17466 | /* 47179 */ GIM_Try, /*On fail goto*//*Label 1112*/ GIMT_Encode4(47258), // Rule ID 18337 // |
| 17467 | /* 47184 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17468 | /* 47187 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17469 | /* 47190 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17470 | /* 47194 */ // (bitconvert:{ *:[i16] } f16:{ *:[f16] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (PEXTRWrri:{ *:[i32] } (COPY_TO_REGCLASS:{ *:[v8i16] } FR16:{ *:[f16] }:$src, VR128:{ *:[i32] }), 0:{ *:[i8] }), sub_16bit:{ *:[i32] }) |
| 17471 | /* 47194 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17472 | /* 47197 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17473 | /* 47201 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17474 | /* 47206 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17475 | /* 47210 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 17476 | /* 47215 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17477 | /* 47218 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::PEXTRWrri), |
| 17478 | /* 47222 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17479 | /* 47227 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17480 | /* 47230 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17481 | /* 47233 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17482 | /* 47235 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17483 | /* 47238 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17484 | /* 47240 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 17485 | /* 47247 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 17486 | /* 47252 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 17487 | /* 47257 */ // GIR_Coverage, 18337, |
| 17488 | /* 47257 */ GIR_EraseRootFromParent_Done, |
| 17489 | /* 47258 */ // Label 1112: @47258 |
| 17490 | /* 47258 */ GIM_Try, /*On fail goto*//*Label 1113*/ GIMT_Encode4(47375), // Rule ID 18338 // |
| 17491 | /* 47263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17492 | /* 47266 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17493 | /* 47269 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 17494 | /* 47273 */ // (bitconvert:{ *:[f16] } i16:{ *:[i16] }:$src) => (COPY_TO_REGCLASS:{ *:[f16] } (PINSRWrri:{ *:[f128] } (IMPLICIT_DEF:{ *:[v8i16] }), (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR16:{ *:[i16] }:$src, sub_16bit:{ *:[i32] }), 0:{ *:[i8] }), FR16:{ *:[i32] }) |
| 17495 | /* 47273 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_s32, |
| 17496 | /* 47276 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17497 | /* 47280 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17498 | /* 47285 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 17499 | /* 47287 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_s32, |
| 17500 | /* 47290 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17501 | /* 47294 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17502 | /* 47299 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 17503 | /* 47302 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17504 | /* 47306 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/4, |
| 17505 | /* 47309 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17506 | /* 47314 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17507 | /* 47319 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 17508 | /* 47324 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17509 | /* 47327 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17510 | /* 47331 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17511 | /* 47336 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 17512 | /* 47338 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 17513 | /* 47341 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::PINSRWrri), |
| 17514 | /* 47345 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17515 | /* 47350 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17516 | /* 47353 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 17517 | /* 47356 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17518 | /* 47359 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17519 | /* 47361 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17520 | /* 47364 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17521 | /* 47366 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17522 | /* 47369 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 17523 | /* 47374 */ // GIR_Coverage, 18338, |
| 17524 | /* 47374 */ GIR_EraseRootFromParent_Done, |
| 17525 | /* 47375 */ // Label 1113: @47375 |
| 17526 | /* 47375 */ GIM_Try, /*On fail goto*//*Label 1114*/ GIMT_Encode4(47454), // Rule ID 21841 // |
| 17527 | /* 47380 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17528 | /* 47383 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17529 | /* 47386 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17530 | /* 47390 */ // (bitconvert:{ *:[i16] } f16:{ *:[f16] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (VPEXTRWZrri:{ *:[i32] } (COPY_TO_REGCLASS:{ *:[v8i16] } FR16X:{ *:[f16] }:$src, VR128X:{ *:[i32] }), 0:{ *:[i8] }), sub_16bit:{ *:[i32] }) |
| 17531 | /* 47390 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17532 | /* 47393 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17533 | /* 47397 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17534 | /* 47402 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17535 | /* 47406 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR128XRegClassID), |
| 17536 | /* 47411 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17537 | /* 47414 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPEXTRWZrri), |
| 17538 | /* 47418 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17539 | /* 47423 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17540 | /* 47426 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17541 | /* 47429 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17542 | /* 47431 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17543 | /* 47434 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17544 | /* 47436 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 17545 | /* 47443 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 17546 | /* 47448 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 17547 | /* 47453 */ // GIR_Coverage, 21841, |
| 17548 | /* 47453 */ GIR_EraseRootFromParent_Done, |
| 17549 | /* 47454 */ // Label 1114: @47454 |
| 17550 | /* 47454 */ GIM_Try, /*On fail goto*//*Label 1115*/ GIMT_Encode4(47571), // Rule ID 21842 // |
| 17551 | /* 47459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17552 | /* 47462 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17553 | /* 47465 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 17554 | /* 47469 */ // (bitconvert:{ *:[f16] } i16:{ *:[i16] }:$src) => (COPY_TO_REGCLASS:{ *:[f16] } (VPINSRWZrri:{ *:[f128] } (IMPLICIT_DEF:{ *:[v8i16] }), (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR16:{ *:[i16] }:$src, sub_16bit:{ *:[i32] }), 0:{ *:[i8] }), FR16X:{ *:[i32] }) |
| 17555 | /* 47469 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_s32, |
| 17556 | /* 47472 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17557 | /* 47476 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17558 | /* 47481 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 17559 | /* 47483 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_s32, |
| 17560 | /* 47486 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17561 | /* 47490 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17562 | /* 47495 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 17563 | /* 47498 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17564 | /* 47502 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/4, |
| 17565 | /* 47505 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17566 | /* 47510 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17567 | /* 47515 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 17568 | /* 47520 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17569 | /* 47523 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17570 | /* 47527 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17571 | /* 47532 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 17572 | /* 47534 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 17573 | /* 47537 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPINSRWZrri), |
| 17574 | /* 47541 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17575 | /* 47546 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17576 | /* 47549 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 17577 | /* 47552 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17578 | /* 47555 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17579 | /* 47557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17580 | /* 47560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17581 | /* 47562 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17582 | /* 47565 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 17583 | /* 47570 */ // GIR_Coverage, 21842, |
| 17584 | /* 47570 */ GIR_EraseRootFromParent_Done, |
| 17585 | /* 47571 */ // Label 1115: @47571 |
| 17586 | /* 47571 */ GIM_Reject, |
| 17587 | /* 47572 */ // Label 1099: @47572 |
| 17588 | /* 47572 */ GIM_Try, /*On fail goto*//*Label 1116*/ GIMT_Encode4(47638), // Rule ID 22525 // |
| 17589 | /* 47577 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 17590 | /* 47580 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17591 | /* 47583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17592 | /* 47587 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17593 | /* 47591 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17594 | /* 47595 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17595 | /* 47598 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17596 | /* 47602 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 17597 | /* 47609 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17598 | /* 47613 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17599 | /* 47615 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17600 | /* 47622 */ // (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>) => (MOVSSrm_alt:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 17601 | /* 47622 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSSrm_alt), |
| 17602 | /* 47625 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17603 | /* 47627 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17604 | /* 47631 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17605 | /* 47636 */ GIR_RootConstrainSelectedInstOperands, |
| 17606 | /* 47637 */ // GIR_Coverage, 22525, |
| 17607 | /* 47637 */ GIR_EraseRootFromParent_Done, |
| 17608 | /* 47638 */ // Label 1116: @47638 |
| 17609 | /* 47638 */ GIM_Try, /*On fail goto*//*Label 1117*/ GIMT_Encode4(47704), // Rule ID 22526 // |
| 17610 | /* 47643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17611 | /* 47646 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17612 | /* 47649 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17613 | /* 47653 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17614 | /* 47657 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17615 | /* 47661 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17616 | /* 47664 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17617 | /* 47668 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 17618 | /* 47675 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17619 | /* 47679 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17620 | /* 47681 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17621 | /* 47688 */ // (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>) => (VMOVSSrm_alt:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 17622 | /* 47688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSrm_alt), |
| 17623 | /* 47691 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17624 | /* 47693 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17625 | /* 47697 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17626 | /* 47702 */ GIR_RootConstrainSelectedInstOperands, |
| 17627 | /* 47703 */ // GIR_Coverage, 22526, |
| 17628 | /* 47703 */ GIR_EraseRootFromParent_Done, |
| 17629 | /* 47704 */ // Label 1117: @47704 |
| 17630 | /* 47704 */ GIM_Try, /*On fail goto*//*Label 1118*/ GIMT_Encode4(47770), // Rule ID 22527 // |
| 17631 | /* 47709 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17632 | /* 47712 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17633 | /* 47715 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 17634 | /* 47719 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17635 | /* 47723 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17636 | /* 47727 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17637 | /* 47730 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17638 | /* 47734 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 17639 | /* 47741 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17640 | /* 47745 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17641 | /* 47747 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17642 | /* 47754 */ // (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>) => (VMOVSSZrm_alt:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 17643 | /* 47754 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSZrm_alt), |
| 17644 | /* 47757 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17645 | /* 47759 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17646 | /* 47763 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17647 | /* 47768 */ GIR_RootConstrainSelectedInstOperands, |
| 17648 | /* 47769 */ // GIR_Coverage, 22527, |
| 17649 | /* 47769 */ GIR_EraseRootFromParent_Done, |
| 17650 | /* 47770 */ // Label 1118: @47770 |
| 17651 | /* 47770 */ GIM_Try, /*On fail goto*//*Label 1119*/ GIMT_Encode4(47796), // Rule ID 2915 // |
| 17652 | /* 47775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17653 | /* 47778 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17654 | /* 47781 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17655 | /* 47785 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17656 | /* 47789 */ // (bitconvert:{ *:[f32] } GR32:{ *:[i32] }:$src) => (VMOVDI2SSrr:{ *:[f32] } GR32:{ *:[i32] }:$src) |
| 17657 | /* 47789 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVDI2SSrr), |
| 17658 | /* 47794 */ GIR_RootConstrainSelectedInstOperands, |
| 17659 | /* 47795 */ // GIR_Coverage, 2915, |
| 17660 | /* 47795 */ GIR_Done, |
| 17661 | /* 47796 */ // Label 1119: @47796 |
| 17662 | /* 47796 */ GIM_Try, /*On fail goto*//*Label 1120*/ GIMT_Encode4(47822), // Rule ID 2916 // |
| 17663 | /* 47801 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17664 | /* 47804 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17665 | /* 47807 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17666 | /* 47811 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17667 | /* 47815 */ // (bitconvert:{ *:[f32] } GR32:{ *:[i32] }:$src) => (MOVDI2SSrr:{ *:[f32] } GR32:{ *:[i32] }:$src) |
| 17668 | /* 47815 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVDI2SSrr), |
| 17669 | /* 47820 */ GIR_RootConstrainSelectedInstOperands, |
| 17670 | /* 47821 */ // GIR_Coverage, 2916, |
| 17671 | /* 47821 */ GIR_Done, |
| 17672 | /* 47822 */ // Label 1120: @47822 |
| 17673 | /* 47822 */ GIM_Try, /*On fail goto*//*Label 1121*/ GIMT_Encode4(47848), // Rule ID 2925 // |
| 17674 | /* 47827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17675 | /* 47830 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17676 | /* 47833 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17677 | /* 47837 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17678 | /* 47841 */ // (bitconvert:{ *:[i32] } FR32:{ *:[f32] }:$src) => (VMOVSS2DIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 17679 | /* 47841 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVSS2DIrr), |
| 17680 | /* 47846 */ GIR_RootConstrainSelectedInstOperands, |
| 17681 | /* 47847 */ // GIR_Coverage, 2925, |
| 17682 | /* 47847 */ GIR_Done, |
| 17683 | /* 47848 */ // Label 1121: @47848 |
| 17684 | /* 47848 */ GIM_Try, /*On fail goto*//*Label 1122*/ GIMT_Encode4(47874), // Rule ID 2926 // |
| 17685 | /* 47853 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17686 | /* 47856 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17687 | /* 47859 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17688 | /* 47863 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17689 | /* 47867 */ // (bitconvert:{ *:[i32] } FR32:{ *:[f32] }:$src) => (MOVSS2DIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 17690 | /* 47867 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSS2DIrr), |
| 17691 | /* 47872 */ GIR_RootConstrainSelectedInstOperands, |
| 17692 | /* 47873 */ // GIR_Coverage, 2926, |
| 17693 | /* 47873 */ GIR_Done, |
| 17694 | /* 47874 */ // Label 1122: @47874 |
| 17695 | /* 47874 */ GIM_Try, /*On fail goto*//*Label 1123*/ GIMT_Encode4(47900), // Rule ID 4598 // |
| 17696 | /* 47879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17697 | /* 47882 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17698 | /* 47885 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 17699 | /* 47889 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17700 | /* 47893 */ // (bitconvert:{ *:[f32] } GR32:{ *:[i32] }:$src) => (VMOVDI2SSZrr:{ *:[f32] } GR32:{ *:[i32] }:$src) |
| 17701 | /* 47893 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVDI2SSZrr), |
| 17702 | /* 47898 */ GIR_RootConstrainSelectedInstOperands, |
| 17703 | /* 47899 */ // GIR_Coverage, 4598, |
| 17704 | /* 47899 */ GIR_Done, |
| 17705 | /* 47900 */ // Label 1123: @47900 |
| 17706 | /* 47900 */ GIM_Try, /*On fail goto*//*Label 1124*/ GIMT_Encode4(47926), // Rule ID 4603 // |
| 17707 | /* 47905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17708 | /* 47908 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17709 | /* 47911 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17710 | /* 47915 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 17711 | /* 47919 */ // (bitconvert:{ *:[i32] } FR32X:{ *:[f32] }:$src) => (VMOVSS2DIZrr:{ *:[i32] } FR32X:{ *:[f32] }:$src) |
| 17712 | /* 47919 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVSS2DIZrr), |
| 17713 | /* 47924 */ GIR_RootConstrainSelectedInstOperands, |
| 17714 | /* 47925 */ // GIR_Coverage, 4603, |
| 17715 | /* 47925 */ GIR_Done, |
| 17716 | /* 47926 */ // Label 1124: @47926 |
| 17717 | /* 47926 */ GIM_Try, /*On fail goto*//*Label 1125*/ GIMT_Encode4(47953), // Rule ID 19442 // |
| 17718 | /* 47931 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 17719 | /* 47934 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17720 | /* 47938 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 17721 | /* 47942 */ // (bitconvert:{ *:[i32] } VK32:{ *:[v32i1] }:$src) => (COPY_TO_REGCLASS:{ *:[i32] } VK32:{ *:[v32i1] }:$src, GR32:{ *:[i32] }) |
| 17722 | /* 47942 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17723 | /* 47947 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 17724 | /* 47952 */ // GIR_Coverage, 19442, |
| 17725 | /* 47952 */ GIR_Done, |
| 17726 | /* 47953 */ // Label 1125: @47953 |
| 17727 | /* 47953 */ GIM_Try, /*On fail goto*//*Label 1126*/ GIMT_Encode4(47997), // Rule ID 19876 // |
| 17728 | /* 47958 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 17729 | /* 47961 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 17730 | /* 47965 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 17731 | /* 47969 */ // (bitconvert:{ *:[f32] } VK32:{ *:[v32i1] }:$src) => (VMOVDI2SSZrr:{ *:[f32] } (KMOVDrk:{ *:[i32] } VK32:{ *:[v32i1] }:$src)) |
| 17732 | /* 47969 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17733 | /* 47972 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVDrk), |
| 17734 | /* 47976 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17735 | /* 47981 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17736 | /* 47985 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17737 | /* 47987 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDI2SSZrr), |
| 17738 | /* 47990 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17739 | /* 47992 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17740 | /* 47995 */ GIR_RootConstrainSelectedInstOperands, |
| 17741 | /* 47996 */ // GIR_Coverage, 19876, |
| 17742 | /* 47996 */ GIR_EraseRootFromParent_Done, |
| 17743 | /* 47997 */ // Label 1126: @47997 |
| 17744 | /* 47997 */ GIM_Reject, |
| 17745 | /* 47998 */ // Label 1100: @47998 |
| 17746 | /* 47998 */ GIM_Try, /*On fail goto*//*Label 1127*/ GIMT_Encode4(48064), // Rule ID 22528 // |
| 17747 | /* 48003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17748 | /* 48006 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17749 | /* 48009 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17750 | /* 48013 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17751 | /* 48017 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17752 | /* 48021 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17753 | /* 48024 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17754 | /* 48028 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 17755 | /* 48035 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17756 | /* 48039 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17757 | /* 48041 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17758 | /* 48048 */ // (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>) => (MOVSDrm_alt:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 17759 | /* 48048 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSDrm_alt), |
| 17760 | /* 48051 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17761 | /* 48053 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17762 | /* 48057 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17763 | /* 48062 */ GIR_RootConstrainSelectedInstOperands, |
| 17764 | /* 48063 */ // GIR_Coverage, 22528, |
| 17765 | /* 48063 */ GIR_EraseRootFromParent_Done, |
| 17766 | /* 48064 */ // Label 1127: @48064 |
| 17767 | /* 48064 */ GIM_Try, /*On fail goto*//*Label 1128*/ GIMT_Encode4(48130), // Rule ID 22529 // |
| 17768 | /* 48069 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17769 | /* 48072 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17770 | /* 48075 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17771 | /* 48079 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17772 | /* 48083 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17773 | /* 48087 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17774 | /* 48090 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17775 | /* 48094 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 17776 | /* 48101 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17777 | /* 48105 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17778 | /* 48107 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17779 | /* 48114 */ // (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>) => (VMOVSDrm_alt:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 17780 | /* 48114 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDrm_alt), |
| 17781 | /* 48117 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17782 | /* 48119 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17783 | /* 48123 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17784 | /* 48128 */ GIR_RootConstrainSelectedInstOperands, |
| 17785 | /* 48129 */ // GIR_Coverage, 22529, |
| 17786 | /* 48129 */ GIR_EraseRootFromParent_Done, |
| 17787 | /* 48130 */ // Label 1128: @48130 |
| 17788 | /* 48130 */ GIM_Try, /*On fail goto*//*Label 1129*/ GIMT_Encode4(48196), // Rule ID 22530 // |
| 17789 | /* 48135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17790 | /* 48138 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17791 | /* 48141 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 17792 | /* 48145 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17793 | /* 48149 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17794 | /* 48153 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17795 | /* 48156 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17796 | /* 48160 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 17797 | /* 48167 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17798 | /* 48171 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17799 | /* 48173 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17800 | /* 48180 */ // (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>) => (VMOVSDZrm_alt:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 17801 | /* 48180 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDZrm_alt), |
| 17802 | /* 48183 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17803 | /* 48185 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17804 | /* 48189 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17805 | /* 48194 */ GIR_RootConstrainSelectedInstOperands, |
| 17806 | /* 48195 */ // GIR_Coverage, 22530, |
| 17807 | /* 48195 */ GIR_EraseRootFromParent_Done, |
| 17808 | /* 48196 */ // Label 1129: @48196 |
| 17809 | /* 48196 */ GIM_Try, /*On fail goto*//*Label 1130*/ GIMT_Encode4(48222), // Rule ID 2910 // |
| 17810 | /* 48201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17811 | /* 48204 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17812 | /* 48207 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17813 | /* 48211 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17814 | /* 48215 */ // (bitconvert:{ *:[f64] } GR64:{ *:[i64] }:$src) => (VMOV64toSDrr:{ *:[f64] } GR64:{ *:[i64] }:$src) |
| 17815 | /* 48215 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOV64toSDrr), |
| 17816 | /* 48220 */ GIR_RootConstrainSelectedInstOperands, |
| 17817 | /* 48221 */ // GIR_Coverage, 2910, |
| 17818 | /* 48221 */ GIR_Done, |
| 17819 | /* 48222 */ // Label 1130: @48222 |
| 17820 | /* 48222 */ GIM_Try, /*On fail goto*//*Label 1131*/ GIMT_Encode4(48248), // Rule ID 2914 // |
| 17821 | /* 48227 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17822 | /* 48230 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17823 | /* 48233 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17824 | /* 48237 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17825 | /* 48241 */ // (bitconvert:{ *:[f64] } GR64:{ *:[i64] }:$src) => (MOV64toSDrr:{ *:[f64] } GR64:{ *:[i64] }:$src) |
| 17826 | /* 48241 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOV64toSDrr), |
| 17827 | /* 48246 */ GIR_RootConstrainSelectedInstOperands, |
| 17828 | /* 48247 */ // GIR_Coverage, 2914, |
| 17829 | /* 48247 */ GIR_Done, |
| 17830 | /* 48248 */ // Label 1131: @48248 |
| 17831 | /* 48248 */ GIM_Try, /*On fail goto*//*Label 1132*/ GIMT_Encode4(48274), // Rule ID 2923 // |
| 17832 | /* 48253 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17833 | /* 48256 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17834 | /* 48259 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17835 | /* 48263 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17836 | /* 48267 */ // (bitconvert:{ *:[i64] } FR64:{ *:[f64] }:$src) => (VMOVSDto64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 17837 | /* 48267 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVSDto64rr), |
| 17838 | /* 48272 */ GIR_RootConstrainSelectedInstOperands, |
| 17839 | /* 48273 */ // GIR_Coverage, 2923, |
| 17840 | /* 48273 */ GIR_Done, |
| 17841 | /* 48274 */ // Label 1132: @48274 |
| 17842 | /* 48274 */ GIM_Try, /*On fail goto*//*Label 1133*/ GIMT_Encode4(48300), // Rule ID 2924 // |
| 17843 | /* 48279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17844 | /* 48282 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17845 | /* 48285 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17846 | /* 48289 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17847 | /* 48293 */ // (bitconvert:{ *:[i64] } FR64:{ *:[f64] }:$src) => (MOVSDto64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 17848 | /* 48293 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSDto64rr), |
| 17849 | /* 48298 */ GIR_RootConstrainSelectedInstOperands, |
| 17850 | /* 48299 */ // GIR_Coverage, 2924, |
| 17851 | /* 48299 */ GIR_Done, |
| 17852 | /* 48300 */ // Label 1133: @48300 |
| 17853 | /* 48300 */ GIM_Try, /*On fail goto*//*Label 1134*/ GIMT_Encode4(48326), // Rule ID 4596 // |
| 17854 | /* 48305 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17855 | /* 48308 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17856 | /* 48311 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 17857 | /* 48315 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17858 | /* 48319 */ // (bitconvert:{ *:[f64] } GR64:{ *:[i64] }:$src) => (VMOV64toSDZrr:{ *:[f64] } GR64:{ *:[i64] }:$src) |
| 17859 | /* 48319 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOV64toSDZrr), |
| 17860 | /* 48324 */ GIR_RootConstrainSelectedInstOperands, |
| 17861 | /* 48325 */ // GIR_Coverage, 4596, |
| 17862 | /* 48325 */ GIR_Done, |
| 17863 | /* 48326 */ // Label 1134: @48326 |
| 17864 | /* 48326 */ GIM_Try, /*On fail goto*//*Label 1135*/ GIMT_Encode4(48352), // Rule ID 4597 // |
| 17865 | /* 48331 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17866 | /* 48334 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17867 | /* 48337 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17868 | /* 48341 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 17869 | /* 48345 */ // (bitconvert:{ *:[i64] } FR64X:{ *:[f64] }:$src) => (VMOVSDto64Zrr:{ *:[i64] } FR64X:{ *:[f64] }:$src) |
| 17870 | /* 48345 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVSDto64Zrr), |
| 17871 | /* 48350 */ GIR_RootConstrainSelectedInstOperands, |
| 17872 | /* 48351 */ // GIR_Coverage, 4597, |
| 17873 | /* 48351 */ GIR_Done, |
| 17874 | /* 48352 */ // Label 1135: @48352 |
| 17875 | /* 48352 */ GIM_Try, /*On fail goto*//*Label 1136*/ GIMT_Encode4(48379), // Rule ID 19444 // |
| 17876 | /* 48357 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 17877 | /* 48360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17878 | /* 48364 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17879 | /* 48368 */ // (bitconvert:{ *:[i64] } VK64:{ *:[v64i1] }:$src) => (COPY_TO_REGCLASS:{ *:[i64] } VK64:{ *:[v64i1] }:$src, GR64:{ *:[i32] }) |
| 17880 | /* 48368 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17881 | /* 48373 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 17882 | /* 48378 */ // GIR_Coverage, 19444, |
| 17883 | /* 48378 */ GIR_Done, |
| 17884 | /* 48379 */ // Label 1136: @48379 |
| 17885 | /* 48379 */ GIM_Try, /*On fail goto*//*Label 1137*/ GIMT_Encode4(48423), // Rule ID 19878 // |
| 17886 | /* 48384 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 17887 | /* 48387 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 17888 | /* 48391 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17889 | /* 48395 */ // (bitconvert:{ *:[f64] } VK64:{ *:[v64i1] }:$src) => (VMOV64toSDZrr:{ *:[f64] } (KMOVQrk:{ *:[i64] } VK64:{ *:[v64i1] }:$src)) |
| 17890 | /* 48395 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 17891 | /* 48398 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVQrk), |
| 17892 | /* 48402 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17893 | /* 48407 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17894 | /* 48411 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17895 | /* 48413 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOV64toSDZrr), |
| 17896 | /* 48416 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17897 | /* 48418 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17898 | /* 48421 */ GIR_RootConstrainSelectedInstOperands, |
| 17899 | /* 48422 */ // GIR_Coverage, 19878, |
| 17900 | /* 48422 */ GIR_EraseRootFromParent_Done, |
| 17901 | /* 48423 */ // Label 1137: @48423 |
| 17902 | /* 48423 */ GIM_Reject, |
| 17903 | /* 48424 */ // Label 1101: @48424 |
| 17904 | /* 48424 */ GIM_Try, /*On fail goto*//*Label 1138*/ GIMT_Encode4(48584), |
| 17905 | /* 48429 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 17906 | /* 48432 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 17907 | /* 48436 */ GIM_Try, /*On fail goto*//*Label 1139*/ GIMT_Encode4(48509), // Rule ID 19448 // |
| 17908 | /* 48441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17909 | /* 48444 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17910 | /* 48448 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17911 | /* 48452 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17912 | /* 48455 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17913 | /* 48459 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17914 | /* 48463 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17915 | /* 48465 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17916 | /* 48472 */ // (bitconvert:{ *:[v8i1] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (COPY_TO_REGCLASS:{ *:[v8i1] } (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), VK8:{ *:[i32] }) |
| 17917 | /* 48472 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17918 | /* 48475 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 17919 | /* 48479 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17920 | /* 48484 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 17921 | /* 48488 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17922 | /* 48493 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17923 | /* 48495 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17924 | /* 48498 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17925 | /* 48500 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17926 | /* 48503 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 17927 | /* 48508 */ // GIR_Coverage, 19448, |
| 17928 | /* 48508 */ GIR_EraseRootFromParent_Done, |
| 17929 | /* 48509 */ // Label 1139: @48509 |
| 17930 | /* 48509 */ GIM_Try, /*On fail goto*//*Label 1140*/ GIMT_Encode4(48583), // Rule ID 19433 // |
| 17931 | /* 48514 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 17932 | /* 48518 */ // (bitconvert:{ *:[v8i1] } GR8:{ *:[i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i1] } (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src, sub_8bit:{ *:[i32] }), VK8:{ *:[i32] }) |
| 17933 | /* 48518 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 17934 | /* 48521 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17935 | /* 48525 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17936 | /* 48530 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 17937 | /* 48532 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17938 | /* 48535 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17939 | /* 48539 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17940 | /* 48544 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17941 | /* 48547 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17942 | /* 48551 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 17943 | /* 48554 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 17944 | /* 48559 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 17945 | /* 48564 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 17946 | /* 48569 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17947 | /* 48572 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17948 | /* 48574 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17949 | /* 48577 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 17950 | /* 48582 */ // GIR_Coverage, 19433, |
| 17951 | /* 48582 */ GIR_EraseRootFromParent_Done, |
| 17952 | /* 48583 */ // Label 1140: @48583 |
| 17953 | /* 48583 */ GIM_Reject, |
| 17954 | /* 48584 */ // Label 1138: @48584 |
| 17955 | /* 48584 */ GIM_Reject, |
| 17956 | /* 48585 */ // Label 1102: @48585 |
| 17957 | /* 48585 */ GIM_Try, /*On fail goto*//*Label 1141*/ GIMT_Encode4(48724), |
| 17958 | /* 48590 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17959 | /* 48593 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 17960 | /* 48597 */ GIM_Try, /*On fail goto*//*Label 1142*/ GIMT_Encode4(48649), // Rule ID 19449 // |
| 17961 | /* 48602 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17962 | /* 48605 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17963 | /* 48609 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17964 | /* 48613 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17965 | /* 48616 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17966 | /* 48620 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 17967 | /* 48624 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17968 | /* 48626 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17969 | /* 48633 */ // (bitconvert:{ *:[v16i1] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (KMOVWkm:{ *:[v16i1] } addr:{ *:[iPTR] }:$src) |
| 17970 | /* 48633 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWkm), |
| 17971 | /* 48636 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17972 | /* 48638 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17973 | /* 48642 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17974 | /* 48647 */ GIR_RootConstrainSelectedInstOperands, |
| 17975 | /* 48648 */ // GIR_Coverage, 19449, |
| 17976 | /* 48648 */ GIR_EraseRootFromParent_Done, |
| 17977 | /* 48649 */ // Label 1142: @48649 |
| 17978 | /* 48649 */ GIM_Try, /*On fail goto*//*Label 1143*/ GIMT_Encode4(48723), // Rule ID 19430 // |
| 17979 | /* 48654 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17980 | /* 48658 */ // (bitconvert:{ *:[v16i1] } GR16:{ *:[i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i1] } (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR16:{ *:[i16] }:$src, sub_16bit:{ *:[i32] }), VK16:{ *:[i32] }) |
| 17981 | /* 48658 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 17982 | /* 48661 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17983 | /* 48665 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17984 | /* 48670 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 17985 | /* 48672 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17986 | /* 48675 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17987 | /* 48679 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 17988 | /* 48684 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17989 | /* 48687 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17990 | /* 48691 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/4, |
| 17991 | /* 48694 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17992 | /* 48699 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17993 | /* 48704 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 17994 | /* 48709 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17995 | /* 48712 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17996 | /* 48714 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17997 | /* 48717 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 17998 | /* 48722 */ // GIR_Coverage, 19430, |
| 17999 | /* 48722 */ GIR_EraseRootFromParent_Done, |
| 18000 | /* 48723 */ // Label 1143: @48723 |
| 18001 | /* 48723 */ GIM_Reject, |
| 18002 | /* 48724 */ // Label 1141: @48724 |
| 18003 | /* 48724 */ GIM_Reject, |
| 18004 | /* 48725 */ // Label 1103: @48725 |
| 18005 | /* 48725 */ GIM_Try, /*On fail goto*//*Label 1144*/ GIMT_Encode4(48795), |
| 18006 | /* 48730 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18007 | /* 48733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 18008 | /* 48737 */ GIM_Try, /*On fail goto*//*Label 1145*/ GIMT_Encode4(48757), // Rule ID 19441 // |
| 18009 | /* 48742 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18010 | /* 48746 */ // (bitconvert:{ *:[v32i1] } GR32:{ *:[i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v32i1] } GR32:{ *:[i32] }:$src, VK32:{ *:[i32] }) |
| 18011 | /* 48746 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 18012 | /* 48751 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK32RegClassID), |
| 18013 | /* 48756 */ // GIR_Coverage, 19441, |
| 18014 | /* 48756 */ GIR_Done, |
| 18015 | /* 48757 */ // Label 1145: @48757 |
| 18016 | /* 48757 */ GIM_Try, /*On fail goto*//*Label 1146*/ GIMT_Encode4(48794), // Rule ID 19875 // |
| 18017 | /* 48762 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 18018 | /* 48766 */ // (bitconvert:{ *:[v32i1] } FR32X:{ *:[f32] }:$src) => (KMOVDkr:{ *:[v32i1] } (VMOVSS2DIZrr:{ *:[i32] } FR32X:{ *:[f32] }:$src)) |
| 18019 | /* 48766 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 18020 | /* 48769 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVSS2DIZrr), |
| 18021 | /* 48773 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 18022 | /* 48778 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 18023 | /* 48782 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 18024 | /* 48784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVDkr), |
| 18025 | /* 48787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18026 | /* 48789 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 18027 | /* 48792 */ GIR_RootConstrainSelectedInstOperands, |
| 18028 | /* 48793 */ // GIR_Coverage, 19875, |
| 18029 | /* 48793 */ GIR_EraseRootFromParent_Done, |
| 18030 | /* 48794 */ // Label 1146: @48794 |
| 18031 | /* 48794 */ GIM_Reject, |
| 18032 | /* 48795 */ // Label 1144: @48795 |
| 18033 | /* 48795 */ GIM_Reject, |
| 18034 | /* 48796 */ // Label 1104: @48796 |
| 18035 | /* 48796 */ GIM_Try, /*On fail goto*//*Label 1147*/ GIMT_Encode4(48866), |
| 18036 | /* 48801 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18037 | /* 48804 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 18038 | /* 48808 */ GIM_Try, /*On fail goto*//*Label 1148*/ GIMT_Encode4(48828), // Rule ID 19443 // |
| 18039 | /* 48813 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18040 | /* 48817 */ // (bitconvert:{ *:[v64i1] } GR64:{ *:[i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v64i1] } GR64:{ *:[i64] }:$src, VK64:{ *:[i32] }) |
| 18041 | /* 48817 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 18042 | /* 48822 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK64RegClassID), |
| 18043 | /* 48827 */ // GIR_Coverage, 19443, |
| 18044 | /* 48827 */ GIR_Done, |
| 18045 | /* 48828 */ // Label 1148: @48828 |
| 18046 | /* 48828 */ GIM_Try, /*On fail goto*//*Label 1149*/ GIMT_Encode4(48865), // Rule ID 19877 // |
| 18047 | /* 48833 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 18048 | /* 48837 */ // (bitconvert:{ *:[v64i1] } FR64X:{ *:[f64] }:$src) => (KMOVQkr:{ *:[v64i1] } (VMOVSDto64Zrr:{ *:[i64] } FR64X:{ *:[f64] }:$src)) |
| 18049 | /* 48837 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 18050 | /* 48840 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVSDto64Zrr), |
| 18051 | /* 48844 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 18052 | /* 48849 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 18053 | /* 48853 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 18054 | /* 48855 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVQkr), |
| 18055 | /* 48858 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18056 | /* 48860 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 18057 | /* 48863 */ GIR_RootConstrainSelectedInstOperands, |
| 18058 | /* 48864 */ // GIR_Coverage, 19877, |
| 18059 | /* 48864 */ GIR_EraseRootFromParent_Done, |
| 18060 | /* 48865 */ // Label 1149: @48865 |
| 18061 | /* 48865 */ GIM_Reject, |
| 18062 | /* 48866 */ // Label 1147: @48866 |
| 18063 | /* 48866 */ GIM_Reject, |
| 18064 | /* 48867 */ // Label 1105: @48867 |
| 18065 | /* 48867 */ GIM_Reject, |
| 18066 | /* 48868 */ // Label 8: @48868 |
| 18067 | /* 48868 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 1162*/ GIMT_Encode4(52045), |
| 18068 | /* 48879 */ /*GILLT_s16*//*Label 1150*/ GIMT_Encode4(48963), |
| 18069 | /* 48883 */ /*GILLT_s32*//*Label 1151*/ GIMT_Encode4(49024), |
| 18070 | /* 48887 */ /*GILLT_s64*//*Label 1152*/ GIMT_Encode4(49648), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 18071 | /* 48903 */ /*GILLT_v2s64*//*Label 1153*/ GIMT_Encode4(50272), GIMT_Encode4(0), |
| 18072 | /* 48911 */ /*GILLT_v4s32*//*Label 1154*/ GIMT_Encode4(50361), |
| 18073 | /* 48915 */ /*GILLT_v4s64*//*Label 1155*/ GIMT_Encode4(50807), GIMT_Encode4(0), |
| 18074 | /* 48923 */ /*GILLT_v8s16*//*Label 1156*/ GIMT_Encode4(50986), |
| 18075 | /* 48927 */ /*GILLT_v8s32*//*Label 1157*/ GIMT_Encode4(51075), |
| 18076 | /* 48931 */ /*GILLT_v8s64*//*Label 1158*/ GIMT_Encode4(51426), GIMT_Encode4(0), GIMT_Encode4(0), |
| 18077 | /* 48943 */ /*GILLT_v16s16*//*Label 1159*/ GIMT_Encode4(51694), |
| 18078 | /* 48947 */ /*GILLT_v16s32*//*Label 1160*/ GIMT_Encode4(51783), GIMT_Encode4(0), GIMT_Encode4(0), |
| 18079 | /* 48959 */ /*GILLT_v32s16*//*Label 1161*/ GIMT_Encode4(51956), |
| 18080 | /* 48963 */ // Label 1150: @48963 |
| 18081 | /* 48963 */ GIM_Try, /*On fail goto*//*Label 1163*/ GIMT_Encode4(49023), // Rule ID 22169 // |
| 18082 | /* 48968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 18083 | /* 48971 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 18084 | /* 48974 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 18085 | /* 48978 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 18086 | /* 48982 */ // (lrint:{ *:[i16] } FR16:{ *:[f16] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (VCVTTSH2SIZrr:{ *:[i32] } FR16:{ *:[f16] }:$src), sub_16bit:{ *:[i32] }) |
| 18087 | /* 48982 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 18088 | /* 48985 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SIZrr), |
| 18089 | /* 48989 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 18090 | /* 48994 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 18091 | /* 48998 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 18092 | /* 49000 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 18093 | /* 49003 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18094 | /* 49005 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 18095 | /* 49012 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 18096 | /* 49017 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 18097 | /* 49022 */ // GIR_Coverage, 22169, |
| 18098 | /* 49022 */ GIR_EraseRootFromParent_Done, |
| 18099 | /* 49023 */ // Label 1163: @49023 |
| 18100 | /* 49023 */ GIM_Reject, |
| 18101 | /* 49024 */ // Label 1151: @49024 |
| 18102 | /* 49024 */ GIM_Try, /*On fail goto*//*Label 1164*/ GIMT_Encode4(49083), // Rule ID 1756 // |
| 18103 | /* 49029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18104 | /* 49032 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18105 | /* 49035 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18106 | /* 49039 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18107 | /* 49043 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18108 | /* 49047 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18109 | /* 49050 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18110 | /* 49054 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18111 | /* 49058 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18112 | /* 49060 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18113 | /* 49067 */ // (lrint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 18114 | /* 49067 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SIrm), |
| 18115 | /* 49070 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18116 | /* 49072 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18117 | /* 49076 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18118 | /* 49081 */ GIR_RootConstrainSelectedInstOperands, |
| 18119 | /* 49082 */ // GIR_Coverage, 1756, |
| 18120 | /* 49082 */ GIR_EraseRootFromParent_Done, |
| 18121 | /* 49083 */ // Label 1164: @49083 |
| 18122 | /* 49083 */ GIM_Try, /*On fail goto*//*Label 1165*/ GIMT_Encode4(49142), // Rule ID 1760 // |
| 18123 | /* 49088 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18124 | /* 49091 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18125 | /* 49094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18126 | /* 49098 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18127 | /* 49102 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18128 | /* 49106 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18129 | /* 49109 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18130 | /* 49113 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18131 | /* 49117 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18132 | /* 49119 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18133 | /* 49126 */ // (lrint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 18134 | /* 49126 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SIrm), |
| 18135 | /* 49129 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18136 | /* 49131 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18137 | /* 49135 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18138 | /* 49140 */ GIR_RootConstrainSelectedInstOperands, |
| 18139 | /* 49141 */ // GIR_Coverage, 1760, |
| 18140 | /* 49141 */ GIR_EraseRootFromParent_Done, |
| 18141 | /* 49142 */ // Label 1165: @49142 |
| 18142 | /* 49142 */ GIM_Try, /*On fail goto*//*Label 1166*/ GIMT_Encode4(49201), // Rule ID 1780 // |
| 18143 | /* 49147 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 18144 | /* 49150 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18145 | /* 49153 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18146 | /* 49157 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18147 | /* 49161 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18148 | /* 49165 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18149 | /* 49168 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18150 | /* 49172 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18151 | /* 49176 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18152 | /* 49178 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18153 | /* 49185 */ // (lrint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSS2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 18154 | /* 49185 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSS2SIrm), |
| 18155 | /* 49188 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18156 | /* 49190 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18157 | /* 49194 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18158 | /* 49199 */ GIR_RootConstrainSelectedInstOperands, |
| 18159 | /* 49200 */ // GIR_Coverage, 1780, |
| 18160 | /* 49200 */ GIR_EraseRootFromParent_Done, |
| 18161 | /* 49201 */ // Label 1166: @49201 |
| 18162 | /* 49201 */ GIM_Try, /*On fail goto*//*Label 1167*/ GIMT_Encode4(49260), // Rule ID 1784 // |
| 18163 | /* 49206 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18164 | /* 49209 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18165 | /* 49212 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18166 | /* 49216 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18167 | /* 49220 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18168 | /* 49224 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18169 | /* 49227 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18170 | /* 49231 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18171 | /* 49235 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18172 | /* 49237 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18173 | /* 49244 */ // (lrint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSD2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 18174 | /* 49244 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSD2SIrm), |
| 18175 | /* 49247 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18176 | /* 49249 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18177 | /* 49253 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18178 | /* 49258 */ GIR_RootConstrainSelectedInstOperands, |
| 18179 | /* 49259 */ // GIR_Coverage, 1784, |
| 18180 | /* 49259 */ GIR_EraseRootFromParent_Done, |
| 18181 | /* 49260 */ // Label 1167: @49260 |
| 18182 | /* 49260 */ GIM_Try, /*On fail goto*//*Label 1168*/ GIMT_Encode4(49319), // Rule ID 10353 // |
| 18183 | /* 49265 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18184 | /* 49268 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18185 | /* 49271 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18186 | /* 49275 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18187 | /* 49279 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18188 | /* 49283 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18189 | /* 49286 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18190 | /* 49290 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18191 | /* 49294 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18192 | /* 49296 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18193 | /* 49303 */ // (lrint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 18194 | /* 49303 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SIZrm), |
| 18195 | /* 49306 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18196 | /* 49308 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18197 | /* 49312 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18198 | /* 49317 */ GIR_RootConstrainSelectedInstOperands, |
| 18199 | /* 49318 */ // GIR_Coverage, 10353, |
| 18200 | /* 49318 */ GIR_EraseRootFromParent_Done, |
| 18201 | /* 49319 */ // Label 1168: @49319 |
| 18202 | /* 49319 */ GIM_Try, /*On fail goto*//*Label 1169*/ GIMT_Encode4(49378), // Rule ID 10357 // |
| 18203 | /* 49324 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18204 | /* 49327 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18205 | /* 49330 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18206 | /* 49334 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18207 | /* 49338 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18208 | /* 49342 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18209 | /* 49345 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18210 | /* 49349 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18211 | /* 49353 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18212 | /* 49355 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18213 | /* 49362 */ // (lrint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 18214 | /* 49362 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SIZrm), |
| 18215 | /* 49365 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18216 | /* 49367 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18217 | /* 49371 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18218 | /* 49376 */ GIR_RootConstrainSelectedInstOperands, |
| 18219 | /* 49377 */ // GIR_Coverage, 10357, |
| 18220 | /* 49377 */ GIR_EraseRootFromParent_Done, |
| 18221 | /* 49378 */ // Label 1169: @49378 |
| 18222 | /* 49378 */ GIM_Try, /*On fail goto*//*Label 1170*/ GIMT_Encode4(49437), // Rule ID 22171 // |
| 18223 | /* 49383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 18224 | /* 49386 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 18225 | /* 49389 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18226 | /* 49393 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18227 | /* 49397 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18228 | /* 49401 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18229 | /* 49404 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18230 | /* 49408 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18231 | /* 49412 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18232 | /* 49414 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18233 | /* 49421 */ // (lrint:{ *:[i32] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 18234 | /* 49421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SIZrm), |
| 18235 | /* 49424 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18236 | /* 49426 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18237 | /* 49430 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18238 | /* 49435 */ GIR_RootConstrainSelectedInstOperands, |
| 18239 | /* 49436 */ // GIR_Coverage, 22171, |
| 18240 | /* 49436 */ GIR_EraseRootFromParent_Done, |
| 18241 | /* 49437 */ // Label 1170: @49437 |
| 18242 | /* 49437 */ GIM_Try, /*On fail goto*//*Label 1171*/ GIMT_Encode4(49467), // Rule ID 1755 // |
| 18243 | /* 49442 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18244 | /* 49445 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18245 | /* 49448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18246 | /* 49452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 18247 | /* 49456 */ // (lrint:{ *:[i32] } FR32:{ *:[f32] }:$src) => (VCVTSS2SIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 18248 | /* 49456 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SIrr), |
| 18249 | /* 49461 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18250 | /* 49465 */ GIR_RootConstrainSelectedInstOperands, |
| 18251 | /* 49466 */ // GIR_Coverage, 1755, |
| 18252 | /* 49466 */ GIR_Done, |
| 18253 | /* 49467 */ // Label 1171: @49467 |
| 18254 | /* 49467 */ GIM_Try, /*On fail goto*//*Label 1172*/ GIMT_Encode4(49497), // Rule ID 1759 // |
| 18255 | /* 49472 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18256 | /* 49475 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18257 | /* 49478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18258 | /* 49482 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 18259 | /* 49486 */ // (lrint:{ *:[i32] } FR64:{ *:[f64] }:$src) => (VCVTSD2SIrr:{ *:[i32] } FR64:{ *:[f64] }:$src) |
| 18260 | /* 49486 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SIrr), |
| 18261 | /* 49491 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18262 | /* 49495 */ GIR_RootConstrainSelectedInstOperands, |
| 18263 | /* 49496 */ // GIR_Coverage, 1759, |
| 18264 | /* 49496 */ GIR_Done, |
| 18265 | /* 49497 */ // Label 1172: @49497 |
| 18266 | /* 49497 */ GIM_Try, /*On fail goto*//*Label 1173*/ GIMT_Encode4(49527), // Rule ID 1779 // |
| 18267 | /* 49502 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 18268 | /* 49505 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18269 | /* 49508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18270 | /* 49512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 18271 | /* 49516 */ // (lrint:{ *:[i32] } FR32:{ *:[f32] }:$src) => (CVTSS2SIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 18272 | /* 49516 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSS2SIrr), |
| 18273 | /* 49521 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18274 | /* 49525 */ GIR_RootConstrainSelectedInstOperands, |
| 18275 | /* 49526 */ // GIR_Coverage, 1779, |
| 18276 | /* 49526 */ GIR_Done, |
| 18277 | /* 49527 */ // Label 1173: @49527 |
| 18278 | /* 49527 */ GIM_Try, /*On fail goto*//*Label 1174*/ GIMT_Encode4(49557), // Rule ID 1783 // |
| 18279 | /* 49532 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18280 | /* 49535 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18281 | /* 49538 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18282 | /* 49542 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 18283 | /* 49546 */ // (lrint:{ *:[i32] } FR64:{ *:[f64] }:$src) => (CVTSD2SIrr:{ *:[i32] } FR64:{ *:[f64] }:$src) |
| 18284 | /* 49546 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSD2SIrr), |
| 18285 | /* 49551 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18286 | /* 49555 */ GIR_RootConstrainSelectedInstOperands, |
| 18287 | /* 49556 */ // GIR_Coverage, 1783, |
| 18288 | /* 49556 */ GIR_Done, |
| 18289 | /* 49557 */ // Label 1174: @49557 |
| 18290 | /* 49557 */ GIM_Try, /*On fail goto*//*Label 1175*/ GIMT_Encode4(49587), // Rule ID 10352 // |
| 18291 | /* 49562 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18292 | /* 49565 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18293 | /* 49568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18294 | /* 49572 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 18295 | /* 49576 */ // (lrint:{ *:[i32] } FR32X:{ *:[f32] }:$src) => (VCVTSS2SIZrr:{ *:[i32] } FR32X:{ *:[f32] }:$src) |
| 18296 | /* 49576 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SIZrr), |
| 18297 | /* 49581 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18298 | /* 49585 */ GIR_RootConstrainSelectedInstOperands, |
| 18299 | /* 49586 */ // GIR_Coverage, 10352, |
| 18300 | /* 49586 */ GIR_Done, |
| 18301 | /* 49587 */ // Label 1175: @49587 |
| 18302 | /* 49587 */ GIM_Try, /*On fail goto*//*Label 1176*/ GIMT_Encode4(49617), // Rule ID 10356 // |
| 18303 | /* 49592 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18304 | /* 49595 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18305 | /* 49598 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18306 | /* 49602 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 18307 | /* 49606 */ // (lrint:{ *:[i32] } FR64X:{ *:[f64] }:$src) => (VCVTSD2SIZrr:{ *:[i32] } FR64X:{ *:[f64] }:$src) |
| 18308 | /* 49606 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SIZrr), |
| 18309 | /* 49611 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18310 | /* 49615 */ GIR_RootConstrainSelectedInstOperands, |
| 18311 | /* 49616 */ // GIR_Coverage, 10356, |
| 18312 | /* 49616 */ GIR_Done, |
| 18313 | /* 49617 */ // Label 1176: @49617 |
| 18314 | /* 49617 */ GIM_Try, /*On fail goto*//*Label 1177*/ GIMT_Encode4(49647), // Rule ID 22170 // |
| 18315 | /* 49622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 18316 | /* 49625 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 18317 | /* 49628 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18318 | /* 49632 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 18319 | /* 49636 */ // (lrint:{ *:[i32] } FR16:{ *:[f16] }:$src) => (VCVTTSH2SIZrr:{ *:[i32] } FR16:{ *:[f16] }:$src) |
| 18320 | /* 49636 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SIZrr), |
| 18321 | /* 49641 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18322 | /* 49645 */ GIR_RootConstrainSelectedInstOperands, |
| 18323 | /* 49646 */ // GIR_Coverage, 22170, |
| 18324 | /* 49646 */ GIR_Done, |
| 18325 | /* 49647 */ // Label 1177: @49647 |
| 18326 | /* 49647 */ GIM_Reject, |
| 18327 | /* 49648 */ // Label 1152: @49648 |
| 18328 | /* 49648 */ GIM_Try, /*On fail goto*//*Label 1178*/ GIMT_Encode4(49707), // Rule ID 17990 // |
| 18329 | /* 49653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18330 | /* 49656 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18331 | /* 49659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18332 | /* 49663 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18333 | /* 49667 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18334 | /* 49671 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18335 | /* 49674 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18336 | /* 49678 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18337 | /* 49682 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18338 | /* 49684 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18339 | /* 49691 */ // (lrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18340 | /* 49691 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64rm), |
| 18341 | /* 49694 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18342 | /* 49696 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18343 | /* 49700 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18344 | /* 49705 */ GIR_RootConstrainSelectedInstOperands, |
| 18345 | /* 49706 */ // GIR_Coverage, 17990, |
| 18346 | /* 49706 */ GIR_EraseRootFromParent_Done, |
| 18347 | /* 49707 */ // Label 1178: @49707 |
| 18348 | /* 49707 */ GIM_Try, /*On fail goto*//*Label 1179*/ GIMT_Encode4(49766), // Rule ID 17992 // |
| 18349 | /* 49712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18350 | /* 49715 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18351 | /* 49718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18352 | /* 49722 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18353 | /* 49726 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18354 | /* 49730 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18355 | /* 49733 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18356 | /* 49737 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18357 | /* 49741 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18358 | /* 49743 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18359 | /* 49750 */ // (lrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18360 | /* 49750 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64rm), |
| 18361 | /* 49753 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18362 | /* 49755 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18363 | /* 49759 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18364 | /* 49764 */ GIR_RootConstrainSelectedInstOperands, |
| 18365 | /* 49765 */ // GIR_Coverage, 17992, |
| 18366 | /* 49765 */ GIR_EraseRootFromParent_Done, |
| 18367 | /* 49766 */ // Label 1179: @49766 |
| 18368 | /* 49766 */ GIM_Try, /*On fail goto*//*Label 1180*/ GIMT_Encode4(49825), // Rule ID 17994 // |
| 18369 | /* 49771 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 18370 | /* 49774 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18371 | /* 49777 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18372 | /* 49781 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18373 | /* 49785 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18374 | /* 49789 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18375 | /* 49792 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18376 | /* 49796 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18377 | /* 49800 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18378 | /* 49802 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18379 | /* 49809 */ // (lrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18380 | /* 49809 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSS2SI64rm), |
| 18381 | /* 49812 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18382 | /* 49814 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18383 | /* 49818 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18384 | /* 49823 */ GIR_RootConstrainSelectedInstOperands, |
| 18385 | /* 49824 */ // GIR_Coverage, 17994, |
| 18386 | /* 49824 */ GIR_EraseRootFromParent_Done, |
| 18387 | /* 49825 */ // Label 1180: @49825 |
| 18388 | /* 49825 */ GIM_Try, /*On fail goto*//*Label 1181*/ GIMT_Encode4(49884), // Rule ID 17996 // |
| 18389 | /* 49830 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18390 | /* 49833 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18391 | /* 49836 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18392 | /* 49840 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18393 | /* 49844 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18394 | /* 49848 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18395 | /* 49851 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18396 | /* 49855 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18397 | /* 49859 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18398 | /* 49861 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18399 | /* 49868 */ // (lrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18400 | /* 49868 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSD2SI64rm), |
| 18401 | /* 49871 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18402 | /* 49873 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18403 | /* 49877 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18404 | /* 49882 */ GIR_RootConstrainSelectedInstOperands, |
| 18405 | /* 49883 */ // GIR_Coverage, 17996, |
| 18406 | /* 49883 */ GIR_EraseRootFromParent_Done, |
| 18407 | /* 49884 */ // Label 1181: @49884 |
| 18408 | /* 49884 */ GIM_Try, /*On fail goto*//*Label 1182*/ GIMT_Encode4(49943), // Rule ID 21160 // |
| 18409 | /* 49889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18410 | /* 49892 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18411 | /* 49895 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18412 | /* 49899 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18413 | /* 49903 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18414 | /* 49907 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18415 | /* 49910 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18416 | /* 49914 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18417 | /* 49918 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18418 | /* 49920 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18419 | /* 49927 */ // (lrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18420 | /* 49927 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64Zrm), |
| 18421 | /* 49930 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18422 | /* 49932 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18423 | /* 49936 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18424 | /* 49941 */ GIR_RootConstrainSelectedInstOperands, |
| 18425 | /* 49942 */ // GIR_Coverage, 21160, |
| 18426 | /* 49942 */ GIR_EraseRootFromParent_Done, |
| 18427 | /* 49943 */ // Label 1182: @49943 |
| 18428 | /* 49943 */ GIM_Try, /*On fail goto*//*Label 1183*/ GIMT_Encode4(50002), // Rule ID 21162 // |
| 18429 | /* 49948 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18430 | /* 49951 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18431 | /* 49954 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18432 | /* 49958 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18433 | /* 49962 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18434 | /* 49966 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18435 | /* 49969 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18436 | /* 49973 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18437 | /* 49977 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18438 | /* 49979 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18439 | /* 49986 */ // (lrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18440 | /* 49986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64Zrm), |
| 18441 | /* 49989 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18442 | /* 49991 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18443 | /* 49995 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18444 | /* 50000 */ GIR_RootConstrainSelectedInstOperands, |
| 18445 | /* 50001 */ // GIR_Coverage, 21162, |
| 18446 | /* 50001 */ GIR_EraseRootFromParent_Done, |
| 18447 | /* 50002 */ // Label 1183: @50002 |
| 18448 | /* 50002 */ GIM_Try, /*On fail goto*//*Label 1184*/ GIMT_Encode4(50061), // Rule ID 22173 // |
| 18449 | /* 50007 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_In64BitMode), |
| 18450 | /* 50010 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 18451 | /* 50013 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18452 | /* 50017 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18453 | /* 50021 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18454 | /* 50025 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18455 | /* 50028 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18456 | /* 50032 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18457 | /* 50036 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18458 | /* 50038 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18459 | /* 50045 */ // (lrint:{ *:[i64] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18460 | /* 50045 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrm), |
| 18461 | /* 50048 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18462 | /* 50050 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18463 | /* 50054 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18464 | /* 50059 */ GIR_RootConstrainSelectedInstOperands, |
| 18465 | /* 50060 */ // GIR_Coverage, 22173, |
| 18466 | /* 50060 */ GIR_EraseRootFromParent_Done, |
| 18467 | /* 50061 */ // Label 1184: @50061 |
| 18468 | /* 50061 */ GIM_Try, /*On fail goto*//*Label 1185*/ GIMT_Encode4(50091), // Rule ID 17989 // |
| 18469 | /* 50066 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18470 | /* 50069 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18471 | /* 50072 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18472 | /* 50076 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 18473 | /* 50080 */ // (lrint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (VCVTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 18474 | /* 50080 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64rr), |
| 18475 | /* 50085 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18476 | /* 50089 */ GIR_RootConstrainSelectedInstOperands, |
| 18477 | /* 50090 */ // GIR_Coverage, 17989, |
| 18478 | /* 50090 */ GIR_Done, |
| 18479 | /* 50091 */ // Label 1185: @50091 |
| 18480 | /* 50091 */ GIM_Try, /*On fail goto*//*Label 1186*/ GIMT_Encode4(50121), // Rule ID 17991 // |
| 18481 | /* 50096 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18482 | /* 50099 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18483 | /* 50102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18484 | /* 50106 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 18485 | /* 50110 */ // (lrint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (VCVTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 18486 | /* 50110 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64rr), |
| 18487 | /* 50115 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18488 | /* 50119 */ GIR_RootConstrainSelectedInstOperands, |
| 18489 | /* 50120 */ // GIR_Coverage, 17991, |
| 18490 | /* 50120 */ GIR_Done, |
| 18491 | /* 50121 */ // Label 1186: @50121 |
| 18492 | /* 50121 */ GIM_Try, /*On fail goto*//*Label 1187*/ GIMT_Encode4(50151), // Rule ID 17993 // |
| 18493 | /* 50126 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 18494 | /* 50129 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18495 | /* 50132 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18496 | /* 50136 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 18497 | /* 50140 */ // (lrint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (CVTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 18498 | /* 50140 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSS2SI64rr), |
| 18499 | /* 50145 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18500 | /* 50149 */ GIR_RootConstrainSelectedInstOperands, |
| 18501 | /* 50150 */ // GIR_Coverage, 17993, |
| 18502 | /* 50150 */ GIR_Done, |
| 18503 | /* 50151 */ // Label 1187: @50151 |
| 18504 | /* 50151 */ GIM_Try, /*On fail goto*//*Label 1188*/ GIMT_Encode4(50181), // Rule ID 17995 // |
| 18505 | /* 50156 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18506 | /* 50159 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18507 | /* 50162 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18508 | /* 50166 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 18509 | /* 50170 */ // (lrint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (CVTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 18510 | /* 50170 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSD2SI64rr), |
| 18511 | /* 50175 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18512 | /* 50179 */ GIR_RootConstrainSelectedInstOperands, |
| 18513 | /* 50180 */ // GIR_Coverage, 17995, |
| 18514 | /* 50180 */ GIR_Done, |
| 18515 | /* 50181 */ // Label 1188: @50181 |
| 18516 | /* 50181 */ GIM_Try, /*On fail goto*//*Label 1189*/ GIMT_Encode4(50211), // Rule ID 21159 // |
| 18517 | /* 50186 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18518 | /* 50189 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18519 | /* 50192 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18520 | /* 50196 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 18521 | /* 50200 */ // (lrint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (VCVTSS2SI64Zrr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 18522 | /* 50200 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64Zrr), |
| 18523 | /* 50205 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18524 | /* 50209 */ GIR_RootConstrainSelectedInstOperands, |
| 18525 | /* 50210 */ // GIR_Coverage, 21159, |
| 18526 | /* 50210 */ GIR_Done, |
| 18527 | /* 50211 */ // Label 1189: @50211 |
| 18528 | /* 50211 */ GIM_Try, /*On fail goto*//*Label 1190*/ GIMT_Encode4(50241), // Rule ID 21161 // |
| 18529 | /* 50216 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18530 | /* 50219 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18531 | /* 50222 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18532 | /* 50226 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 18533 | /* 50230 */ // (lrint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (VCVTSD2SI64Zrr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 18534 | /* 50230 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64Zrr), |
| 18535 | /* 50235 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18536 | /* 50239 */ GIR_RootConstrainSelectedInstOperands, |
| 18537 | /* 50240 */ // GIR_Coverage, 21161, |
| 18538 | /* 50240 */ GIR_Done, |
| 18539 | /* 50241 */ // Label 1190: @50241 |
| 18540 | /* 50241 */ GIM_Try, /*On fail goto*//*Label 1191*/ GIMT_Encode4(50271), // Rule ID 22172 // |
| 18541 | /* 50246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_In64BitMode), |
| 18542 | /* 50249 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 18543 | /* 50252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18544 | /* 50256 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 18545 | /* 50260 */ // (lrint:{ *:[i64] } FR16:{ *:[f16] }:$src) => (VCVTTSH2SI64Zrr:{ *:[i64] } FR16:{ *:[f16] }:$src) |
| 18546 | /* 50260 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrr), |
| 18547 | /* 50265 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18548 | /* 50269 */ GIR_RootConstrainSelectedInstOperands, |
| 18549 | /* 50270 */ // GIR_Coverage, 22172, |
| 18550 | /* 50270 */ GIR_Done, |
| 18551 | /* 50271 */ // Label 1191: @50271 |
| 18552 | /* 50271 */ GIM_Reject, |
| 18553 | /* 50272 */ // Label 1153: @50272 |
| 18554 | /* 50272 */ GIM_Try, /*On fail goto*//*Label 1192*/ GIMT_Encode4(50360), |
| 18555 | /* 50277 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 18556 | /* 50280 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18557 | /* 50284 */ GIM_Try, /*On fail goto*//*Label 1193*/ GIMT_Encode4(50336), // Rule ID 21385 // |
| 18558 | /* 50289 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18559 | /* 50292 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18560 | /* 50296 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18561 | /* 50300 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18562 | /* 50303 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18563 | /* 50307 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18564 | /* 50311 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18565 | /* 50313 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18566 | /* 50320 */ // (lrint:{ *:[v2i64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZ128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 18567 | /* 50320 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ128rm), |
| 18568 | /* 50323 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18569 | /* 50325 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18570 | /* 50329 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18571 | /* 50334 */ GIR_RootConstrainSelectedInstOperands, |
| 18572 | /* 50335 */ // GIR_Coverage, 21385, |
| 18573 | /* 50335 */ GIR_EraseRootFromParent_Done, |
| 18574 | /* 50336 */ // Label 1193: @50336 |
| 18575 | /* 50336 */ GIM_Try, /*On fail goto*//*Label 1194*/ GIMT_Encode4(50359), // Rule ID 21384 // |
| 18576 | /* 50341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18577 | /* 50344 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18578 | /* 50348 */ // (lrint:{ *:[v2i64] } VR128X:{ *:[v2f64] }:$src) => (VCVTPD2QQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2f64] }:$src) |
| 18579 | /* 50348 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ128rr), |
| 18580 | /* 50353 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18581 | /* 50357 */ GIR_RootConstrainSelectedInstOperands, |
| 18582 | /* 50358 */ // GIR_Coverage, 21384, |
| 18583 | /* 50358 */ GIR_Done, |
| 18584 | /* 50359 */ // Label 1194: @50359 |
| 18585 | /* 50359 */ GIM_Reject, |
| 18586 | /* 50360 */ // Label 1192: @50360 |
| 18587 | /* 50360 */ GIM_Reject, |
| 18588 | /* 50361 */ // Label 1154: @50361 |
| 18589 | /* 50361 */ GIM_Try, /*On fail goto*//*Label 1195*/ GIMT_Encode4(50420), // Rule ID 18044 // |
| 18590 | /* 50366 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18591 | /* 50369 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18592 | /* 50372 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18593 | /* 50376 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18594 | /* 50380 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18595 | /* 50384 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18596 | /* 50387 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18597 | /* 50391 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18598 | /* 50395 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18599 | /* 50397 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18600 | /* 50404 */ // (lrint:{ *:[v4i32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2DQrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 18601 | /* 50404 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQrm), |
| 18602 | /* 50407 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18603 | /* 50409 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18604 | /* 50413 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18605 | /* 50418 */ GIR_RootConstrainSelectedInstOperands, |
| 18606 | /* 50419 */ // GIR_Coverage, 18044, |
| 18607 | /* 50419 */ GIR_EraseRootFromParent_Done, |
| 18608 | /* 50420 */ // Label 1195: @50420 |
| 18609 | /* 50420 */ GIM_Try, /*On fail goto*//*Label 1196*/ GIMT_Encode4(50479), // Rule ID 18048 // |
| 18610 | /* 50425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18611 | /* 50428 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18612 | /* 50431 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18613 | /* 50435 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18614 | /* 50439 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18615 | /* 50443 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18616 | /* 50446 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18617 | /* 50450 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18618 | /* 50454 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18619 | /* 50456 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18620 | /* 50463 */ // (lrint:{ *:[v4i32] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2DQYrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 18621 | /* 50463 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQYrm), |
| 18622 | /* 50466 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18623 | /* 50468 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18624 | /* 50472 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18625 | /* 50477 */ GIR_RootConstrainSelectedInstOperands, |
| 18626 | /* 50478 */ // GIR_Coverage, 18048, |
| 18627 | /* 50478 */ GIR_EraseRootFromParent_Done, |
| 18628 | /* 50479 */ // Label 1196: @50479 |
| 18629 | /* 50479 */ GIM_Try, /*On fail goto*//*Label 1197*/ GIMT_Encode4(50538), // Rule ID 18050 // |
| 18630 | /* 50484 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18631 | /* 50487 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18632 | /* 50490 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18633 | /* 50494 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18634 | /* 50498 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18635 | /* 50502 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18636 | /* 50505 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18637 | /* 50509 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18638 | /* 50513 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18639 | /* 50515 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18640 | /* 50522 */ // (lrint:{ *:[v4i32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTPS2DQrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 18641 | /* 50522 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTPS2DQrm), |
| 18642 | /* 50525 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18643 | /* 50527 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18644 | /* 50531 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18645 | /* 50536 */ GIR_RootConstrainSelectedInstOperands, |
| 18646 | /* 50537 */ // GIR_Coverage, 18050, |
| 18647 | /* 50537 */ GIR_EraseRootFromParent_Done, |
| 18648 | /* 50538 */ // Label 1197: @50538 |
| 18649 | /* 50538 */ GIM_Try, /*On fail goto*//*Label 1198*/ GIMT_Encode4(50597), // Rule ID 21357 // |
| 18650 | /* 50543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18651 | /* 50546 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18652 | /* 50549 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18653 | /* 50553 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18654 | /* 50557 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18655 | /* 50561 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18656 | /* 50564 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18657 | /* 50568 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18658 | /* 50572 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18659 | /* 50574 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18660 | /* 50581 */ // (lrint:{ *:[v4i32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2DQZ128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 18661 | /* 50581 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZ128rm), |
| 18662 | /* 50584 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18663 | /* 50586 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18664 | /* 50590 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18665 | /* 50595 */ GIR_RootConstrainSelectedInstOperands, |
| 18666 | /* 50596 */ // GIR_Coverage, 21357, |
| 18667 | /* 50596 */ GIR_EraseRootFromParent_Done, |
| 18668 | /* 50597 */ // Label 1198: @50597 |
| 18669 | /* 50597 */ GIM_Try, /*On fail goto*//*Label 1199*/ GIMT_Encode4(50656), // Rule ID 21361 // |
| 18670 | /* 50602 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18671 | /* 50605 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18672 | /* 50608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18673 | /* 50612 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18674 | /* 50616 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18675 | /* 50620 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18676 | /* 50623 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18677 | /* 50627 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18678 | /* 50631 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18679 | /* 50633 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18680 | /* 50640 */ // (lrint:{ *:[v4i32] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2DQZ256rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 18681 | /* 50640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQZ256rm), |
| 18682 | /* 50643 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18683 | /* 50645 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18684 | /* 50649 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18685 | /* 50654 */ GIR_RootConstrainSelectedInstOperands, |
| 18686 | /* 50655 */ // GIR_Coverage, 21361, |
| 18687 | /* 50655 */ GIR_EraseRootFromParent_Done, |
| 18688 | /* 50656 */ // Label 1199: @50656 |
| 18689 | /* 50656 */ GIM_Try, /*On fail goto*//*Label 1200*/ GIMT_Encode4(50686), // Rule ID 18043 // |
| 18690 | /* 50661 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18691 | /* 50664 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18692 | /* 50667 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18693 | /* 50671 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18694 | /* 50675 */ // (lrint:{ *:[v4i32] } VR128:{ *:[v4f32] }:$src) => (VCVTPS2DQrr:{ *:[v4i32] } VR128:{ *:[v4f32] }:$src) |
| 18695 | /* 50675 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQrr), |
| 18696 | /* 50680 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18697 | /* 50684 */ GIR_RootConstrainSelectedInstOperands, |
| 18698 | /* 50685 */ // GIR_Coverage, 18043, |
| 18699 | /* 50685 */ GIR_Done, |
| 18700 | /* 50686 */ // Label 1200: @50686 |
| 18701 | /* 50686 */ GIM_Try, /*On fail goto*//*Label 1201*/ GIMT_Encode4(50716), // Rule ID 18047 // |
| 18702 | /* 50691 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18703 | /* 50694 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18704 | /* 50697 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18705 | /* 50701 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 18706 | /* 50705 */ // (lrint:{ *:[v4i32] } VR256:{ *:[v4f64] }:$src) => (VCVTPD2DQYrr:{ *:[v4i32] } VR256:{ *:[v4f64] }:$src) |
| 18707 | /* 50705 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQYrr), |
| 18708 | /* 50710 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18709 | /* 50714 */ GIR_RootConstrainSelectedInstOperands, |
| 18710 | /* 50715 */ // GIR_Coverage, 18047, |
| 18711 | /* 50715 */ GIR_Done, |
| 18712 | /* 50716 */ // Label 1201: @50716 |
| 18713 | /* 50716 */ GIM_Try, /*On fail goto*//*Label 1202*/ GIMT_Encode4(50746), // Rule ID 18049 // |
| 18714 | /* 50721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18715 | /* 50724 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18716 | /* 50727 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18717 | /* 50731 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18718 | /* 50735 */ // (lrint:{ *:[v4i32] } VR128:{ *:[v4f32] }:$src) => (CVTPS2DQrr:{ *:[v4i32] } VR128:{ *:[v4f32] }:$src) |
| 18719 | /* 50735 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTPS2DQrr), |
| 18720 | /* 50740 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18721 | /* 50744 */ GIR_RootConstrainSelectedInstOperands, |
| 18722 | /* 50745 */ // GIR_Coverage, 18049, |
| 18723 | /* 50745 */ GIR_Done, |
| 18724 | /* 50746 */ // Label 1202: @50746 |
| 18725 | /* 50746 */ GIM_Try, /*On fail goto*//*Label 1203*/ GIMT_Encode4(50776), // Rule ID 21356 // |
| 18726 | /* 50751 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18727 | /* 50754 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18728 | /* 50757 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18729 | /* 50761 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18730 | /* 50765 */ // (lrint:{ *:[v4i32] } VR128X:{ *:[v4f32] }:$src) => (VCVTPS2DQZ128rr:{ *:[v4i32] } VR128X:{ *:[v4f32] }:$src) |
| 18731 | /* 50765 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZ128rr), |
| 18732 | /* 50770 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18733 | /* 50774 */ GIR_RootConstrainSelectedInstOperands, |
| 18734 | /* 50775 */ // GIR_Coverage, 21356, |
| 18735 | /* 50775 */ GIR_Done, |
| 18736 | /* 50776 */ // Label 1203: @50776 |
| 18737 | /* 50776 */ GIM_Try, /*On fail goto*//*Label 1204*/ GIMT_Encode4(50806), // Rule ID 21360 // |
| 18738 | /* 50781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18739 | /* 50784 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18740 | /* 50787 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18741 | /* 50791 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18742 | /* 50795 */ // (lrint:{ *:[v4i32] } VR256X:{ *:[v4f64] }:$src) => (VCVTPD2DQZ256rr:{ *:[v4i32] } VR256X:{ *:[v4f64] }:$src) |
| 18743 | /* 50795 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQZ256rr), |
| 18744 | /* 50800 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18745 | /* 50804 */ GIR_RootConstrainSelectedInstOperands, |
| 18746 | /* 50805 */ // GIR_Coverage, 21360, |
| 18747 | /* 50805 */ GIR_Done, |
| 18748 | /* 50806 */ // Label 1204: @50806 |
| 18749 | /* 50806 */ GIM_Reject, |
| 18750 | /* 50807 */ // Label 1155: @50807 |
| 18751 | /* 50807 */ GIM_Try, /*On fail goto*//*Label 1205*/ GIMT_Encode4(50866), // Rule ID 21381 // |
| 18752 | /* 50812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18753 | /* 50815 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18754 | /* 50818 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18755 | /* 50822 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18756 | /* 50826 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18757 | /* 50830 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18758 | /* 50833 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18759 | /* 50837 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18760 | /* 50841 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18761 | /* 50843 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18762 | /* 50850 */ // (lrint:{ *:[v4i64] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2QQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 18763 | /* 50850 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZ256rm), |
| 18764 | /* 50853 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18765 | /* 50855 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18766 | /* 50859 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18767 | /* 50864 */ GIR_RootConstrainSelectedInstOperands, |
| 18768 | /* 50865 */ // GIR_Coverage, 21381, |
| 18769 | /* 50865 */ GIR_EraseRootFromParent_Done, |
| 18770 | /* 50866 */ // Label 1205: @50866 |
| 18771 | /* 50866 */ GIM_Try, /*On fail goto*//*Label 1206*/ GIMT_Encode4(50925), // Rule ID 21387 // |
| 18772 | /* 50871 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18773 | /* 50874 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18774 | /* 50877 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18775 | /* 50881 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18776 | /* 50885 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18777 | /* 50889 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18778 | /* 50892 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18779 | /* 50896 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18780 | /* 50900 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18781 | /* 50902 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18782 | /* 50909 */ // (lrint:{ *:[v4i64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 18783 | /* 50909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ256rm), |
| 18784 | /* 50912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18785 | /* 50914 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18786 | /* 50918 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18787 | /* 50923 */ GIR_RootConstrainSelectedInstOperands, |
| 18788 | /* 50924 */ // GIR_Coverage, 21387, |
| 18789 | /* 50924 */ GIR_EraseRootFromParent_Done, |
| 18790 | /* 50925 */ // Label 1206: @50925 |
| 18791 | /* 50925 */ GIM_Try, /*On fail goto*//*Label 1207*/ GIMT_Encode4(50955), // Rule ID 21380 // |
| 18792 | /* 50930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18793 | /* 50933 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18794 | /* 50936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18795 | /* 50940 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18796 | /* 50944 */ // (lrint:{ *:[v4i64] } VR128X:{ *:[v4f32] }:$src) => (VCVTPS2QQZ256rr:{ *:[v4i64] } VR128X:{ *:[v4f32] }:$src) |
| 18797 | /* 50944 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZ256rr), |
| 18798 | /* 50949 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18799 | /* 50953 */ GIR_RootConstrainSelectedInstOperands, |
| 18800 | /* 50954 */ // GIR_Coverage, 21380, |
| 18801 | /* 50954 */ GIR_Done, |
| 18802 | /* 50955 */ // Label 1207: @50955 |
| 18803 | /* 50955 */ GIM_Try, /*On fail goto*//*Label 1208*/ GIMT_Encode4(50985), // Rule ID 21386 // |
| 18804 | /* 50960 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18805 | /* 50963 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18806 | /* 50966 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18807 | /* 50970 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18808 | /* 50974 */ // (lrint:{ *:[v4i64] } VR256X:{ *:[v4f64] }:$src) => (VCVTPD2QQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4f64] }:$src) |
| 18809 | /* 50974 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ256rr), |
| 18810 | /* 50979 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18811 | /* 50983 */ GIR_RootConstrainSelectedInstOperands, |
| 18812 | /* 50984 */ // GIR_Coverage, 21386, |
| 18813 | /* 50984 */ GIR_Done, |
| 18814 | /* 50985 */ // Label 1208: @50985 |
| 18815 | /* 50985 */ GIM_Reject, |
| 18816 | /* 50986 */ // Label 1156: @50986 |
| 18817 | /* 50986 */ GIM_Try, /*On fail goto*//*Label 1209*/ GIMT_Encode4(51074), |
| 18818 | /* 50991 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18819 | /* 50994 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18820 | /* 50998 */ GIM_Try, /*On fail goto*//*Label 1210*/ GIMT_Encode4(51050), // Rule ID 22156 // |
| 18821 | /* 51003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 18822 | /* 51006 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18823 | /* 51010 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18824 | /* 51014 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18825 | /* 51017 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18826 | /* 51021 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18827 | /* 51025 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18828 | /* 51027 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18829 | /* 51034 */ // (lrint:{ *:[v8i16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2WZ128rm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 18830 | /* 51034 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZ128rm), |
| 18831 | /* 51037 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18832 | /* 51039 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18833 | /* 51043 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18834 | /* 51048 */ GIR_RootConstrainSelectedInstOperands, |
| 18835 | /* 51049 */ // GIR_Coverage, 22156, |
| 18836 | /* 51049 */ GIR_EraseRootFromParent_Done, |
| 18837 | /* 51050 */ // Label 1210: @51050 |
| 18838 | /* 51050 */ GIM_Try, /*On fail goto*//*Label 1211*/ GIMT_Encode4(51073), // Rule ID 22155 // |
| 18839 | /* 51055 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 18840 | /* 51058 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18841 | /* 51062 */ // (lrint:{ *:[v8i16] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2WZ128rr:{ *:[v8i16] } VR128X:{ *:[v8f16] }:$src) |
| 18842 | /* 51062 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZ128rr), |
| 18843 | /* 51067 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18844 | /* 51071 */ GIR_RootConstrainSelectedInstOperands, |
| 18845 | /* 51072 */ // GIR_Coverage, 22155, |
| 18846 | /* 51072 */ GIR_Done, |
| 18847 | /* 51073 */ // Label 1211: @51073 |
| 18848 | /* 51073 */ GIM_Reject, |
| 18849 | /* 51074 */ // Label 1209: @51074 |
| 18850 | /* 51074 */ GIM_Reject, |
| 18851 | /* 51075 */ // Label 1157: @51075 |
| 18852 | /* 51075 */ GIM_Try, /*On fail goto*//*Label 1212*/ GIMT_Encode4(51134), // Rule ID 18046 // |
| 18853 | /* 51080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18854 | /* 51083 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18855 | /* 51086 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 18856 | /* 51090 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18857 | /* 51094 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18858 | /* 51098 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18859 | /* 51101 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18860 | /* 51105 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18861 | /* 51109 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18862 | /* 51111 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18863 | /* 51118 */ // (lrint:{ *:[v8i32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2DQYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 18864 | /* 51118 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQYrm), |
| 18865 | /* 51121 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18866 | /* 51123 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18867 | /* 51127 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18868 | /* 51132 */ GIR_RootConstrainSelectedInstOperands, |
| 18869 | /* 51133 */ // GIR_Coverage, 18046, |
| 18870 | /* 51133 */ GIR_EraseRootFromParent_Done, |
| 18871 | /* 51134 */ // Label 1212: @51134 |
| 18872 | /* 51134 */ GIM_Try, /*On fail goto*//*Label 1213*/ GIMT_Encode4(51193), // Rule ID 21359 // |
| 18873 | /* 51139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18874 | /* 51142 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18875 | /* 51145 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18876 | /* 51149 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18877 | /* 51153 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18878 | /* 51157 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18879 | /* 51160 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18880 | /* 51164 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18881 | /* 51168 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18882 | /* 51170 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18883 | /* 51177 */ // (lrint:{ *:[v8i32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2DQZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 18884 | /* 51177 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZ256rm), |
| 18885 | /* 51180 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18886 | /* 51182 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18887 | /* 51186 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18888 | /* 51191 */ GIR_RootConstrainSelectedInstOperands, |
| 18889 | /* 51192 */ // GIR_Coverage, 21359, |
| 18890 | /* 51192 */ GIR_EraseRootFromParent_Done, |
| 18891 | /* 51193 */ // Label 1213: @51193 |
| 18892 | /* 51193 */ GIM_Try, /*On fail goto*//*Label 1214*/ GIMT_Encode4(51249), // Rule ID 21365 // |
| 18893 | /* 51198 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 18894 | /* 51201 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18895 | /* 51205 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18896 | /* 51209 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18897 | /* 51213 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18898 | /* 51216 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18899 | /* 51220 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18900 | /* 51224 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18901 | /* 51226 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18902 | /* 51233 */ // (lrint:{ *:[v8i32] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2DQZrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 18903 | /* 51233 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQZrm), |
| 18904 | /* 51236 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18905 | /* 51238 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18906 | /* 51242 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18907 | /* 51247 */ GIR_RootConstrainSelectedInstOperands, |
| 18908 | /* 51248 */ // GIR_Coverage, 21365, |
| 18909 | /* 51248 */ GIR_EraseRootFromParent_Done, |
| 18910 | /* 51249 */ // Label 1214: @51249 |
| 18911 | /* 51249 */ GIM_Try, /*On fail goto*//*Label 1215*/ GIMT_Encode4(51308), // Rule ID 22160 // |
| 18912 | /* 51254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 18913 | /* 51257 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18914 | /* 51260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18915 | /* 51264 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18916 | /* 51268 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18917 | /* 51272 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18918 | /* 51275 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18919 | /* 51279 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18920 | /* 51283 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18921 | /* 51285 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18922 | /* 51292 */ // (lrint:{ *:[v8i32] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2DQZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 18923 | /* 51292 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2DQZ256rm), |
| 18924 | /* 51295 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18925 | /* 51297 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18926 | /* 51301 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18927 | /* 51306 */ GIR_RootConstrainSelectedInstOperands, |
| 18928 | /* 51307 */ // GIR_Coverage, 22160, |
| 18929 | /* 51307 */ GIR_EraseRootFromParent_Done, |
| 18930 | /* 51308 */ // Label 1215: @51308 |
| 18931 | /* 51308 */ GIM_Try, /*On fail goto*//*Label 1216*/ GIMT_Encode4(51338), // Rule ID 18045 // |
| 18932 | /* 51313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18933 | /* 51316 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18934 | /* 51319 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 18935 | /* 51323 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 18936 | /* 51327 */ // (lrint:{ *:[v8i32] } VR256:{ *:[v8f32] }:$src) => (VCVTPS2DQYrr:{ *:[v8i32] } VR256:{ *:[v8f32] }:$src) |
| 18937 | /* 51327 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQYrr), |
| 18938 | /* 51332 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18939 | /* 51336 */ GIR_RootConstrainSelectedInstOperands, |
| 18940 | /* 51337 */ // GIR_Coverage, 18045, |
| 18941 | /* 51337 */ GIR_Done, |
| 18942 | /* 51338 */ // Label 1216: @51338 |
| 18943 | /* 51338 */ GIM_Try, /*On fail goto*//*Label 1217*/ GIMT_Encode4(51368), // Rule ID 21358 // |
| 18944 | /* 51343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18945 | /* 51346 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18946 | /* 51349 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18947 | /* 51353 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18948 | /* 51357 */ // (lrint:{ *:[v8i32] } VR256X:{ *:[v8f32] }:$src) => (VCVTPS2DQZ256rr:{ *:[v8i32] } VR256X:{ *:[v8f32] }:$src) |
| 18949 | /* 51357 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZ256rr), |
| 18950 | /* 51362 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18951 | /* 51366 */ GIR_RootConstrainSelectedInstOperands, |
| 18952 | /* 51367 */ // GIR_Coverage, 21358, |
| 18953 | /* 51367 */ GIR_Done, |
| 18954 | /* 51368 */ // Label 1217: @51368 |
| 18955 | /* 51368 */ GIM_Try, /*On fail goto*//*Label 1218*/ GIMT_Encode4(51395), // Rule ID 21364 // |
| 18956 | /* 51373 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 18957 | /* 51376 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18958 | /* 51380 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18959 | /* 51384 */ // (lrint:{ *:[v8i32] } VR512:{ *:[v8f64] }:$src) => (VCVTPD2DQZrr:{ *:[v8i32] } VR512:{ *:[v8f64] }:$src) |
| 18960 | /* 51384 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQZrr), |
| 18961 | /* 51389 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18962 | /* 51393 */ GIR_RootConstrainSelectedInstOperands, |
| 18963 | /* 51394 */ // GIR_Coverage, 21364, |
| 18964 | /* 51394 */ GIR_Done, |
| 18965 | /* 51395 */ // Label 1218: @51395 |
| 18966 | /* 51395 */ GIM_Try, /*On fail goto*//*Label 1219*/ GIMT_Encode4(51425), // Rule ID 22159 // |
| 18967 | /* 51400 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 18968 | /* 51403 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18969 | /* 51406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18970 | /* 51410 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18971 | /* 51414 */ // (lrint:{ *:[v8i32] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2DQZ256rr:{ *:[v8i32] } VR128X:{ *:[v8f16] }:$src) |
| 18972 | /* 51414 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2DQZ256rr), |
| 18973 | /* 51419 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18974 | /* 51423 */ GIR_RootConstrainSelectedInstOperands, |
| 18975 | /* 51424 */ // GIR_Coverage, 22159, |
| 18976 | /* 51424 */ GIR_Done, |
| 18977 | /* 51425 */ // Label 1219: @51425 |
| 18978 | /* 51425 */ GIM_Reject, |
| 18979 | /* 51426 */ // Label 1158: @51426 |
| 18980 | /* 51426 */ GIM_Try, /*On fail goto*//*Label 1220*/ GIMT_Encode4(51485), // Rule ID 21393 // |
| 18981 | /* 51431 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 18982 | /* 51434 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18983 | /* 51437 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18984 | /* 51441 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18985 | /* 51445 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18986 | /* 51449 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18987 | /* 51452 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18988 | /* 51456 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18989 | /* 51460 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18990 | /* 51462 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18991 | /* 51469 */ // (lrint:{ *:[v8i64] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 18992 | /* 51469 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZrm), |
| 18993 | /* 51472 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18994 | /* 51474 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18995 | /* 51478 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18996 | /* 51483 */ GIR_RootConstrainSelectedInstOperands, |
| 18997 | /* 51484 */ // GIR_Coverage, 21393, |
| 18998 | /* 51484 */ GIR_EraseRootFromParent_Done, |
| 18999 | /* 51485 */ // Label 1220: @51485 |
| 19000 | /* 51485 */ GIM_Try, /*On fail goto*//*Label 1221*/ GIMT_Encode4(51544), // Rule ID 21397 // |
| 19001 | /* 51490 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19002 | /* 51493 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 19003 | /* 51496 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19004 | /* 51500 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19005 | /* 51504 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19006 | /* 51508 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19007 | /* 51511 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19008 | /* 51515 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19009 | /* 51519 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19010 | /* 51521 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19011 | /* 51528 */ // (lrint:{ *:[v8i64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 19012 | /* 51528 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZrm), |
| 19013 | /* 51531 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19014 | /* 51533 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19015 | /* 51537 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19016 | /* 51542 */ GIR_RootConstrainSelectedInstOperands, |
| 19017 | /* 51543 */ // GIR_Coverage, 21397, |
| 19018 | /* 51543 */ GIR_EraseRootFromParent_Done, |
| 19019 | /* 51544 */ // Label 1221: @51544 |
| 19020 | /* 51544 */ GIM_Try, /*On fail goto*//*Label 1222*/ GIMT_Encode4(51603), // Rule ID 22166 // |
| 19021 | /* 51549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19022 | /* 51552 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 19023 | /* 51555 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19024 | /* 51559 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19025 | /* 51563 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19026 | /* 51567 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19027 | /* 51570 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19028 | /* 51574 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19029 | /* 51578 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19030 | /* 51580 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19031 | /* 51587 */ // (lrint:{ *:[v8i64] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 19032 | /* 51587 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2QQZrm), |
| 19033 | /* 51590 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19034 | /* 51592 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19035 | /* 51596 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19036 | /* 51601 */ GIR_RootConstrainSelectedInstOperands, |
| 19037 | /* 51602 */ // GIR_Coverage, 22166, |
| 19038 | /* 51602 */ GIR_EraseRootFromParent_Done, |
| 19039 | /* 51603 */ // Label 1222: @51603 |
| 19040 | /* 51603 */ GIM_Try, /*On fail goto*//*Label 1223*/ GIMT_Encode4(51633), // Rule ID 21392 // |
| 19041 | /* 51608 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19042 | /* 51611 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 19043 | /* 51614 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19044 | /* 51618 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19045 | /* 51622 */ // (lrint:{ *:[v8i64] } VR256X:{ *:[v8f32] }:$src) => (VCVTPS2QQZrr:{ *:[v8i64] } VR256X:{ *:[v8f32] }:$src) |
| 19046 | /* 51622 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZrr), |
| 19047 | /* 51627 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19048 | /* 51631 */ GIR_RootConstrainSelectedInstOperands, |
| 19049 | /* 51632 */ // GIR_Coverage, 21392, |
| 19050 | /* 51632 */ GIR_Done, |
| 19051 | /* 51633 */ // Label 1223: @51633 |
| 19052 | /* 51633 */ GIM_Try, /*On fail goto*//*Label 1224*/ GIMT_Encode4(51663), // Rule ID 21396 // |
| 19053 | /* 51638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19054 | /* 51641 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 19055 | /* 51644 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19056 | /* 51648 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19057 | /* 51652 */ // (lrint:{ *:[v8i64] } VR512:{ *:[v8f64] }:$src) => (VCVTPD2QQZrr:{ *:[v8i64] } VR512:{ *:[v8f64] }:$src) |
| 19058 | /* 51652 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZrr), |
| 19059 | /* 51657 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19060 | /* 51661 */ GIR_RootConstrainSelectedInstOperands, |
| 19061 | /* 51662 */ // GIR_Coverage, 21396, |
| 19062 | /* 51662 */ GIR_Done, |
| 19063 | /* 51663 */ // Label 1224: @51663 |
| 19064 | /* 51663 */ GIM_Try, /*On fail goto*//*Label 1225*/ GIMT_Encode4(51693), // Rule ID 22165 // |
| 19065 | /* 51668 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19066 | /* 51671 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 19067 | /* 51674 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19068 | /* 51678 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 19069 | /* 51682 */ // (lrint:{ *:[v8i64] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2QQZrr:{ *:[v8i64] } VR128X:{ *:[v8f16] }:$src) |
| 19070 | /* 51682 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2QQZrr), |
| 19071 | /* 51687 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19072 | /* 51691 */ GIR_RootConstrainSelectedInstOperands, |
| 19073 | /* 51692 */ // GIR_Coverage, 22165, |
| 19074 | /* 51692 */ GIR_Done, |
| 19075 | /* 51693 */ // Label 1225: @51693 |
| 19076 | /* 51693 */ GIM_Reject, |
| 19077 | /* 51694 */ // Label 1159: @51694 |
| 19078 | /* 51694 */ GIM_Try, /*On fail goto*//*Label 1226*/ GIMT_Encode4(51782), |
| 19079 | /* 51699 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 19080 | /* 51702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19081 | /* 51706 */ GIM_Try, /*On fail goto*//*Label 1227*/ GIMT_Encode4(51758), // Rule ID 22158 // |
| 19082 | /* 51711 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 19083 | /* 51714 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19084 | /* 51718 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19085 | /* 51722 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19086 | /* 51725 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19087 | /* 51729 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19088 | /* 51733 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19089 | /* 51735 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19090 | /* 51742 */ // (lrint:{ *:[v16i16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2WZ256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 19091 | /* 51742 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZ256rm), |
| 19092 | /* 51745 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19093 | /* 51747 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19094 | /* 51751 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19095 | /* 51756 */ GIR_RootConstrainSelectedInstOperands, |
| 19096 | /* 51757 */ // GIR_Coverage, 22158, |
| 19097 | /* 51757 */ GIR_EraseRootFromParent_Done, |
| 19098 | /* 51758 */ // Label 1227: @51758 |
| 19099 | /* 51758 */ GIM_Try, /*On fail goto*//*Label 1228*/ GIMT_Encode4(51781), // Rule ID 22157 // |
| 19100 | /* 51763 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 19101 | /* 51766 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19102 | /* 51770 */ // (lrint:{ *:[v16i16] } VR256X:{ *:[v16f16] }:$src) => (VCVTPH2WZ256rr:{ *:[v16i16] } VR256X:{ *:[v16f16] }:$src) |
| 19103 | /* 51770 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZ256rr), |
| 19104 | /* 51775 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19105 | /* 51779 */ GIR_RootConstrainSelectedInstOperands, |
| 19106 | /* 51780 */ // GIR_Coverage, 22157, |
| 19107 | /* 51780 */ GIR_Done, |
| 19108 | /* 51781 */ // Label 1228: @51781 |
| 19109 | /* 51781 */ GIM_Reject, |
| 19110 | /* 51782 */ // Label 1226: @51782 |
| 19111 | /* 51782 */ GIM_Reject, |
| 19112 | /* 51783 */ // Label 1160: @51783 |
| 19113 | /* 51783 */ GIM_Try, /*On fail goto*//*Label 1229*/ GIMT_Encode4(51839), // Rule ID 21363 // |
| 19114 | /* 51788 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 19115 | /* 51791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19116 | /* 51795 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19117 | /* 51799 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19118 | /* 51803 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19119 | /* 51806 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19120 | /* 51810 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19121 | /* 51814 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19122 | /* 51816 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19123 | /* 51823 */ // (lrint:{ *:[v16i32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2DQZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 19124 | /* 51823 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZrm), |
| 19125 | /* 51826 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19126 | /* 51828 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19127 | /* 51832 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19128 | /* 51837 */ GIR_RootConstrainSelectedInstOperands, |
| 19129 | /* 51838 */ // GIR_Coverage, 21363, |
| 19130 | /* 51838 */ GIR_EraseRootFromParent_Done, |
| 19131 | /* 51839 */ // Label 1229: @51839 |
| 19132 | /* 51839 */ GIM_Try, /*On fail goto*//*Label 1230*/ GIMT_Encode4(51898), // Rule ID 22164 // |
| 19133 | /* 51844 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19134 | /* 51847 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 19135 | /* 51850 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19136 | /* 51854 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19137 | /* 51858 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19138 | /* 51862 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19139 | /* 51865 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19140 | /* 51869 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19141 | /* 51873 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19142 | /* 51875 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19143 | /* 51882 */ // (lrint:{ *:[v16i32] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2DQZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 19144 | /* 51882 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2DQZrm), |
| 19145 | /* 51885 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19146 | /* 51887 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19147 | /* 51891 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19148 | /* 51896 */ GIR_RootConstrainSelectedInstOperands, |
| 19149 | /* 51897 */ // GIR_Coverage, 22164, |
| 19150 | /* 51897 */ GIR_EraseRootFromParent_Done, |
| 19151 | /* 51898 */ // Label 1230: @51898 |
| 19152 | /* 51898 */ GIM_Try, /*On fail goto*//*Label 1231*/ GIMT_Encode4(51925), // Rule ID 21362 // |
| 19153 | /* 51903 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 19154 | /* 51906 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19155 | /* 51910 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19156 | /* 51914 */ // (lrint:{ *:[v16i32] } VR512:{ *:[v16f32] }:$src) => (VCVTPS2DQZrr:{ *:[v16i32] } VR512:{ *:[v16f32] }:$src) |
| 19157 | /* 51914 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZrr), |
| 19158 | /* 51919 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19159 | /* 51923 */ GIR_RootConstrainSelectedInstOperands, |
| 19160 | /* 51924 */ // GIR_Coverage, 21362, |
| 19161 | /* 51924 */ GIR_Done, |
| 19162 | /* 51925 */ // Label 1231: @51925 |
| 19163 | /* 51925 */ GIM_Try, /*On fail goto*//*Label 1232*/ GIMT_Encode4(51955), // Rule ID 22163 // |
| 19164 | /* 51930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19165 | /* 51933 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 19166 | /* 51936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19167 | /* 51940 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19168 | /* 51944 */ // (lrint:{ *:[v16i32] } VR256X:{ *:[v16f16] }:$src) => (VCVTPH2DQZrr:{ *:[v16i32] } VR256X:{ *:[v16f16] }:$src) |
| 19169 | /* 51944 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2DQZrr), |
| 19170 | /* 51949 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19171 | /* 51953 */ GIR_RootConstrainSelectedInstOperands, |
| 19172 | /* 51954 */ // GIR_Coverage, 22163, |
| 19173 | /* 51954 */ GIR_Done, |
| 19174 | /* 51955 */ // Label 1232: @51955 |
| 19175 | /* 51955 */ GIM_Reject, |
| 19176 | /* 51956 */ // Label 1161: @51956 |
| 19177 | /* 51956 */ GIM_Try, /*On fail goto*//*Label 1233*/ GIMT_Encode4(52044), |
| 19178 | /* 51961 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 19179 | /* 51964 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19180 | /* 51968 */ GIM_Try, /*On fail goto*//*Label 1234*/ GIMT_Encode4(52020), // Rule ID 22162 // |
| 19181 | /* 51973 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19182 | /* 51976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19183 | /* 51980 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19184 | /* 51984 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19185 | /* 51987 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19186 | /* 51991 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19187 | /* 51995 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19188 | /* 51997 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19189 | /* 52004 */ // (lrint:{ *:[v32i16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2WZrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 19190 | /* 52004 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZrm), |
| 19191 | /* 52007 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19192 | /* 52009 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19193 | /* 52013 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19194 | /* 52018 */ GIR_RootConstrainSelectedInstOperands, |
| 19195 | /* 52019 */ // GIR_Coverage, 22162, |
| 19196 | /* 52019 */ GIR_EraseRootFromParent_Done, |
| 19197 | /* 52020 */ // Label 1234: @52020 |
| 19198 | /* 52020 */ GIM_Try, /*On fail goto*//*Label 1235*/ GIMT_Encode4(52043), // Rule ID 22161 // |
| 19199 | /* 52025 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19200 | /* 52028 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19201 | /* 52032 */ // (lrint:{ *:[v32i16] } VR512:{ *:[v32f16] }:$src) => (VCVTPH2WZrr:{ *:[v32i16] } VR512:{ *:[v32f16] }:$src) |
| 19202 | /* 52032 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZrr), |
| 19203 | /* 52037 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19204 | /* 52041 */ GIR_RootConstrainSelectedInstOperands, |
| 19205 | /* 52042 */ // GIR_Coverage, 22161, |
| 19206 | /* 52042 */ GIR_Done, |
| 19207 | /* 52043 */ // Label 1235: @52043 |
| 19208 | /* 52043 */ GIM_Reject, |
| 19209 | /* 52044 */ // Label 1233: @52044 |
| 19210 | /* 52044 */ GIM_Reject, |
| 19211 | /* 52045 */ // Label 1162: @52045 |
| 19212 | /* 52045 */ GIM_Reject, |
| 19213 | /* 52046 */ // Label 9: @52046 |
| 19214 | /* 52046 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(16), /*)*//*default:*//*Label 1240*/ GIMT_Encode4(53265), |
| 19215 | /* 52057 */ /*GILLT_s64*//*Label 1236*/ GIMT_Encode4(52105), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 19216 | /* 52073 */ /*GILLT_v2s64*//*Label 1237*/ GIMT_Encode4(52729), GIMT_Encode4(0), GIMT_Encode4(0), |
| 19217 | /* 52085 */ /*GILLT_v4s64*//*Label 1238*/ GIMT_Encode4(52818), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 19218 | /* 52101 */ /*GILLT_v8s64*//*Label 1239*/ GIMT_Encode4(52997), |
| 19219 | /* 52105 */ // Label 1236: @52105 |
| 19220 | /* 52105 */ GIM_Try, /*On fail goto*//*Label 1241*/ GIMT_Encode4(52164), // Rule ID 1758 // |
| 19221 | /* 52110 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 19222 | /* 52113 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 19223 | /* 52116 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19224 | /* 52120 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19225 | /* 52124 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19226 | /* 52128 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19227 | /* 52131 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19228 | /* 52135 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19229 | /* 52139 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19230 | /* 52141 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19231 | /* 52148 */ // (llrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19232 | /* 52148 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64rm), |
| 19233 | /* 52151 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19234 | /* 52153 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19235 | /* 52157 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19236 | /* 52162 */ GIR_RootConstrainSelectedInstOperands, |
| 19237 | /* 52163 */ // GIR_Coverage, 1758, |
| 19238 | /* 52163 */ GIR_EraseRootFromParent_Done, |
| 19239 | /* 52164 */ // Label 1241: @52164 |
| 19240 | /* 52164 */ GIM_Try, /*On fail goto*//*Label 1242*/ GIMT_Encode4(52223), // Rule ID 1762 // |
| 19241 | /* 52169 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 19242 | /* 52172 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 19243 | /* 52175 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19244 | /* 52179 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19245 | /* 52183 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19246 | /* 52187 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19247 | /* 52190 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19248 | /* 52194 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19249 | /* 52198 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19250 | /* 52200 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19251 | /* 52207 */ // (llrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19252 | /* 52207 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64rm), |
| 19253 | /* 52210 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19254 | /* 52212 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19255 | /* 52216 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19256 | /* 52221 */ GIR_RootConstrainSelectedInstOperands, |
| 19257 | /* 52222 */ // GIR_Coverage, 1762, |
| 19258 | /* 52222 */ GIR_EraseRootFromParent_Done, |
| 19259 | /* 52223 */ // Label 1242: @52223 |
| 19260 | /* 52223 */ GIM_Try, /*On fail goto*//*Label 1243*/ GIMT_Encode4(52282), // Rule ID 1782 // |
| 19261 | /* 52228 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 19262 | /* 52231 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 19263 | /* 52234 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19264 | /* 52238 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19265 | /* 52242 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19266 | /* 52246 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19267 | /* 52249 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19268 | /* 52253 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19269 | /* 52257 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19270 | /* 52259 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19271 | /* 52266 */ // (llrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19272 | /* 52266 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSS2SI64rm), |
| 19273 | /* 52269 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19274 | /* 52271 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19275 | /* 52275 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19276 | /* 52280 */ GIR_RootConstrainSelectedInstOperands, |
| 19277 | /* 52281 */ // GIR_Coverage, 1782, |
| 19278 | /* 52281 */ GIR_EraseRootFromParent_Done, |
| 19279 | /* 52282 */ // Label 1243: @52282 |
| 19280 | /* 52282 */ GIM_Try, /*On fail goto*//*Label 1244*/ GIMT_Encode4(52341), // Rule ID 1786 // |
| 19281 | /* 52287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 19282 | /* 52290 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 19283 | /* 52293 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19284 | /* 52297 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19285 | /* 52301 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19286 | /* 52305 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19287 | /* 52308 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19288 | /* 52312 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19289 | /* 52316 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19290 | /* 52318 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19291 | /* 52325 */ // (llrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19292 | /* 52325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSD2SI64rm), |
| 19293 | /* 52328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19294 | /* 52330 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19295 | /* 52334 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19296 | /* 52339 */ GIR_RootConstrainSelectedInstOperands, |
| 19297 | /* 52340 */ // GIR_Coverage, 1786, |
| 19298 | /* 52340 */ GIR_EraseRootFromParent_Done, |
| 19299 | /* 52341 */ // Label 1244: @52341 |
| 19300 | /* 52341 */ GIM_Try, /*On fail goto*//*Label 1245*/ GIMT_Encode4(52400), // Rule ID 10355 // |
| 19301 | /* 52346 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 19302 | /* 52349 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 19303 | /* 52352 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19304 | /* 52356 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19305 | /* 52360 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19306 | /* 52364 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19307 | /* 52367 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19308 | /* 52371 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19309 | /* 52375 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19310 | /* 52377 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19311 | /* 52384 */ // (llrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19312 | /* 52384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64Zrm), |
| 19313 | /* 52387 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19314 | /* 52389 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19315 | /* 52393 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19316 | /* 52398 */ GIR_RootConstrainSelectedInstOperands, |
| 19317 | /* 52399 */ // GIR_Coverage, 10355, |
| 19318 | /* 52399 */ GIR_EraseRootFromParent_Done, |
| 19319 | /* 52400 */ // Label 1245: @52400 |
| 19320 | /* 52400 */ GIM_Try, /*On fail goto*//*Label 1246*/ GIMT_Encode4(52459), // Rule ID 10359 // |
| 19321 | /* 52405 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 19322 | /* 52408 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 19323 | /* 52411 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19324 | /* 52415 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19325 | /* 52419 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19326 | /* 52423 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19327 | /* 52426 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19328 | /* 52430 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19329 | /* 52434 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19330 | /* 52436 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19331 | /* 52443 */ // (llrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19332 | /* 52443 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64Zrm), |
| 19333 | /* 52446 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19334 | /* 52448 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19335 | /* 52452 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19336 | /* 52457 */ GIR_RootConstrainSelectedInstOperands, |
| 19337 | /* 52458 */ // GIR_Coverage, 10359, |
| 19338 | /* 52458 */ GIR_EraseRootFromParent_Done, |
| 19339 | /* 52459 */ // Label 1246: @52459 |
| 19340 | /* 52459 */ GIM_Try, /*On fail goto*//*Label 1247*/ GIMT_Encode4(52518), // Rule ID 22175 // |
| 19341 | /* 52464 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_In64BitMode), |
| 19342 | /* 52467 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 19343 | /* 52470 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19344 | /* 52474 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19345 | /* 52478 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19346 | /* 52482 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19347 | /* 52485 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19348 | /* 52489 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19349 | /* 52493 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19350 | /* 52495 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19351 | /* 52502 */ // (llrint:{ *:[i64] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19352 | /* 52502 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrm), |
| 19353 | /* 52505 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19354 | /* 52507 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19355 | /* 52511 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19356 | /* 52516 */ GIR_RootConstrainSelectedInstOperands, |
| 19357 | /* 52517 */ // GIR_Coverage, 22175, |
| 19358 | /* 52517 */ GIR_EraseRootFromParent_Done, |
| 19359 | /* 52518 */ // Label 1247: @52518 |
| 19360 | /* 52518 */ GIM_Try, /*On fail goto*//*Label 1248*/ GIMT_Encode4(52548), // Rule ID 1757 // |
| 19361 | /* 52523 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 19362 | /* 52526 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 19363 | /* 52529 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19364 | /* 52533 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 19365 | /* 52537 */ // (llrint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (VCVTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 19366 | /* 52537 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64rr), |
| 19367 | /* 52542 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19368 | /* 52546 */ GIR_RootConstrainSelectedInstOperands, |
| 19369 | /* 52547 */ // GIR_Coverage, 1757, |
| 19370 | /* 52547 */ GIR_Done, |
| 19371 | /* 52548 */ // Label 1248: @52548 |
| 19372 | /* 52548 */ GIM_Try, /*On fail goto*//*Label 1249*/ GIMT_Encode4(52578), // Rule ID 1761 // |
| 19373 | /* 52553 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 19374 | /* 52556 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 19375 | /* 52559 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19376 | /* 52563 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 19377 | /* 52567 */ // (llrint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (VCVTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 19378 | /* 52567 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64rr), |
| 19379 | /* 52572 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19380 | /* 52576 */ GIR_RootConstrainSelectedInstOperands, |
| 19381 | /* 52577 */ // GIR_Coverage, 1761, |
| 19382 | /* 52577 */ GIR_Done, |
| 19383 | /* 52578 */ // Label 1249: @52578 |
| 19384 | /* 52578 */ GIM_Try, /*On fail goto*//*Label 1250*/ GIMT_Encode4(52608), // Rule ID 1781 // |
| 19385 | /* 52583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 19386 | /* 52586 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 19387 | /* 52589 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19388 | /* 52593 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 19389 | /* 52597 */ // (llrint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (CVTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 19390 | /* 52597 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSS2SI64rr), |
| 19391 | /* 52602 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19392 | /* 52606 */ GIR_RootConstrainSelectedInstOperands, |
| 19393 | /* 52607 */ // GIR_Coverage, 1781, |
| 19394 | /* 52607 */ GIR_Done, |
| 19395 | /* 52608 */ // Label 1250: @52608 |
| 19396 | /* 52608 */ GIM_Try, /*On fail goto*//*Label 1251*/ GIMT_Encode4(52638), // Rule ID 1785 // |
| 19397 | /* 52613 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 19398 | /* 52616 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 19399 | /* 52619 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19400 | /* 52623 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 19401 | /* 52627 */ // (llrint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (CVTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 19402 | /* 52627 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSD2SI64rr), |
| 19403 | /* 52632 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19404 | /* 52636 */ GIR_RootConstrainSelectedInstOperands, |
| 19405 | /* 52637 */ // GIR_Coverage, 1785, |
| 19406 | /* 52637 */ GIR_Done, |
| 19407 | /* 52638 */ // Label 1251: @52638 |
| 19408 | /* 52638 */ GIM_Try, /*On fail goto*//*Label 1252*/ GIMT_Encode4(52668), // Rule ID 10354 // |
| 19409 | /* 52643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 19410 | /* 52646 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 19411 | /* 52649 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19412 | /* 52653 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 19413 | /* 52657 */ // (llrint:{ *:[i64] } FR32X:{ *:[f32] }:$src) => (VCVTSS2SI64Zrr:{ *:[i64] } FR32X:{ *:[f32] }:$src) |
| 19414 | /* 52657 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64Zrr), |
| 19415 | /* 52662 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19416 | /* 52666 */ GIR_RootConstrainSelectedInstOperands, |
| 19417 | /* 52667 */ // GIR_Coverage, 10354, |
| 19418 | /* 52667 */ GIR_Done, |
| 19419 | /* 52668 */ // Label 1252: @52668 |
| 19420 | /* 52668 */ GIM_Try, /*On fail goto*//*Label 1253*/ GIMT_Encode4(52698), // Rule ID 10358 // |
| 19421 | /* 52673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 19422 | /* 52676 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 19423 | /* 52679 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19424 | /* 52683 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 19425 | /* 52687 */ // (llrint:{ *:[i64] } FR64X:{ *:[f64] }:$src) => (VCVTSD2SI64Zrr:{ *:[i64] } FR64X:{ *:[f64] }:$src) |
| 19426 | /* 52687 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64Zrr), |
| 19427 | /* 52692 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19428 | /* 52696 */ GIR_RootConstrainSelectedInstOperands, |
| 19429 | /* 52697 */ // GIR_Coverage, 10358, |
| 19430 | /* 52697 */ GIR_Done, |
| 19431 | /* 52698 */ // Label 1253: @52698 |
| 19432 | /* 52698 */ GIM_Try, /*On fail goto*//*Label 1254*/ GIMT_Encode4(52728), // Rule ID 22174 // |
| 19433 | /* 52703 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_In64BitMode), |
| 19434 | /* 52706 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 19435 | /* 52709 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19436 | /* 52713 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 19437 | /* 52717 */ // (llrint:{ *:[i64] } FR16:{ *:[f16] }:$src) => (VCVTTSH2SI64Zrr:{ *:[i64] } FR16:{ *:[f16] }:$src) |
| 19438 | /* 52717 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrr), |
| 19439 | /* 52722 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19440 | /* 52726 */ GIR_RootConstrainSelectedInstOperands, |
| 19441 | /* 52727 */ // GIR_Coverage, 22174, |
| 19442 | /* 52727 */ GIR_Done, |
| 19443 | /* 52728 */ // Label 1254: @52728 |
| 19444 | /* 52728 */ GIM_Reject, |
| 19445 | /* 52729 */ // Label 1237: @52729 |
| 19446 | /* 52729 */ GIM_Try, /*On fail goto*//*Label 1255*/ GIMT_Encode4(52817), |
| 19447 | /* 52734 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 19448 | /* 52737 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 19449 | /* 52741 */ GIM_Try, /*On fail goto*//*Label 1256*/ GIMT_Encode4(52793), // Rule ID 21389 // |
| 19450 | /* 52746 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19451 | /* 52749 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19452 | /* 52753 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19453 | /* 52757 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19454 | /* 52760 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19455 | /* 52764 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19456 | /* 52768 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19457 | /* 52770 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19458 | /* 52777 */ // (llrint:{ *:[v2i64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZ128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 19459 | /* 52777 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ128rm), |
| 19460 | /* 52780 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19461 | /* 52782 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19462 | /* 52786 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19463 | /* 52791 */ GIR_RootConstrainSelectedInstOperands, |
| 19464 | /* 52792 */ // GIR_Coverage, 21389, |
| 19465 | /* 52792 */ GIR_EraseRootFromParent_Done, |
| 19466 | /* 52793 */ // Label 1256: @52793 |
| 19467 | /* 52793 */ GIM_Try, /*On fail goto*//*Label 1257*/ GIMT_Encode4(52816), // Rule ID 21388 // |
| 19468 | /* 52798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19469 | /* 52801 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 19470 | /* 52805 */ // (llrint:{ *:[v2i64] } VR128X:{ *:[v2f64] }:$src) => (VCVTPD2QQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2f64] }:$src) |
| 19471 | /* 52805 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ128rr), |
| 19472 | /* 52810 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19473 | /* 52814 */ GIR_RootConstrainSelectedInstOperands, |
| 19474 | /* 52815 */ // GIR_Coverage, 21388, |
| 19475 | /* 52815 */ GIR_Done, |
| 19476 | /* 52816 */ // Label 1257: @52816 |
| 19477 | /* 52816 */ GIM_Reject, |
| 19478 | /* 52817 */ // Label 1255: @52817 |
| 19479 | /* 52817 */ GIM_Reject, |
| 19480 | /* 52818 */ // Label 1238: @52818 |
| 19481 | /* 52818 */ GIM_Try, /*On fail goto*//*Label 1258*/ GIMT_Encode4(52877), // Rule ID 21383 // |
| 19482 | /* 52823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19483 | /* 52826 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 19484 | /* 52829 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19485 | /* 52833 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19486 | /* 52837 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19487 | /* 52841 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19488 | /* 52844 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19489 | /* 52848 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19490 | /* 52852 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19491 | /* 52854 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19492 | /* 52861 */ // (llrint:{ *:[v4i64] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2QQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 19493 | /* 52861 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZ256rm), |
| 19494 | /* 52864 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19495 | /* 52866 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19496 | /* 52870 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19497 | /* 52875 */ GIR_RootConstrainSelectedInstOperands, |
| 19498 | /* 52876 */ // GIR_Coverage, 21383, |
| 19499 | /* 52876 */ GIR_EraseRootFromParent_Done, |
| 19500 | /* 52877 */ // Label 1258: @52877 |
| 19501 | /* 52877 */ GIM_Try, /*On fail goto*//*Label 1259*/ GIMT_Encode4(52936), // Rule ID 21391 // |
| 19502 | /* 52882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19503 | /* 52885 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 19504 | /* 52888 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19505 | /* 52892 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19506 | /* 52896 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19507 | /* 52900 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19508 | /* 52903 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19509 | /* 52907 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19510 | /* 52911 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19511 | /* 52913 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19512 | /* 52920 */ // (llrint:{ *:[v4i64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 19513 | /* 52920 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ256rm), |
| 19514 | /* 52923 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19515 | /* 52925 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19516 | /* 52929 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19517 | /* 52934 */ GIR_RootConstrainSelectedInstOperands, |
| 19518 | /* 52935 */ // GIR_Coverage, 21391, |
| 19519 | /* 52935 */ GIR_EraseRootFromParent_Done, |
| 19520 | /* 52936 */ // Label 1259: @52936 |
| 19521 | /* 52936 */ GIM_Try, /*On fail goto*//*Label 1260*/ GIMT_Encode4(52966), // Rule ID 21382 // |
| 19522 | /* 52941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19523 | /* 52944 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 19524 | /* 52947 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19525 | /* 52951 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 19526 | /* 52955 */ // (llrint:{ *:[v4i64] } VR128X:{ *:[v4f32] }:$src) => (VCVTPS2QQZ256rr:{ *:[v4i64] } VR128X:{ *:[v4f32] }:$src) |
| 19527 | /* 52955 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZ256rr), |
| 19528 | /* 52960 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19529 | /* 52964 */ GIR_RootConstrainSelectedInstOperands, |
| 19530 | /* 52965 */ // GIR_Coverage, 21382, |
| 19531 | /* 52965 */ GIR_Done, |
| 19532 | /* 52966 */ // Label 1260: @52966 |
| 19533 | /* 52966 */ GIM_Try, /*On fail goto*//*Label 1261*/ GIMT_Encode4(52996), // Rule ID 21390 // |
| 19534 | /* 52971 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19535 | /* 52974 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 19536 | /* 52977 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19537 | /* 52981 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19538 | /* 52985 */ // (llrint:{ *:[v4i64] } VR256X:{ *:[v4f64] }:$src) => (VCVTPD2QQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4f64] }:$src) |
| 19539 | /* 52985 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ256rr), |
| 19540 | /* 52990 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19541 | /* 52994 */ GIR_RootConstrainSelectedInstOperands, |
| 19542 | /* 52995 */ // GIR_Coverage, 21390, |
| 19543 | /* 52995 */ GIR_Done, |
| 19544 | /* 52996 */ // Label 1261: @52996 |
| 19545 | /* 52996 */ GIM_Reject, |
| 19546 | /* 52997 */ // Label 1239: @52997 |
| 19547 | /* 52997 */ GIM_Try, /*On fail goto*//*Label 1262*/ GIMT_Encode4(53056), // Rule ID 21395 // |
| 19548 | /* 53002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19549 | /* 53005 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 19550 | /* 53008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19551 | /* 53012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19552 | /* 53016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19553 | /* 53020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19554 | /* 53023 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19555 | /* 53027 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19556 | /* 53031 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19557 | /* 53033 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19558 | /* 53040 */ // (llrint:{ *:[v8i64] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 19559 | /* 53040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZrm), |
| 19560 | /* 53043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19561 | /* 53045 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19562 | /* 53049 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19563 | /* 53054 */ GIR_RootConstrainSelectedInstOperands, |
| 19564 | /* 53055 */ // GIR_Coverage, 21395, |
| 19565 | /* 53055 */ GIR_EraseRootFromParent_Done, |
| 19566 | /* 53056 */ // Label 1262: @53056 |
| 19567 | /* 53056 */ GIM_Try, /*On fail goto*//*Label 1263*/ GIMT_Encode4(53115), // Rule ID 21399 // |
| 19568 | /* 53061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19569 | /* 53064 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 19570 | /* 53067 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19571 | /* 53071 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19572 | /* 53075 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19573 | /* 53079 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19574 | /* 53082 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19575 | /* 53086 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19576 | /* 53090 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19577 | /* 53092 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19578 | /* 53099 */ // (llrint:{ *:[v8i64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 19579 | /* 53099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZrm), |
| 19580 | /* 53102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19581 | /* 53104 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19582 | /* 53108 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19583 | /* 53113 */ GIR_RootConstrainSelectedInstOperands, |
| 19584 | /* 53114 */ // GIR_Coverage, 21399, |
| 19585 | /* 53114 */ GIR_EraseRootFromParent_Done, |
| 19586 | /* 53115 */ // Label 1263: @53115 |
| 19587 | /* 53115 */ GIM_Try, /*On fail goto*//*Label 1264*/ GIMT_Encode4(53174), // Rule ID 22168 // |
| 19588 | /* 53120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19589 | /* 53123 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 19590 | /* 53126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19591 | /* 53130 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19592 | /* 53134 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19593 | /* 53138 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19594 | /* 53141 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19595 | /* 53145 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19596 | /* 53149 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19597 | /* 53151 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19598 | /* 53158 */ // (llrint:{ *:[v8i64] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 19599 | /* 53158 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2QQZrm), |
| 19600 | /* 53161 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19601 | /* 53163 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19602 | /* 53167 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19603 | /* 53172 */ GIR_RootConstrainSelectedInstOperands, |
| 19604 | /* 53173 */ // GIR_Coverage, 22168, |
| 19605 | /* 53173 */ GIR_EraseRootFromParent_Done, |
| 19606 | /* 53174 */ // Label 1264: @53174 |
| 19607 | /* 53174 */ GIM_Try, /*On fail goto*//*Label 1265*/ GIMT_Encode4(53204), // Rule ID 21394 // |
| 19608 | /* 53179 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19609 | /* 53182 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 19610 | /* 53185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19611 | /* 53189 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19612 | /* 53193 */ // (llrint:{ *:[v8i64] } VR256X:{ *:[v8f32] }:$src) => (VCVTPS2QQZrr:{ *:[v8i64] } VR256X:{ *:[v8f32] }:$src) |
| 19613 | /* 53193 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZrr), |
| 19614 | /* 53198 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19615 | /* 53202 */ GIR_RootConstrainSelectedInstOperands, |
| 19616 | /* 53203 */ // GIR_Coverage, 21394, |
| 19617 | /* 53203 */ GIR_Done, |
| 19618 | /* 53204 */ // Label 1265: @53204 |
| 19619 | /* 53204 */ GIM_Try, /*On fail goto*//*Label 1266*/ GIMT_Encode4(53234), // Rule ID 21398 // |
| 19620 | /* 53209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19621 | /* 53212 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 19622 | /* 53215 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19623 | /* 53219 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19624 | /* 53223 */ // (llrint:{ *:[v8i64] } VR512:{ *:[v8f64] }:$src) => (VCVTPD2QQZrr:{ *:[v8i64] } VR512:{ *:[v8f64] }:$src) |
| 19625 | /* 53223 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZrr), |
| 19626 | /* 53228 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19627 | /* 53232 */ GIR_RootConstrainSelectedInstOperands, |
| 19628 | /* 53233 */ // GIR_Coverage, 21398, |
| 19629 | /* 53233 */ GIR_Done, |
| 19630 | /* 53234 */ // Label 1266: @53234 |
| 19631 | /* 53234 */ GIM_Try, /*On fail goto*//*Label 1267*/ GIMT_Encode4(53264), // Rule ID 22167 // |
| 19632 | /* 53239 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19633 | /* 53242 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 19634 | /* 53245 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19635 | /* 53249 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 19636 | /* 53253 */ // (llrint:{ *:[v8i64] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2QQZrr:{ *:[v8i64] } VR128X:{ *:[v8f16] }:$src) |
| 19637 | /* 53253 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2QQZrr), |
| 19638 | /* 53258 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19639 | /* 53262 */ GIR_RootConstrainSelectedInstOperands, |
| 19640 | /* 53263 */ // GIR_Coverage, 22167, |
| 19641 | /* 53263 */ GIR_Done, |
| 19642 | /* 53264 */ // Label 1267: @53264 |
| 19643 | /* 53264 */ GIM_Reject, |
| 19644 | /* 53265 */ // Label 1240: @53265 |
| 19645 | /* 53265 */ GIM_Reject, |
| 19646 | /* 53266 */ // Label 10: @53266 |
| 19647 | /* 53266 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(25), /*)*//*default:*//*Label 1293*/ GIMT_Encode4(59490), |
| 19648 | /* 53277 */ /*GILLT_s1*//*Label 1268*/ GIMT_Encode4(53377), |
| 19649 | /* 53281 */ /*GILLT_s8*//*Label 1269*/ GIMT_Encode4(53444), |
| 19650 | /* 53285 */ /*GILLT_s16*//*Label 1270*/ GIMT_Encode4(53585), |
| 19651 | /* 53289 */ /*GILLT_s32*//*Label 1271*/ GIMT_Encode4(54138), |
| 19652 | /* 53293 */ /*GILLT_s64*//*Label 1272*/ GIMT_Encode4(54560), |
| 19653 | /* 53297 */ /*GILLT_s80*//*Label 1273*/ GIMT_Encode4(55133), |
| 19654 | /* 53301 */ /*GILLT_s128*//*Label 1274*/ GIMT_Encode4(55292), |
| 19655 | /* 53305 */ /*GILLT_v2s1*//*Label 1275*/ GIMT_Encode4(55420), |
| 19656 | /* 53309 */ /*GILLT_v2s64*//*Label 1276*/ GIMT_Encode4(55487), |
| 19657 | /* 53313 */ /*GILLT_v4s1*//*Label 1277*/ GIMT_Encode4(55981), |
| 19658 | /* 53317 */ /*GILLT_v4s32*//*Label 1278*/ GIMT_Encode4(56048), |
| 19659 | /* 53321 */ /*GILLT_v4s64*//*Label 1279*/ GIMT_Encode4(56542), |
| 19660 | /* 53325 */ /*GILLT_v8s1*//*Label 1280*/ GIMT_Encode4(56876), |
| 19661 | /* 53329 */ /*GILLT_v8s16*//*Label 1281*/ GIMT_Encode4(56958), |
| 19662 | /* 53333 */ /*GILLT_v8s32*//*Label 1282*/ GIMT_Encode4(57532), |
| 19663 | /* 53337 */ /*GILLT_v8s64*//*Label 1283*/ GIMT_Encode4(57866), |
| 19664 | /* 53341 */ /*GILLT_v16s1*//*Label 1284*/ GIMT_Encode4(58040), |
| 19665 | /* 53345 */ /*GILLT_v16s8*//*Label 1285*/ GIMT_Encode4(58122), |
| 19666 | /* 53349 */ /*GILLT_v16s16*//*Label 1286*/ GIMT_Encode4(58376), |
| 19667 | /* 53353 */ /*GILLT_v16s32*//*Label 1287*/ GIMT_Encode4(58710), |
| 19668 | /* 53357 */ /*GILLT_v32s1*//*Label 1288*/ GIMT_Encode4(58884), |
| 19669 | /* 53361 */ /*GILLT_v32s8*//*Label 1289*/ GIMT_Encode4(58966), |
| 19670 | /* 53365 */ /*GILLT_v32s16*//*Label 1290*/ GIMT_Encode4(59140), |
| 19671 | /* 53369 */ /*GILLT_v64s1*//*Label 1291*/ GIMT_Encode4(59314), |
| 19672 | /* 53373 */ /*GILLT_v64s8*//*Label 1292*/ GIMT_Encode4(59396), |
| 19673 | /* 53377 */ // Label 1268: @53377 |
| 19674 | /* 53377 */ GIM_Try, /*On fail goto*//*Label 1294*/ GIMT_Encode4(53443), // Rule ID 19445 // |
| 19675 | /* 53382 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19676 | /* 53385 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19677 | /* 53388 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19678 | /* 53392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 19679 | /* 53396 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19680 | /* 53400 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19681 | /* 53407 */ // (ld:{ *:[v1i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (COPY_TO_REGCLASS:{ *:[v1i1] } (KMOVBkm:{ *:[v8i1] } addr:{ *:[iPTR] }:$src), VK1:{ *:[i32] }) |
| 19682 | /* 53407 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 19683 | /* 53410 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVBkm), |
| 19684 | /* 53414 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 19685 | /* 53419 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19686 | /* 53423 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19687 | /* 53427 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19688 | /* 53429 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19689 | /* 53432 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19690 | /* 53434 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19691 | /* 53437 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 19692 | /* 53442 */ // GIR_Coverage, 19445, |
| 19693 | /* 53442 */ GIR_EraseRootFromParent_Done, |
| 19694 | /* 53443 */ // Label 1294: @53443 |
| 19695 | /* 53443 */ GIM_Reject, |
| 19696 | /* 53444 */ // Label 1269: @53444 |
| 19697 | /* 53444 */ GIM_Try, /*On fail goto*//*Label 1295*/ GIMT_Encode4(53493), // Rule ID 22515 // |
| 19698 | /* 53449 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 19699 | /* 53452 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19700 | /* 53456 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19701 | /* 53463 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 19702 | /* 53467 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19703 | /* 53471 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19704 | /* 53478 */ // (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>> => (MOV8rm:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 19705 | /* 53478 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8rm), |
| 19706 | /* 53481 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19707 | /* 53483 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19708 | /* 53487 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19709 | /* 53491 */ GIR_RootConstrainSelectedInstOperands, |
| 19710 | /* 53492 */ // GIR_Coverage, 22515, |
| 19711 | /* 53492 */ GIR_EraseRootFromParent_Done, |
| 19712 | /* 53493 */ // Label 1295: @53493 |
| 19713 | /* 53493 */ GIM_Try, /*On fail goto*//*Label 1296*/ GIMT_Encode4(53542), // Rule ID 22580 // |
| 19714 | /* 53498 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19715 | /* 53501 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19716 | /* 53505 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19717 | /* 53512 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 19718 | /* 53516 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19719 | /* 53520 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19720 | /* 53527 */ // (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi1>> => (MOV8rm:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 19721 | /* 53527 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8rm), |
| 19722 | /* 53530 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19723 | /* 53532 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19724 | /* 53536 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19725 | /* 53540 */ GIR_RootConstrainSelectedInstOperands, |
| 19726 | /* 53541 */ // GIR_Coverage, 22580, |
| 19727 | /* 53541 */ GIR_EraseRootFromParent_Done, |
| 19728 | /* 53542 */ // Label 1296: @53542 |
| 19729 | /* 53542 */ GIM_Try, /*On fail goto*//*Label 1297*/ GIMT_Encode4(53584), // Rule ID 28 // |
| 19730 | /* 53547 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19731 | /* 53550 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 19732 | /* 53554 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19733 | /* 53558 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 19734 | /* 53562 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19735 | /* 53569 */ // (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>> => (MOV8rm:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 19736 | /* 53569 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8rm), |
| 19737 | /* 53572 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19738 | /* 53574 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19739 | /* 53578 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19740 | /* 53582 */ GIR_RootConstrainSelectedInstOperands, |
| 19741 | /* 53583 */ // GIR_Coverage, 28, |
| 19742 | /* 53583 */ GIR_EraseRootFromParent_Done, |
| 19743 | /* 53584 */ // Label 1297: @53584 |
| 19744 | /* 53584 */ GIM_Reject, |
| 19745 | /* 53585 */ // Label 1270: @53585 |
| 19746 | /* 53585 */ GIM_Try, /*On fail goto*//*Label 1298*/ GIMT_Encode4(53634), // Rule ID 22516 // |
| 19747 | /* 53590 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 19748 | /* 53593 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19749 | /* 53597 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 19750 | /* 53604 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 19751 | /* 53608 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19752 | /* 53612 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19753 | /* 53619 */ // (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>> => (MOV16rm:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19754 | /* 53619 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16rm), |
| 19755 | /* 53622 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19756 | /* 53624 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19757 | /* 53628 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19758 | /* 53632 */ GIR_RootConstrainSelectedInstOperands, |
| 19759 | /* 53633 */ // GIR_Coverage, 22516, |
| 19760 | /* 53633 */ GIR_EraseRootFromParent_Done, |
| 19761 | /* 53634 */ // Label 1298: @53634 |
| 19762 | /* 53634 */ GIM_Try, /*On fail goto*//*Label 1299*/ GIMT_Encode4(53713), // Rule ID 22581 // |
| 19763 | /* 53639 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19764 | /* 53642 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19765 | /* 53646 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19766 | /* 53653 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 19767 | /* 53657 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19768 | /* 53661 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19769 | /* 53668 */ // (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi1>> => (EXTRACT_SUBREG:{ *:[i16] } (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_16bit:{ *:[i32] }) |
| 19770 | /* 53668 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19771 | /* 53671 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 19772 | /* 53675 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 19773 | /* 53680 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19774 | /* 53684 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19775 | /* 53688 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19776 | /* 53690 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19777 | /* 53693 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19778 | /* 53695 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 19779 | /* 53702 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 19780 | /* 53707 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 19781 | /* 53712 */ // GIR_Coverage, 22581, |
| 19782 | /* 53712 */ GIR_EraseRootFromParent_Done, |
| 19783 | /* 53713 */ // Label 1299: @53713 |
| 19784 | /* 53713 */ GIM_Try, /*On fail goto*//*Label 1300*/ GIMT_Encode4(53792), // Rule ID 22583 // |
| 19785 | /* 53718 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19786 | /* 53721 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19787 | /* 53725 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19788 | /* 53732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 19789 | /* 53736 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19790 | /* 53740 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19791 | /* 53747 */ // (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> => (EXTRACT_SUBREG:{ *:[i16] } (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_16bit:{ *:[i32] }) |
| 19792 | /* 53747 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19793 | /* 53750 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 19794 | /* 53754 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 19795 | /* 53759 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19796 | /* 53763 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19797 | /* 53767 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19798 | /* 53769 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19799 | /* 53772 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19800 | /* 53774 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 19801 | /* 53781 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 19802 | /* 53786 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 19803 | /* 53791 */ // GIR_Coverage, 22583, |
| 19804 | /* 53791 */ GIR_EraseRootFromParent_Done, |
| 19805 | /* 53792 */ // Label 1300: @53792 |
| 19806 | /* 53792 */ GIM_Try, /*On fail goto*//*Label 1301*/ GIMT_Encode4(53837), // Rule ID 4621 // |
| 19807 | /* 53797 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19808 | /* 53800 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19809 | /* 53803 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19810 | /* 53807 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 19811 | /* 53811 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19812 | /* 53815 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19813 | /* 53822 */ // (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVSHZrm_alt:{ *:[f16] } addr:{ *:[iPTR] }:$src) |
| 19814 | /* 53822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSHZrm_alt), |
| 19815 | /* 53825 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19816 | /* 53827 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19817 | /* 53831 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19818 | /* 53835 */ GIR_RootConstrainSelectedInstOperands, |
| 19819 | /* 53836 */ // GIR_Coverage, 4621, |
| 19820 | /* 53836 */ GIR_EraseRootFromParent_Done, |
| 19821 | /* 53837 */ // Label 1301: @53837 |
| 19822 | /* 53837 */ GIM_Try, /*On fail goto*//*Label 1302*/ GIMT_Encode4(53923), // Rule ID 18339 // |
| 19823 | /* 53842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoBWI), |
| 19824 | /* 53845 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19825 | /* 53848 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19826 | /* 53852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 19827 | /* 53856 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19828 | /* 53860 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19829 | /* 53867 */ // (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (COPY_TO_REGCLASS:{ *:[f16] } (VPINSRWrmi:{ *:[f128] } (IMPLICIT_DEF:{ *:[v8i16] }), addr:{ *:[iPTR] }:$src, 0:{ *:[i8] }), FR16:{ *:[i32] }) |
| 19830 | /* 53867 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 19831 | /* 53870 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 19832 | /* 53874 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 19833 | /* 53879 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19834 | /* 53881 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 19835 | /* 53884 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPINSRWrmi), |
| 19836 | /* 53888 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 19837 | /* 53893 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 19838 | /* 53896 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19839 | /* 53900 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 19840 | /* 53903 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19841 | /* 53907 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19842 | /* 53909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19843 | /* 53912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19844 | /* 53914 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19845 | /* 53917 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 19846 | /* 53922 */ // GIR_Coverage, 18339, |
| 19847 | /* 53922 */ GIR_EraseRootFromParent_Done, |
| 19848 | /* 53923 */ // Label 1302: @53923 |
| 19849 | /* 53923 */ GIM_Try, /*On fail goto*//*Label 1303*/ GIMT_Encode4(53965), // Rule ID 29 // |
| 19850 | /* 53928 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19851 | /* 53931 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 19852 | /* 53935 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19853 | /* 53939 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 19854 | /* 53943 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19855 | /* 53950 */ // (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>> => (MOV16rm:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19856 | /* 53950 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16rm), |
| 19857 | /* 53953 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19858 | /* 53955 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19859 | /* 53959 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19860 | /* 53963 */ GIR_RootConstrainSelectedInstOperands, |
| 19861 | /* 53964 */ // GIR_Coverage, 29, |
| 19862 | /* 53964 */ GIR_EraseRootFromParent_Done, |
| 19863 | /* 53965 */ // Label 1303: @53965 |
| 19864 | /* 53965 */ GIM_Try, /*On fail goto*//*Label 1304*/ GIMT_Encode4(54051), // Rule ID 18335 // |
| 19865 | /* 53970 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 19866 | /* 53973 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19867 | /* 53976 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19868 | /* 53980 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 19869 | /* 53984 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19870 | /* 53988 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19871 | /* 53995 */ // (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (COPY_TO_REGCLASS:{ *:[f16] } (PINSRWrmi:{ *:[f128] } (IMPLICIT_DEF:{ *:[v8i16] }), addr:{ *:[iPTR] }:$src, 0:{ *:[i8] }), FR16:{ *:[i32] }) |
| 19872 | /* 53995 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 19873 | /* 53998 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 19874 | /* 54002 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 19875 | /* 54007 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19876 | /* 54009 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 19877 | /* 54012 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::PINSRWrmi), |
| 19878 | /* 54016 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 19879 | /* 54021 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 19880 | /* 54024 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19881 | /* 54028 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 19882 | /* 54031 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19883 | /* 54035 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19884 | /* 54037 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19885 | /* 54040 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19886 | /* 54042 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19887 | /* 54045 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 19888 | /* 54050 */ // GIR_Coverage, 18335, |
| 19889 | /* 54050 */ GIR_EraseRootFromParent_Done, |
| 19890 | /* 54051 */ // Label 1304: @54051 |
| 19891 | /* 54051 */ GIM_Try, /*On fail goto*//*Label 1305*/ GIMT_Encode4(54137), // Rule ID 21839 // |
| 19892 | /* 54056 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 19893 | /* 54059 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19894 | /* 54062 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19895 | /* 54066 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 19896 | /* 54070 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19897 | /* 54074 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19898 | /* 54081 */ // (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (COPY_TO_REGCLASS:{ *:[f16] } (VPINSRWZrmi:{ *:[f128] } (IMPLICIT_DEF:{ *:[v8i16] }), addr:{ *:[iPTR] }:$src, 0:{ *:[i8] }), FR16X:{ *:[i32] }) |
| 19899 | /* 54081 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 19900 | /* 54084 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 19901 | /* 54088 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 19902 | /* 54093 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19903 | /* 54095 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 19904 | /* 54098 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPINSRWZrmi), |
| 19905 | /* 54102 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 19906 | /* 54107 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 19907 | /* 54110 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19908 | /* 54114 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 19909 | /* 54117 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19910 | /* 54121 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19911 | /* 54123 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19912 | /* 54126 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19913 | /* 54128 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19914 | /* 54131 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 19915 | /* 54136 */ // GIR_Coverage, 21839, |
| 19916 | /* 54136 */ GIR_EraseRootFromParent_Done, |
| 19917 | /* 54137 */ // Label 1305: @54137 |
| 19918 | /* 54137 */ GIM_Reject, |
| 19919 | /* 54138 */ // Label 1271: @54138 |
| 19920 | /* 54138 */ GIM_Try, /*On fail goto*//*Label 1306*/ GIMT_Encode4(54186), // Rule ID 1080 // |
| 19921 | /* 54143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 19922 | /* 54146 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19923 | /* 54149 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19924 | /* 54153 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 19925 | /* 54157 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19926 | /* 54161 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19927 | /* 54168 */ // (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (LD_Fp32m:{ *:[f32] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19928 | /* 54168 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp32m), |
| 19929 | /* 54171 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19930 | /* 54173 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19931 | /* 54177 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 19932 | /* 54180 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19933 | /* 54184 */ GIR_RootConstrainSelectedInstOperands, |
| 19934 | /* 54185 */ // GIR_Coverage, 1080, |
| 19935 | /* 54185 */ GIR_EraseRootFromParent_Done, |
| 19936 | /* 54186 */ // Label 1306: @54186 |
| 19937 | /* 54186 */ GIM_Try, /*On fail goto*//*Label 1307*/ GIMT_Encode4(54231), // Rule ID 1697 // |
| 19938 | /* 54191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 19939 | /* 54194 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19940 | /* 54197 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19941 | /* 54201 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 19942 | /* 54205 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19943 | /* 54209 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19944 | /* 54216 */ // (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVSSrm_alt:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 19945 | /* 54216 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSrm_alt), |
| 19946 | /* 54219 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19947 | /* 54221 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19948 | /* 54225 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19949 | /* 54229 */ GIR_RootConstrainSelectedInstOperands, |
| 19950 | /* 54230 */ // GIR_Coverage, 1697, |
| 19951 | /* 54230 */ GIR_EraseRootFromParent_Done, |
| 19952 | /* 54231 */ // Label 1307: @54231 |
| 19953 | /* 54231 */ GIM_Try, /*On fail goto*//*Label 1308*/ GIMT_Encode4(54276), // Rule ID 1698 // |
| 19954 | /* 54236 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 19955 | /* 54239 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19956 | /* 54242 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19957 | /* 54246 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 19958 | /* 54250 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19959 | /* 54254 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19960 | /* 54261 */ // (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVSSrm_alt:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 19961 | /* 54261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSSrm_alt), |
| 19962 | /* 54264 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19963 | /* 54266 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19964 | /* 54270 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19965 | /* 54274 */ GIR_RootConstrainSelectedInstOperands, |
| 19966 | /* 54275 */ // GIR_Coverage, 1698, |
| 19967 | /* 54275 */ GIR_EraseRootFromParent_Done, |
| 19968 | /* 54276 */ // Label 1308: @54276 |
| 19969 | /* 54276 */ GIM_Try, /*On fail goto*//*Label 1309*/ GIMT_Encode4(54325), // Rule ID 22517 // |
| 19970 | /* 54281 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 19971 | /* 54284 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19972 | /* 54288 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 19973 | /* 54295 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 19974 | /* 54299 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19975 | /* 54303 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19976 | /* 54310 */ // (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>> => (MOV32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 19977 | /* 54310 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32rm), |
| 19978 | /* 54313 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19979 | /* 54315 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19980 | /* 54319 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19981 | /* 54323 */ GIR_RootConstrainSelectedInstOperands, |
| 19982 | /* 54324 */ // GIR_Coverage, 22517, |
| 19983 | /* 54324 */ GIR_EraseRootFromParent_Done, |
| 19984 | /* 54325 */ // Label 1309: @54325 |
| 19985 | /* 54325 */ GIM_Try, /*On fail goto*//*Label 1310*/ GIMT_Encode4(54374), // Rule ID 22582 // |
| 19986 | /* 54330 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19987 | /* 54333 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19988 | /* 54337 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19989 | /* 54344 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 19990 | /* 54348 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19991 | /* 54352 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19992 | /* 54359 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi1>> => (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 19993 | /* 54359 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 19994 | /* 54362 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19995 | /* 54364 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19996 | /* 54368 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19997 | /* 54372 */ GIR_RootConstrainSelectedInstOperands, |
| 19998 | /* 54373 */ // GIR_Coverage, 22582, |
| 19999 | /* 54373 */ GIR_EraseRootFromParent_Done, |
| 20000 | /* 54374 */ // Label 1310: @54374 |
| 20001 | /* 54374 */ GIM_Try, /*On fail goto*//*Label 1311*/ GIMT_Encode4(54423), // Rule ID 22584 // |
| 20002 | /* 54379 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20003 | /* 54382 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20004 | /* 54386 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 20005 | /* 54393 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 20006 | /* 54397 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20007 | /* 54401 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20008 | /* 54408 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> => (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 20009 | /* 54408 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 20010 | /* 54411 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20011 | /* 54413 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20012 | /* 54417 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20013 | /* 54421 */ GIR_RootConstrainSelectedInstOperands, |
| 20014 | /* 54422 */ // GIR_Coverage, 22584, |
| 20015 | /* 54422 */ GIR_EraseRootFromParent_Done, |
| 20016 | /* 54423 */ // Label 1311: @54423 |
| 20017 | /* 54423 */ GIM_Try, /*On fail goto*//*Label 1312*/ GIMT_Encode4(54472), // Rule ID 22585 // |
| 20018 | /* 54428 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20019 | /* 54431 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20020 | /* 54435 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 20021 | /* 54442 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 20022 | /* 54446 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20023 | /* 54450 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20024 | /* 54457 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> => (MOVZX32rm16:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 20025 | /* 54457 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm16), |
| 20026 | /* 54460 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20027 | /* 54462 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20028 | /* 54466 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20029 | /* 54470 */ GIR_RootConstrainSelectedInstOperands, |
| 20030 | /* 54471 */ // GIR_Coverage, 22585, |
| 20031 | /* 54471 */ GIR_EraseRootFromParent_Done, |
| 20032 | /* 54472 */ // Label 1312: @54472 |
| 20033 | /* 54472 */ GIM_Try, /*On fail goto*//*Label 1313*/ GIMT_Encode4(54517), // Rule ID 4609 // |
| 20034 | /* 54477 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 20035 | /* 54480 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20036 | /* 54483 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20037 | /* 54487 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 20038 | /* 54491 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20039 | /* 54495 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20040 | /* 54502 */ // (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVSSZrm_alt:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 20041 | /* 54502 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSZrm_alt), |
| 20042 | /* 54505 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20043 | /* 54507 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20044 | /* 54511 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20045 | /* 54515 */ GIR_RootConstrainSelectedInstOperands, |
| 20046 | /* 54516 */ // GIR_Coverage, 4609, |
| 20047 | /* 54516 */ GIR_EraseRootFromParent_Done, |
| 20048 | /* 54517 */ // Label 1313: @54517 |
| 20049 | /* 54517 */ GIM_Try, /*On fail goto*//*Label 1314*/ GIMT_Encode4(54559), // Rule ID 30 // |
| 20050 | /* 54522 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20051 | /* 54525 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 20052 | /* 54529 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20053 | /* 54533 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 20054 | /* 54537 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20055 | /* 54544 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>> => (MOV32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 20056 | /* 54544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32rm), |
| 20057 | /* 54547 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20058 | /* 54549 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20059 | /* 54553 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20060 | /* 54557 */ GIR_RootConstrainSelectedInstOperands, |
| 20061 | /* 54558 */ // GIR_Coverage, 30, |
| 20062 | /* 54558 */ GIR_EraseRootFromParent_Done, |
| 20063 | /* 54559 */ // Label 1314: @54559 |
| 20064 | /* 54559 */ GIM_Reject, |
| 20065 | /* 54560 */ // Label 1272: @54560 |
| 20066 | /* 54560 */ GIM_Try, /*On fail goto*//*Label 1315*/ GIMT_Encode4(54602), // Rule ID 31 // |
| 20067 | /* 54565 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20068 | /* 54568 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20069 | /* 54572 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 20070 | /* 54576 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20071 | /* 54580 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20072 | /* 54587 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOV64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 20073 | /* 54587 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64rm), |
| 20074 | /* 54590 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20075 | /* 54592 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20076 | /* 54596 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20077 | /* 54600 */ GIR_RootConstrainSelectedInstOperands, |
| 20078 | /* 54601 */ // GIR_Coverage, 31, |
| 20079 | /* 54601 */ GIR_EraseRootFromParent_Done, |
| 20080 | /* 54602 */ // Label 1315: @54602 |
| 20081 | /* 54602 */ GIM_Try, /*On fail goto*//*Label 1316*/ GIMT_Encode4(54650), // Rule ID 1081 // |
| 20082 | /* 54607 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 20083 | /* 54610 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20084 | /* 54613 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20085 | /* 54617 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 20086 | /* 54621 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20087 | /* 54625 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20088 | /* 54632 */ // (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (LD_Fp64m:{ *:[f64] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 20089 | /* 54632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp64m), |
| 20090 | /* 54635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20091 | /* 54637 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20092 | /* 54641 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 20093 | /* 54644 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20094 | /* 54648 */ GIR_RootConstrainSelectedInstOperands, |
| 20095 | /* 54649 */ // GIR_Coverage, 1081, |
| 20096 | /* 54649 */ GIR_EraseRootFromParent_Done, |
| 20097 | /* 54650 */ // Label 1316: @54650 |
| 20098 | /* 54650 */ GIM_Try, /*On fail goto*//*Label 1317*/ GIMT_Encode4(54705), // Rule ID 1083 // |
| 20099 | /* 54655 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 20100 | /* 54658 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20101 | /* 54661 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20102 | /* 54665 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 20103 | /* 54672 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 20104 | /* 54676 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20105 | /* 54680 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20106 | /* 54687 */ // (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>> => (LD_Fp32m64:{ *:[f64] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 20107 | /* 54687 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp32m64), |
| 20108 | /* 54690 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20109 | /* 54692 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20110 | /* 54696 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 20111 | /* 54699 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20112 | /* 54703 */ GIR_RootConstrainSelectedInstOperands, |
| 20113 | /* 54704 */ // GIR_Coverage, 1083, |
| 20114 | /* 54704 */ GIR_EraseRootFromParent_Done, |
| 20115 | /* 54705 */ // Label 1317: @54705 |
| 20116 | /* 54705 */ GIM_Try, /*On fail goto*//*Label 1318*/ GIMT_Encode4(54750), // Rule ID 1701 // |
| 20117 | /* 54710 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 20118 | /* 54713 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20119 | /* 54716 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20120 | /* 54720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 20121 | /* 54724 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20122 | /* 54728 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20123 | /* 54735 */ // (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVSDrm_alt:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 20124 | /* 54735 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDrm_alt), |
| 20125 | /* 54738 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20126 | /* 54740 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20127 | /* 54744 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20128 | /* 54748 */ GIR_RootConstrainSelectedInstOperands, |
| 20129 | /* 54749 */ // GIR_Coverage, 1701, |
| 20130 | /* 54749 */ GIR_EraseRootFromParent_Done, |
| 20131 | /* 54750 */ // Label 1318: @54750 |
| 20132 | /* 54750 */ GIM_Try, /*On fail goto*//*Label 1319*/ GIMT_Encode4(54795), // Rule ID 1702 // |
| 20133 | /* 54755 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 20134 | /* 54758 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20135 | /* 54761 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20136 | /* 54765 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 20137 | /* 54769 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20138 | /* 54773 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20139 | /* 54780 */ // (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVSDrm_alt:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 20140 | /* 54780 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSDrm_alt), |
| 20141 | /* 54783 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20142 | /* 54785 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20143 | /* 54789 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20144 | /* 54793 */ GIR_RootConstrainSelectedInstOperands, |
| 20145 | /* 54794 */ // GIR_Coverage, 1702, |
| 20146 | /* 54794 */ GIR_EraseRootFromParent_Done, |
| 20147 | /* 54795 */ // Label 1319: @54795 |
| 20148 | /* 54795 */ GIM_Try, /*On fail goto*//*Label 1320*/ GIMT_Encode4(54844), // Rule ID 22518 // |
| 20149 | /* 54800 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 20150 | /* 54803 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20151 | /* 54807 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 20152 | /* 54814 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 20153 | /* 54818 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20154 | /* 54822 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20155 | /* 54829 */ // (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>> => (MOV64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 20156 | /* 54829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64rm), |
| 20157 | /* 54832 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20158 | /* 54834 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20159 | /* 54838 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20160 | /* 54842 */ GIR_RootConstrainSelectedInstOperands, |
| 20161 | /* 54843 */ // GIR_Coverage, 22518, |
| 20162 | /* 54843 */ GIR_EraseRootFromParent_Done, |
| 20163 | /* 54844 */ // Label 1320: @54844 |
| 20164 | /* 54844 */ GIM_Try, /*On fail goto*//*Label 1321*/ GIMT_Encode4(54925), // Rule ID 22587 // |
| 20165 | /* 54849 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20166 | /* 54852 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20167 | /* 54856 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 20168 | /* 54863 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 20169 | /* 54867 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20170 | /* 54871 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20171 | /* 54878 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi1>> => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 20172 | /* 54878 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20173 | /* 54881 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 20174 | /* 54885 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 20175 | /* 54890 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 20176 | /* 54894 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20177 | /* 54898 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20178 | /* 54900 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 20179 | /* 54903 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20180 | /* 54905 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 20181 | /* 54908 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20182 | /* 54911 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 20183 | /* 54914 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 20184 | /* 54919 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 20185 | /* 54924 */ // GIR_Coverage, 22587, |
| 20186 | /* 54924 */ GIR_EraseRootFromParent_Done, |
| 20187 | /* 54925 */ // Label 1321: @54925 |
| 20188 | /* 54925 */ GIM_Try, /*On fail goto*//*Label 1322*/ GIMT_Encode4(55006), // Rule ID 22588 // |
| 20189 | /* 54930 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20190 | /* 54933 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20191 | /* 54937 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 20192 | /* 54944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 20193 | /* 54948 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20194 | /* 54952 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20195 | /* 54959 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 20196 | /* 54959 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20197 | /* 54962 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 20198 | /* 54966 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 20199 | /* 54971 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 20200 | /* 54975 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20201 | /* 54979 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20202 | /* 54981 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 20203 | /* 54984 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20204 | /* 54986 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 20205 | /* 54989 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20206 | /* 54992 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 20207 | /* 54995 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 20208 | /* 55000 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 20209 | /* 55005 */ // GIR_Coverage, 22588, |
| 20210 | /* 55005 */ GIR_EraseRootFromParent_Done, |
| 20211 | /* 55006 */ // Label 1322: @55006 |
| 20212 | /* 55006 */ GIM_Try, /*On fail goto*//*Label 1323*/ GIMT_Encode4(55087), // Rule ID 22589 // |
| 20213 | /* 55011 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20214 | /* 55014 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20215 | /* 55018 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 20216 | /* 55025 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 20217 | /* 55029 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20218 | /* 55033 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20219 | /* 55040 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOVZX32rm16:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 20220 | /* 55040 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20221 | /* 55043 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm16), |
| 20222 | /* 55047 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 20223 | /* 55052 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 20224 | /* 55056 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20225 | /* 55060 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20226 | /* 55062 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 20227 | /* 55065 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20228 | /* 55067 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 20229 | /* 55070 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20230 | /* 55073 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 20231 | /* 55076 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 20232 | /* 55081 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 20233 | /* 55086 */ // GIR_Coverage, 22589, |
| 20234 | /* 55086 */ GIR_EraseRootFromParent_Done, |
| 20235 | /* 55087 */ // Label 1323: @55087 |
| 20236 | /* 55087 */ GIM_Try, /*On fail goto*//*Label 1324*/ GIMT_Encode4(55132), // Rule ID 4615 // |
| 20237 | /* 55092 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 20238 | /* 55095 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20239 | /* 55098 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20240 | /* 55102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 20241 | /* 55106 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20242 | /* 55110 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20243 | /* 55117 */ // (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVSDZrm_alt:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 20244 | /* 55117 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDZrm_alt), |
| 20245 | /* 55120 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20246 | /* 55122 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20247 | /* 55126 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20248 | /* 55130 */ GIR_RootConstrainSelectedInstOperands, |
| 20249 | /* 55131 */ // GIR_Coverage, 4615, |
| 20250 | /* 55131 */ GIR_EraseRootFromParent_Done, |
| 20251 | /* 55132 */ // Label 1324: @55132 |
| 20252 | /* 55132 */ GIM_Reject, |
| 20253 | /* 55133 */ // Label 1273: @55133 |
| 20254 | /* 55133 */ GIM_Try, /*On fail goto*//*Label 1325*/ GIMT_Encode4(55291), |
| 20255 | /* 55138 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20256 | /* 55141 */ GIM_Try, /*On fail goto*//*Label 1326*/ GIMT_Encode4(55186), // Rule ID 1082 // |
| 20257 | /* 55146 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 20258 | /* 55149 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20259 | /* 55153 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 20260 | /* 55157 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20261 | /* 55161 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20262 | /* 55168 */ // (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (LD_Fp80m:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 20263 | /* 55168 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp80m), |
| 20264 | /* 55171 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20265 | /* 55173 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20266 | /* 55177 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 20267 | /* 55180 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20268 | /* 55184 */ GIR_RootConstrainSelectedInstOperands, |
| 20269 | /* 55185 */ // GIR_Coverage, 1082, |
| 20270 | /* 55185 */ GIR_EraseRootFromParent_Done, |
| 20271 | /* 55186 */ // Label 1326: @55186 |
| 20272 | /* 55186 */ GIM_Try, /*On fail goto*//*Label 1327*/ GIMT_Encode4(55238), // Rule ID 1084 // |
| 20273 | /* 55191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 20274 | /* 55194 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20275 | /* 55198 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 20276 | /* 55205 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 20277 | /* 55209 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20278 | /* 55213 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20279 | /* 55220 */ // (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>> => (LD_Fp64m80:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 20280 | /* 55220 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp64m80), |
| 20281 | /* 55223 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20282 | /* 55225 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20283 | /* 55229 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 20284 | /* 55232 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20285 | /* 55236 */ GIR_RootConstrainSelectedInstOperands, |
| 20286 | /* 55237 */ // GIR_Coverage, 1084, |
| 20287 | /* 55237 */ GIR_EraseRootFromParent_Done, |
| 20288 | /* 55238 */ // Label 1327: @55238 |
| 20289 | /* 55238 */ GIM_Try, /*On fail goto*//*Label 1328*/ GIMT_Encode4(55290), // Rule ID 1085 // |
| 20290 | /* 55243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 20291 | /* 55246 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20292 | /* 55250 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 20293 | /* 55257 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 20294 | /* 55261 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20295 | /* 55265 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20296 | /* 55272 */ // (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>> => (LD_Fp32m80:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 20297 | /* 55272 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp32m80), |
| 20298 | /* 55275 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20299 | /* 55277 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20300 | /* 55281 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 20301 | /* 55284 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20302 | /* 55288 */ GIR_RootConstrainSelectedInstOperands, |
| 20303 | /* 55289 */ // GIR_Coverage, 1085, |
| 20304 | /* 55289 */ GIR_EraseRootFromParent_Done, |
| 20305 | /* 55290 */ // Label 1328: @55290 |
| 20306 | /* 55290 */ GIM_Reject, |
| 20307 | /* 55291 */ // Label 1325: @55291 |
| 20308 | /* 55291 */ GIM_Reject, |
| 20309 | /* 55292 */ // Label 1274: @55292 |
| 20310 | /* 55292 */ GIM_Try, /*On fail goto*//*Label 1329*/ GIMT_Encode4(55419), |
| 20311 | /* 55297 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20312 | /* 55300 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20313 | /* 55304 */ GIM_Try, /*On fail goto*//*Label 1330*/ GIMT_Encode4(55342), // Rule ID 23145 // |
| 20314 | /* 55309 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoAVX), |
| 20315 | /* 55312 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20316 | /* 55316 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20317 | /* 55320 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20318 | /* 55327 */ // (ld:{ *:[f128] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[f128] } addr:{ *:[iPTR] }:$src) |
| 20319 | /* 55327 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20320 | /* 55330 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20321 | /* 55332 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20322 | /* 55336 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20323 | /* 55340 */ GIR_RootConstrainSelectedInstOperands, |
| 20324 | /* 55341 */ // GIR_Coverage, 23145, |
| 20325 | /* 55341 */ GIR_EraseRootFromParent_Done, |
| 20326 | /* 55342 */ // Label 1330: @55342 |
| 20327 | /* 55342 */ GIM_Try, /*On fail goto*//*Label 1331*/ GIMT_Encode4(55380), // Rule ID 23149 // |
| 20328 | /* 55347 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20329 | /* 55350 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20330 | /* 55354 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20331 | /* 55358 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20332 | /* 55365 */ // (ld:{ *:[f128] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSrm:{ *:[f128] } addr:{ *:[iPTR] }:$src) |
| 20333 | /* 55365 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSrm), |
| 20334 | /* 55368 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20335 | /* 55370 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20336 | /* 55374 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20337 | /* 55378 */ GIR_RootConstrainSelectedInstOperands, |
| 20338 | /* 55379 */ // GIR_Coverage, 23149, |
| 20339 | /* 55379 */ GIR_EraseRootFromParent_Done, |
| 20340 | /* 55380 */ // Label 1331: @55380 |
| 20341 | /* 55380 */ GIM_Try, /*On fail goto*//*Label 1332*/ GIMT_Encode4(55418), // Rule ID 23153 // |
| 20342 | /* 55385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20343 | /* 55388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20344 | /* 55392 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20345 | /* 55396 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20346 | /* 55403 */ // (ld:{ *:[f128] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZ128rm:{ *:[f128] } addr:{ *:[iPTR] }:$src) |
| 20347 | /* 55403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128rm), |
| 20348 | /* 55406 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20349 | /* 55408 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20350 | /* 55412 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20351 | /* 55416 */ GIR_RootConstrainSelectedInstOperands, |
| 20352 | /* 55417 */ // GIR_Coverage, 23153, |
| 20353 | /* 55417 */ GIR_EraseRootFromParent_Done, |
| 20354 | /* 55418 */ // Label 1332: @55418 |
| 20355 | /* 55418 */ GIM_Reject, |
| 20356 | /* 55419 */ // Label 1329: @55419 |
| 20357 | /* 55419 */ GIM_Reject, |
| 20358 | /* 55420 */ // Label 1275: @55420 |
| 20359 | /* 55420 */ GIM_Try, /*On fail goto*//*Label 1333*/ GIMT_Encode4(55486), // Rule ID 19446 // |
| 20360 | /* 55425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 20361 | /* 55428 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20362 | /* 55431 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20363 | /* 55435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 20364 | /* 55439 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20365 | /* 55443 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20366 | /* 55450 */ // (ld:{ *:[v2i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (COPY_TO_REGCLASS:{ *:[v2i1] } (KMOVBkm:{ *:[v8i1] } addr:{ *:[iPTR] }:$src), VK2:{ *:[i32] }) |
| 20367 | /* 55450 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 20368 | /* 55453 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVBkm), |
| 20369 | /* 55457 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 20370 | /* 55462 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 20371 | /* 55466 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20372 | /* 55470 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20373 | /* 55472 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 20374 | /* 55475 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20375 | /* 55477 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20376 | /* 55480 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 20377 | /* 55485 */ // GIR_Coverage, 19446, |
| 20378 | /* 55485 */ GIR_EraseRootFromParent_Done, |
| 20379 | /* 55486 */ // Label 1333: @55486 |
| 20380 | /* 55486 */ GIM_Reject, |
| 20381 | /* 55487 */ // Label 1276: @55487 |
| 20382 | /* 55487 */ GIM_Try, /*On fail goto*//*Label 1334*/ GIMT_Encode4(55980), |
| 20383 | /* 55492 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20384 | /* 55495 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20385 | /* 55499 */ GIM_Try, /*On fail goto*//*Label 1335*/ GIMT_Encode4(55541), // Rule ID 1704 // |
| 20386 | /* 55504 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20387 | /* 55507 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20388 | /* 55511 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20389 | /* 55515 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20390 | /* 55519 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20391 | /* 55526 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPDrm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20392 | /* 55526 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDrm), |
| 20393 | /* 55529 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20394 | /* 55531 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20395 | /* 55535 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20396 | /* 55539 */ GIR_RootConstrainSelectedInstOperands, |
| 20397 | /* 55540 */ // GIR_Coverage, 1704, |
| 20398 | /* 55540 */ GIR_EraseRootFromParent_Done, |
| 20399 | /* 55541 */ // Label 1335: @55541 |
| 20400 | /* 55541 */ GIM_Try, /*On fail goto*//*Label 1336*/ GIMT_Encode4(55579), // Rule ID 1706 // |
| 20401 | /* 55546 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20402 | /* 55549 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20403 | /* 55553 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20404 | /* 55557 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20405 | /* 55564 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPDrm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20406 | /* 55564 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDrm), |
| 20407 | /* 55567 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20408 | /* 55569 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20409 | /* 55573 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20410 | /* 55577 */ GIR_RootConstrainSelectedInstOperands, |
| 20411 | /* 55578 */ // GIR_Coverage, 1706, |
| 20412 | /* 55578 */ GIR_EraseRootFromParent_Done, |
| 20413 | /* 55579 */ // Label 1336: @55579 |
| 20414 | /* 55579 */ GIM_Try, /*On fail goto*//*Label 1337*/ GIMT_Encode4(55621), // Rule ID 1713 // |
| 20415 | /* 55584 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 20416 | /* 55587 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20417 | /* 55591 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20418 | /* 55595 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20419 | /* 55599 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20420 | /* 55606 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPDrm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20421 | /* 55606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPDrm), |
| 20422 | /* 55609 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20423 | /* 55611 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20424 | /* 55615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20425 | /* 55619 */ GIR_RootConstrainSelectedInstOperands, |
| 20426 | /* 55620 */ // GIR_Coverage, 1713, |
| 20427 | /* 55620 */ GIR_EraseRootFromParent_Done, |
| 20428 | /* 55621 */ // Label 1337: @55621 |
| 20429 | /* 55621 */ GIM_Try, /*On fail goto*//*Label 1338*/ GIMT_Encode4(55659), // Rule ID 1714 // |
| 20430 | /* 55626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 20431 | /* 55629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20432 | /* 55633 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20433 | /* 55637 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20434 | /* 55644 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPDrm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20435 | /* 55644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPDrm), |
| 20436 | /* 55647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20437 | /* 55649 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20438 | /* 55653 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20439 | /* 55657 */ GIR_RootConstrainSelectedInstOperands, |
| 20440 | /* 55658 */ // GIR_Coverage, 1714, |
| 20441 | /* 55658 */ GIR_EraseRootFromParent_Done, |
| 20442 | /* 55659 */ // Label 1338: @55659 |
| 20443 | /* 55659 */ GIM_Try, /*On fail goto*//*Label 1339*/ GIMT_Encode4(55701), // Rule ID 2518 // |
| 20444 | /* 55664 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20445 | /* 55667 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20446 | /* 55671 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20447 | /* 55675 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20448 | /* 55679 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20449 | /* 55686 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQArm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20450 | /* 55686 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQArm), |
| 20451 | /* 55689 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20452 | /* 55691 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20453 | /* 55695 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20454 | /* 55699 */ GIR_RootConstrainSelectedInstOperands, |
| 20455 | /* 55700 */ // GIR_Coverage, 2518, |
| 20456 | /* 55700 */ GIR_EraseRootFromParent_Done, |
| 20457 | /* 55701 */ // Label 1339: @55701 |
| 20458 | /* 55701 */ GIM_Try, /*On fail goto*//*Label 1340*/ GIMT_Encode4(55739), // Rule ID 2519 // |
| 20459 | /* 55706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20460 | /* 55709 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20461 | /* 55713 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20462 | /* 55717 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20463 | /* 55724 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQUrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20464 | /* 55724 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUrm), |
| 20465 | /* 55727 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20466 | /* 55729 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20467 | /* 55733 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20468 | /* 55737 */ GIR_RootConstrainSelectedInstOperands, |
| 20469 | /* 55738 */ // GIR_Coverage, 2519, |
| 20470 | /* 55738 */ GIR_EraseRootFromParent_Done, |
| 20471 | /* 55739 */ // Label 1340: @55739 |
| 20472 | /* 55739 */ GIM_Try, /*On fail goto*//*Label 1341*/ GIMT_Encode4(55781), // Rule ID 4490 // |
| 20473 | /* 55744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20474 | /* 55747 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20475 | /* 55751 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20476 | /* 55755 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20477 | /* 55759 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20478 | /* 55766 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPDZ128rm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20479 | /* 55766 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ128rm), |
| 20480 | /* 55769 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20481 | /* 55771 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20482 | /* 55775 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20483 | /* 55779 */ GIR_RootConstrainSelectedInstOperands, |
| 20484 | /* 55780 */ // GIR_Coverage, 4490, |
| 20485 | /* 55780 */ GIR_EraseRootFromParent_Done, |
| 20486 | /* 55781 */ // Label 1341: @55781 |
| 20487 | /* 55781 */ GIM_Try, /*On fail goto*//*Label 1342*/ GIMT_Encode4(55819), // Rule ID 4515 // |
| 20488 | /* 55786 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20489 | /* 55789 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20490 | /* 55793 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20491 | /* 55797 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20492 | /* 55804 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPDZ128rm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20493 | /* 55804 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZ128rm), |
| 20494 | /* 55807 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20495 | /* 55809 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20496 | /* 55813 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20497 | /* 55817 */ GIR_RootConstrainSelectedInstOperands, |
| 20498 | /* 55818 */ // GIR_Coverage, 4515, |
| 20499 | /* 55818 */ GIR_EraseRootFromParent_Done, |
| 20500 | /* 55819 */ // Label 1342: @55819 |
| 20501 | /* 55819 */ GIM_Try, /*On fail goto*//*Label 1343*/ GIMT_Encode4(55861), // Rule ID 4544 // |
| 20502 | /* 55824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20503 | /* 55827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20504 | /* 55831 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20505 | /* 55835 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20506 | /* 55839 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20507 | /* 55846 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20508 | /* 55846 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rm), |
| 20509 | /* 55849 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20510 | /* 55851 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20511 | /* 55855 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20512 | /* 55859 */ GIR_RootConstrainSelectedInstOperands, |
| 20513 | /* 55860 */ // GIR_Coverage, 4544, |
| 20514 | /* 55860 */ GIR_EraseRootFromParent_Done, |
| 20515 | /* 55861 */ // Label 1343: @55861 |
| 20516 | /* 55861 */ GIM_Try, /*On fail goto*//*Label 1344*/ GIMT_Encode4(55899), // Rule ID 4587 // |
| 20517 | /* 55866 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20518 | /* 55869 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20519 | /* 55873 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20520 | /* 55877 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20521 | /* 55884 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20522 | /* 55884 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128rm), |
| 20523 | /* 55887 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20524 | /* 55889 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20525 | /* 55893 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20526 | /* 55897 */ GIR_RootConstrainSelectedInstOperands, |
| 20527 | /* 55898 */ // GIR_Coverage, 4587, |
| 20528 | /* 55898 */ GIR_EraseRootFromParent_Done, |
| 20529 | /* 55899 */ // Label 1344: @55899 |
| 20530 | /* 55899 */ GIM_Try, /*On fail goto*//*Label 1345*/ GIMT_Encode4(55941), // Rule ID 17939 // |
| 20531 | /* 55904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20532 | /* 55907 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20533 | /* 55911 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20534 | /* 55915 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20535 | /* 55919 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20536 | /* 55926 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20537 | /* 55926 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 20538 | /* 55929 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20539 | /* 55931 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20540 | /* 55935 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20541 | /* 55939 */ GIR_RootConstrainSelectedInstOperands, |
| 20542 | /* 55940 */ // GIR_Coverage, 17939, |
| 20543 | /* 55940 */ GIR_EraseRootFromParent_Done, |
| 20544 | /* 55941 */ // Label 1345: @55941 |
| 20545 | /* 55941 */ GIM_Try, /*On fail goto*//*Label 1346*/ GIMT_Encode4(55979), // Rule ID 17943 // |
| 20546 | /* 55946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20547 | /* 55949 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20548 | /* 55953 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20549 | /* 55957 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20550 | /* 55964 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20551 | /* 55964 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20552 | /* 55967 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20553 | /* 55969 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20554 | /* 55973 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20555 | /* 55977 */ GIR_RootConstrainSelectedInstOperands, |
| 20556 | /* 55978 */ // GIR_Coverage, 17943, |
| 20557 | /* 55978 */ GIR_EraseRootFromParent_Done, |
| 20558 | /* 55979 */ // Label 1346: @55979 |
| 20559 | /* 55979 */ GIM_Reject, |
| 20560 | /* 55980 */ // Label 1334: @55980 |
| 20561 | /* 55980 */ GIM_Reject, |
| 20562 | /* 55981 */ // Label 1277: @55981 |
| 20563 | /* 55981 */ GIM_Try, /*On fail goto*//*Label 1347*/ GIMT_Encode4(56047), // Rule ID 19447 // |
| 20564 | /* 55986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 20565 | /* 55989 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20566 | /* 55992 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20567 | /* 55996 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 20568 | /* 56000 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20569 | /* 56004 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20570 | /* 56011 */ // (ld:{ *:[v4i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (COPY_TO_REGCLASS:{ *:[v4i1] } (KMOVBkm:{ *:[v8i1] } addr:{ *:[iPTR] }:$src), VK4:{ *:[i32] }) |
| 20571 | /* 56011 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 20572 | /* 56014 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVBkm), |
| 20573 | /* 56018 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 20574 | /* 56023 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 20575 | /* 56027 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20576 | /* 56031 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20577 | /* 56033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 20578 | /* 56036 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20579 | /* 56038 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20580 | /* 56041 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 20581 | /* 56046 */ // GIR_Coverage, 19447, |
| 20582 | /* 56046 */ GIR_EraseRootFromParent_Done, |
| 20583 | /* 56047 */ // Label 1347: @56047 |
| 20584 | /* 56047 */ GIM_Reject, |
| 20585 | /* 56048 */ // Label 1278: @56048 |
| 20586 | /* 56048 */ GIM_Try, /*On fail goto*//*Label 1348*/ GIMT_Encode4(56541), |
| 20587 | /* 56053 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20588 | /* 56056 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20589 | /* 56060 */ GIM_Try, /*On fail goto*//*Label 1349*/ GIMT_Encode4(56102), // Rule ID 1703 // |
| 20590 | /* 56065 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20591 | /* 56068 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20592 | /* 56072 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20593 | /* 56076 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20594 | /* 56080 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20595 | /* 56087 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20596 | /* 56087 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSrm), |
| 20597 | /* 56090 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20598 | /* 56092 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20599 | /* 56096 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20600 | /* 56100 */ GIR_RootConstrainSelectedInstOperands, |
| 20601 | /* 56101 */ // GIR_Coverage, 1703, |
| 20602 | /* 56101 */ GIR_EraseRootFromParent_Done, |
| 20603 | /* 56102 */ // Label 1349: @56102 |
| 20604 | /* 56102 */ GIM_Try, /*On fail goto*//*Label 1350*/ GIMT_Encode4(56140), // Rule ID 1705 // |
| 20605 | /* 56107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20606 | /* 56110 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20607 | /* 56114 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20608 | /* 56118 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20609 | /* 56125 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20610 | /* 56125 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSrm), |
| 20611 | /* 56128 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20612 | /* 56130 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20613 | /* 56134 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20614 | /* 56138 */ GIR_RootConstrainSelectedInstOperands, |
| 20615 | /* 56139 */ // GIR_Coverage, 1705, |
| 20616 | /* 56139 */ GIR_EraseRootFromParent_Done, |
| 20617 | /* 56140 */ // Label 1350: @56140 |
| 20618 | /* 56140 */ GIM_Try, /*On fail goto*//*Label 1351*/ GIMT_Encode4(56182), // Rule ID 1711 // |
| 20619 | /* 56145 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20620 | /* 56148 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20621 | /* 56152 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20622 | /* 56156 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20623 | /* 56160 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20624 | /* 56167 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20625 | /* 56167 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 20626 | /* 56170 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20627 | /* 56172 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20628 | /* 56176 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20629 | /* 56180 */ GIR_RootConstrainSelectedInstOperands, |
| 20630 | /* 56181 */ // GIR_Coverage, 1711, |
| 20631 | /* 56181 */ GIR_EraseRootFromParent_Done, |
| 20632 | /* 56182 */ // Label 1351: @56182 |
| 20633 | /* 56182 */ GIM_Try, /*On fail goto*//*Label 1352*/ GIMT_Encode4(56220), // Rule ID 1712 // |
| 20634 | /* 56187 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20635 | /* 56190 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20636 | /* 56194 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20637 | /* 56198 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20638 | /* 56205 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20639 | /* 56205 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20640 | /* 56208 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20641 | /* 56210 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20642 | /* 56214 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20643 | /* 56218 */ GIR_RootConstrainSelectedInstOperands, |
| 20644 | /* 56219 */ // GIR_Coverage, 1712, |
| 20645 | /* 56219 */ GIR_EraseRootFromParent_Done, |
| 20646 | /* 56220 */ // Label 1352: @56220 |
| 20647 | /* 56220 */ GIM_Try, /*On fail goto*//*Label 1353*/ GIMT_Encode4(56262), // Rule ID 4472 // |
| 20648 | /* 56225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20649 | /* 56228 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20650 | /* 56232 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20651 | /* 56236 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20652 | /* 56240 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20653 | /* 56247 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZ128rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20654 | /* 56247 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128rm), |
| 20655 | /* 56250 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20656 | /* 56252 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20657 | /* 56256 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20658 | /* 56260 */ GIR_RootConstrainSelectedInstOperands, |
| 20659 | /* 56261 */ // GIR_Coverage, 4472, |
| 20660 | /* 56261 */ GIR_EraseRootFromParent_Done, |
| 20661 | /* 56262 */ // Label 1353: @56262 |
| 20662 | /* 56262 */ GIM_Try, /*On fail goto*//*Label 1354*/ GIMT_Encode4(56300), // Rule ID 4503 // |
| 20663 | /* 56267 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20664 | /* 56270 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20665 | /* 56274 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20666 | /* 56278 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20667 | /* 56285 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZ128rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20668 | /* 56285 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128rm), |
| 20669 | /* 56288 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20670 | /* 56290 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20671 | /* 56294 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20672 | /* 56298 */ GIR_RootConstrainSelectedInstOperands, |
| 20673 | /* 56299 */ // GIR_Coverage, 4503, |
| 20674 | /* 56299 */ GIR_EraseRootFromParent_Done, |
| 20675 | /* 56300 */ // Label 1354: @56300 |
| 20676 | /* 56300 */ GIM_Try, /*On fail goto*//*Label 1355*/ GIMT_Encode4(56342), // Rule ID 17940 // |
| 20677 | /* 56305 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20678 | /* 56308 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20679 | /* 56312 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20680 | /* 56316 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20681 | /* 56320 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20682 | /* 56327 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20683 | /* 56327 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 20684 | /* 56330 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20685 | /* 56332 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20686 | /* 56336 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20687 | /* 56340 */ GIR_RootConstrainSelectedInstOperands, |
| 20688 | /* 56341 */ // GIR_Coverage, 17940, |
| 20689 | /* 56341 */ GIR_EraseRootFromParent_Done, |
| 20690 | /* 56342 */ // Label 1355: @56342 |
| 20691 | /* 56342 */ GIM_Try, /*On fail goto*//*Label 1356*/ GIMT_Encode4(56380), // Rule ID 17944 // |
| 20692 | /* 56347 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20693 | /* 56350 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20694 | /* 56354 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20695 | /* 56358 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20696 | /* 56365 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20697 | /* 56365 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20698 | /* 56368 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20699 | /* 56370 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20700 | /* 56374 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20701 | /* 56378 */ GIR_RootConstrainSelectedInstOperands, |
| 20702 | /* 56379 */ // GIR_Coverage, 17944, |
| 20703 | /* 56379 */ GIR_EraseRootFromParent_Done, |
| 20704 | /* 56380 */ // Label 1356: @56380 |
| 20705 | /* 56380 */ GIM_Try, /*On fail goto*//*Label 1357*/ GIMT_Encode4(56422), // Rule ID 18319 // |
| 20706 | /* 56385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20707 | /* 56388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20708 | /* 56392 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20709 | /* 56396 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20710 | /* 56400 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20711 | /* 56407 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQArm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20712 | /* 56407 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQArm), |
| 20713 | /* 56410 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20714 | /* 56412 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20715 | /* 56416 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20716 | /* 56420 */ GIR_RootConstrainSelectedInstOperands, |
| 20717 | /* 56421 */ // GIR_Coverage, 18319, |
| 20718 | /* 56421 */ GIR_EraseRootFromParent_Done, |
| 20719 | /* 56422 */ // Label 1357: @56422 |
| 20720 | /* 56422 */ GIM_Try, /*On fail goto*//*Label 1358*/ GIMT_Encode4(56460), // Rule ID 18323 // |
| 20721 | /* 56427 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20722 | /* 56430 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20723 | /* 56434 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20724 | /* 56438 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20725 | /* 56445 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQUrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20726 | /* 56445 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUrm), |
| 20727 | /* 56448 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20728 | /* 56450 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20729 | /* 56454 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20730 | /* 56458 */ GIR_RootConstrainSelectedInstOperands, |
| 20731 | /* 56459 */ // GIR_Coverage, 18323, |
| 20732 | /* 56459 */ GIR_EraseRootFromParent_Done, |
| 20733 | /* 56460 */ // Label 1358: @56460 |
| 20734 | /* 56460 */ GIM_Try, /*On fail goto*//*Label 1359*/ GIMT_Encode4(56502), // Rule ID 19812 // |
| 20735 | /* 56465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20736 | /* 56468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20737 | /* 56472 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20738 | /* 56476 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20739 | /* 56480 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20740 | /* 56487 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20741 | /* 56487 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rm), |
| 20742 | /* 56490 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20743 | /* 56492 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20744 | /* 56496 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20745 | /* 56500 */ GIR_RootConstrainSelectedInstOperands, |
| 20746 | /* 56501 */ // GIR_Coverage, 19812, |
| 20747 | /* 56501 */ GIR_EraseRootFromParent_Done, |
| 20748 | /* 56502 */ // Label 1359: @56502 |
| 20749 | /* 56502 */ GIM_Try, /*On fail goto*//*Label 1360*/ GIMT_Encode4(56540), // Rule ID 19816 // |
| 20750 | /* 56507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20751 | /* 56510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20752 | /* 56514 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20753 | /* 56518 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20754 | /* 56525 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20755 | /* 56525 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128rm), |
| 20756 | /* 56528 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20757 | /* 56530 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20758 | /* 56534 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20759 | /* 56538 */ GIR_RootConstrainSelectedInstOperands, |
| 20760 | /* 56539 */ // GIR_Coverage, 19816, |
| 20761 | /* 56539 */ GIR_EraseRootFromParent_Done, |
| 20762 | /* 56540 */ // Label 1360: @56540 |
| 20763 | /* 56540 */ GIM_Reject, |
| 20764 | /* 56541 */ // Label 1348: @56541 |
| 20765 | /* 56541 */ GIM_Reject, |
| 20766 | /* 56542 */ // Label 1279: @56542 |
| 20767 | /* 56542 */ GIM_Try, /*On fail goto*//*Label 1361*/ GIMT_Encode4(56875), |
| 20768 | /* 56547 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20769 | /* 56550 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20770 | /* 56554 */ GIM_Try, /*On fail goto*//*Label 1362*/ GIMT_Encode4(56596), // Rule ID 1708 // |
| 20771 | /* 56559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20772 | /* 56562 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20773 | /* 56566 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20774 | /* 56570 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20775 | /* 56574 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20776 | /* 56581 */ // (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPDYrm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 20777 | /* 56581 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDYrm), |
| 20778 | /* 56584 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20779 | /* 56586 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20780 | /* 56590 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20781 | /* 56594 */ GIR_RootConstrainSelectedInstOperands, |
| 20782 | /* 56595 */ // GIR_Coverage, 1708, |
| 20783 | /* 56595 */ GIR_EraseRootFromParent_Done, |
| 20784 | /* 56596 */ // Label 1362: @56596 |
| 20785 | /* 56596 */ GIM_Try, /*On fail goto*//*Label 1363*/ GIMT_Encode4(56634), // Rule ID 1710 // |
| 20786 | /* 56601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20787 | /* 56604 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20788 | /* 56608 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20789 | /* 56612 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20790 | /* 56619 */ // (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPDYrm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 20791 | /* 56619 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDYrm), |
| 20792 | /* 56622 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20793 | /* 56624 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20794 | /* 56628 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20795 | /* 56632 */ GIR_RootConstrainSelectedInstOperands, |
| 20796 | /* 56633 */ // GIR_Coverage, 1710, |
| 20797 | /* 56633 */ GIR_EraseRootFromParent_Done, |
| 20798 | /* 56634 */ // Label 1363: @56634 |
| 20799 | /* 56634 */ GIM_Try, /*On fail goto*//*Label 1364*/ GIMT_Encode4(56676), // Rule ID 4485 // |
| 20800 | /* 56639 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20801 | /* 56642 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20802 | /* 56646 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20803 | /* 56650 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20804 | /* 56654 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20805 | /* 56661 */ // (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 20806 | /* 56661 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ256rm), |
| 20807 | /* 56664 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20808 | /* 56666 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20809 | /* 56670 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20810 | /* 56674 */ GIR_RootConstrainSelectedInstOperands, |
| 20811 | /* 56675 */ // GIR_Coverage, 4485, |
| 20812 | /* 56675 */ GIR_EraseRootFromParent_Done, |
| 20813 | /* 56676 */ // Label 1364: @56676 |
| 20814 | /* 56676 */ GIM_Try, /*On fail goto*//*Label 1365*/ GIMT_Encode4(56714), // Rule ID 4512 // |
| 20815 | /* 56681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20816 | /* 56684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20817 | /* 56688 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20818 | /* 56692 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20819 | /* 56699 */ // (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 20820 | /* 56699 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZ256rm), |
| 20821 | /* 56702 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20822 | /* 56704 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20823 | /* 56708 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20824 | /* 56712 */ GIR_RootConstrainSelectedInstOperands, |
| 20825 | /* 56713 */ // GIR_Coverage, 4512, |
| 20826 | /* 56713 */ GIR_EraseRootFromParent_Done, |
| 20827 | /* 56714 */ // Label 1365: @56714 |
| 20828 | /* 56714 */ GIM_Try, /*On fail goto*//*Label 1366*/ GIMT_Encode4(56756), // Rule ID 4539 // |
| 20829 | /* 56719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20830 | /* 56722 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20831 | /* 56726 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20832 | /* 56730 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20833 | /* 56734 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20834 | /* 56741 */ // (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 20835 | /* 56741 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rm), |
| 20836 | /* 56744 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20837 | /* 56746 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20838 | /* 56750 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20839 | /* 56754 */ GIR_RootConstrainSelectedInstOperands, |
| 20840 | /* 56755 */ // GIR_Coverage, 4539, |
| 20841 | /* 56755 */ GIR_EraseRootFromParent_Done, |
| 20842 | /* 56756 */ // Label 1366: @56756 |
| 20843 | /* 56756 */ GIM_Try, /*On fail goto*//*Label 1367*/ GIMT_Encode4(56794), // Rule ID 4584 // |
| 20844 | /* 56761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20845 | /* 56764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20846 | /* 56768 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20847 | /* 56772 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20848 | /* 56779 */ // (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 20849 | /* 56779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256rm), |
| 20850 | /* 56782 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20851 | /* 56784 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20852 | /* 56788 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20853 | /* 56792 */ GIR_RootConstrainSelectedInstOperands, |
| 20854 | /* 56793 */ // GIR_Coverage, 4584, |
| 20855 | /* 56793 */ GIR_EraseRootFromParent_Done, |
| 20856 | /* 56794 */ // Label 1367: @56794 |
| 20857 | /* 56794 */ GIM_Try, /*On fail goto*//*Label 1368*/ GIMT_Encode4(56836), // Rule ID 17915 // |
| 20858 | /* 56799 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20859 | /* 56802 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20860 | /* 56806 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20861 | /* 56810 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20862 | /* 56814 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20863 | /* 56821 */ // (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 20864 | /* 56821 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 20865 | /* 56824 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20866 | /* 56826 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20867 | /* 56830 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20868 | /* 56834 */ GIR_RootConstrainSelectedInstOperands, |
| 20869 | /* 56835 */ // GIR_Coverage, 17915, |
| 20870 | /* 56835 */ GIR_EraseRootFromParent_Done, |
| 20871 | /* 56836 */ // Label 1368: @56836 |
| 20872 | /* 56836 */ GIM_Try, /*On fail goto*//*Label 1369*/ GIMT_Encode4(56874), // Rule ID 17919 // |
| 20873 | /* 56841 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20874 | /* 56844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20875 | /* 56848 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20876 | /* 56852 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20877 | /* 56859 */ // (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 20878 | /* 56859 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 20879 | /* 56862 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20880 | /* 56864 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20881 | /* 56868 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20882 | /* 56872 */ GIR_RootConstrainSelectedInstOperands, |
| 20883 | /* 56873 */ // GIR_Coverage, 17919, |
| 20884 | /* 56873 */ GIR_EraseRootFromParent_Done, |
| 20885 | /* 56874 */ // Label 1369: @56874 |
| 20886 | /* 56874 */ GIM_Reject, |
| 20887 | /* 56875 */ // Label 1361: @56875 |
| 20888 | /* 56875 */ GIM_Reject, |
| 20889 | /* 56876 */ // Label 1280: @56876 |
| 20890 | /* 56876 */ GIM_Try, /*On fail goto*//*Label 1370*/ GIMT_Encode4(56957), |
| 20891 | /* 56881 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20892 | /* 56884 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20893 | /* 56888 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 20894 | /* 56892 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20895 | /* 56896 */ GIM_Try, /*On fail goto*//*Label 1371*/ GIMT_Encode4(56926), // Rule ID 4395 // |
| 20896 | /* 56901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoEGPR), |
| 20897 | /* 56904 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20898 | /* 56911 */ // (ld:{ *:[v8i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVBkm:{ *:[v8i1] } addr:{ *:[iPTR] }:$src) |
| 20899 | /* 56911 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVBkm), |
| 20900 | /* 56914 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20901 | /* 56916 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20902 | /* 56920 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20903 | /* 56924 */ GIR_RootConstrainSelectedInstOperands, |
| 20904 | /* 56925 */ // GIR_Coverage, 4395, |
| 20905 | /* 56925 */ GIR_EraseRootFromParent_Done, |
| 20906 | /* 56926 */ // Label 1371: @56926 |
| 20907 | /* 56926 */ GIM_Try, /*On fail goto*//*Label 1372*/ GIMT_Encode4(56956), // Rule ID 4397 // |
| 20908 | /* 56931 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasEGPR_In64BitMode), |
| 20909 | /* 56934 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20910 | /* 56941 */ // (ld:{ *:[v8i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVBkm_EVEX:{ *:[v8i1] } addr:{ *:[iPTR] }:$src) |
| 20911 | /* 56941 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVBkm_EVEX), |
| 20912 | /* 56944 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20913 | /* 56946 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20914 | /* 56950 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20915 | /* 56954 */ GIR_RootConstrainSelectedInstOperands, |
| 20916 | /* 56955 */ // GIR_Coverage, 4397, |
| 20917 | /* 56955 */ GIR_EraseRootFromParent_Done, |
| 20918 | /* 56956 */ // Label 1372: @56956 |
| 20919 | /* 56956 */ GIM_Reject, |
| 20920 | /* 56957 */ // Label 1370: @56957 |
| 20921 | /* 56957 */ GIM_Reject, |
| 20922 | /* 56958 */ // Label 1281: @56958 |
| 20923 | /* 56958 */ GIM_Try, /*On fail goto*//*Label 1373*/ GIMT_Encode4(57531), |
| 20924 | /* 56963 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20925 | /* 56966 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20926 | /* 56970 */ GIM_Try, /*On fail goto*//*Label 1374*/ GIMT_Encode4(57012), // Rule ID 17931 // |
| 20927 | /* 56975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20928 | /* 56978 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20929 | /* 56982 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20930 | /* 56986 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20931 | /* 56990 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20932 | /* 56997 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20933 | /* 56997 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSrm), |
| 20934 | /* 57000 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20935 | /* 57002 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20936 | /* 57006 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20937 | /* 57010 */ GIR_RootConstrainSelectedInstOperands, |
| 20938 | /* 57011 */ // GIR_Coverage, 17931, |
| 20939 | /* 57011 */ GIR_EraseRootFromParent_Done, |
| 20940 | /* 57012 */ // Label 1374: @57012 |
| 20941 | /* 57012 */ GIM_Try, /*On fail goto*//*Label 1375*/ GIMT_Encode4(57050), // Rule ID 17932 // |
| 20942 | /* 57017 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20943 | /* 57020 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20944 | /* 57024 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20945 | /* 57028 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20946 | /* 57035 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20947 | /* 57035 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSrm), |
| 20948 | /* 57038 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20949 | /* 57040 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20950 | /* 57044 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20951 | /* 57048 */ GIR_RootConstrainSelectedInstOperands, |
| 20952 | /* 57049 */ // GIR_Coverage, 17932, |
| 20953 | /* 57049 */ GIR_EraseRootFromParent_Done, |
| 20954 | /* 57050 */ // Label 1375: @57050 |
| 20955 | /* 57050 */ GIM_Try, /*On fail goto*//*Label 1376*/ GIMT_Encode4(57092), // Rule ID 17941 // |
| 20956 | /* 57055 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20957 | /* 57058 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20958 | /* 57062 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20959 | /* 57066 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20960 | /* 57070 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20961 | /* 57077 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 20962 | /* 57077 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 20963 | /* 57080 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20964 | /* 57082 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20965 | /* 57086 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20966 | /* 57090 */ GIR_RootConstrainSelectedInstOperands, |
| 20967 | /* 57091 */ // GIR_Coverage, 17941, |
| 20968 | /* 57091 */ GIR_EraseRootFromParent_Done, |
| 20969 | /* 57092 */ // Label 1376: @57092 |
| 20970 | /* 57092 */ GIM_Try, /*On fail goto*//*Label 1377*/ GIMT_Encode4(57130), // Rule ID 17945 // |
| 20971 | /* 57097 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20972 | /* 57100 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20973 | /* 57104 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20974 | /* 57108 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20975 | /* 57115 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 20976 | /* 57115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20977 | /* 57118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20978 | /* 57120 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20979 | /* 57124 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20980 | /* 57128 */ GIR_RootConstrainSelectedInstOperands, |
| 20981 | /* 57129 */ // GIR_Coverage, 17945, |
| 20982 | /* 57129 */ GIR_EraseRootFromParent_Done, |
| 20983 | /* 57130 */ // Label 1377: @57130 |
| 20984 | /* 57130 */ GIM_Try, /*On fail goto*//*Label 1378*/ GIMT_Encode4(57172), // Rule ID 17955 // |
| 20985 | /* 57135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 20986 | /* 57138 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20987 | /* 57142 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20988 | /* 57146 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20989 | /* 57150 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20990 | /* 57157 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20991 | /* 57157 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 20992 | /* 57160 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20993 | /* 57162 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20994 | /* 57166 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20995 | /* 57170 */ GIR_RootConstrainSelectedInstOperands, |
| 20996 | /* 57171 */ // GIR_Coverage, 17955, |
| 20997 | /* 57171 */ GIR_EraseRootFromParent_Done, |
| 20998 | /* 57172 */ // Label 1378: @57172 |
| 20999 | /* 57172 */ GIM_Try, /*On fail goto*//*Label 1379*/ GIMT_Encode4(57210), // Rule ID 17956 // |
| 21000 | /* 57177 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 21001 | /* 57180 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21002 | /* 57184 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21003 | /* 57188 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21004 | /* 57195 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 21005 | /* 57195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 21006 | /* 57198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21007 | /* 57200 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21008 | /* 57204 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21009 | /* 57208 */ GIR_RootConstrainSelectedInstOperands, |
| 21010 | /* 57209 */ // GIR_Coverage, 17956, |
| 21011 | /* 57209 */ GIR_EraseRootFromParent_Done, |
| 21012 | /* 57210 */ // Label 1379: @57210 |
| 21013 | /* 57210 */ GIM_Try, /*On fail goto*//*Label 1380*/ GIMT_Encode4(57252), // Rule ID 18320 // |
| 21014 | /* 57215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21015 | /* 57218 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21016 | /* 57222 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21017 | /* 57226 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21018 | /* 57230 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21019 | /* 57237 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQArm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 21020 | /* 57237 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQArm), |
| 21021 | /* 57240 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21022 | /* 57242 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21023 | /* 57246 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21024 | /* 57250 */ GIR_RootConstrainSelectedInstOperands, |
| 21025 | /* 57251 */ // GIR_Coverage, 18320, |
| 21026 | /* 57251 */ GIR_EraseRootFromParent_Done, |
| 21027 | /* 57252 */ // Label 1380: @57252 |
| 21028 | /* 57252 */ GIM_Try, /*On fail goto*//*Label 1381*/ GIMT_Encode4(57294), // Rule ID 18321 // |
| 21029 | /* 57257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21030 | /* 57260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21031 | /* 57264 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21032 | /* 57268 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21033 | /* 57272 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21034 | /* 57279 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQArm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 21035 | /* 57279 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQArm), |
| 21036 | /* 57282 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21037 | /* 57284 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21038 | /* 57288 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21039 | /* 57292 */ GIR_RootConstrainSelectedInstOperands, |
| 21040 | /* 57293 */ // GIR_Coverage, 18321, |
| 21041 | /* 57293 */ GIR_EraseRootFromParent_Done, |
| 21042 | /* 57294 */ // Label 1381: @57294 |
| 21043 | /* 57294 */ GIM_Try, /*On fail goto*//*Label 1382*/ GIMT_Encode4(57332), // Rule ID 18324 // |
| 21044 | /* 57299 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21045 | /* 57302 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21046 | /* 57306 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21047 | /* 57310 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21048 | /* 57317 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQUrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 21049 | /* 57317 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUrm), |
| 21050 | /* 57320 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21051 | /* 57322 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21052 | /* 57326 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21053 | /* 57330 */ GIR_RootConstrainSelectedInstOperands, |
| 21054 | /* 57331 */ // GIR_Coverage, 18324, |
| 21055 | /* 57331 */ GIR_EraseRootFromParent_Done, |
| 21056 | /* 57332 */ // Label 1382: @57332 |
| 21057 | /* 57332 */ GIM_Try, /*On fail goto*//*Label 1383*/ GIMT_Encode4(57370), // Rule ID 18325 // |
| 21058 | /* 57337 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21059 | /* 57340 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21060 | /* 57344 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21061 | /* 57348 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21062 | /* 57355 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQUrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 21063 | /* 57355 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUrm), |
| 21064 | /* 57358 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21065 | /* 57360 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21066 | /* 57364 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21067 | /* 57368 */ GIR_RootConstrainSelectedInstOperands, |
| 21068 | /* 57369 */ // GIR_Coverage, 18325, |
| 21069 | /* 57369 */ GIR_EraseRootFromParent_Done, |
| 21070 | /* 57370 */ // Label 1383: @57370 |
| 21071 | /* 57370 */ GIM_Try, /*On fail goto*//*Label 1384*/ GIMT_Encode4(57412), // Rule ID 19813 // |
| 21072 | /* 57375 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21073 | /* 57378 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 21074 | /* 57382 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21075 | /* 57386 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21076 | /* 57390 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21077 | /* 57397 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z128rm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 21078 | /* 57397 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rm), |
| 21079 | /* 57400 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21080 | /* 57402 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21081 | /* 57406 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21082 | /* 57410 */ GIR_RootConstrainSelectedInstOperands, |
| 21083 | /* 57411 */ // GIR_Coverage, 19813, |
| 21084 | /* 57411 */ GIR_EraseRootFromParent_Done, |
| 21085 | /* 57412 */ // Label 1384: @57412 |
| 21086 | /* 57412 */ GIM_Try, /*On fail goto*//*Label 1385*/ GIMT_Encode4(57454), // Rule ID 19814 // |
| 21087 | /* 57417 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21088 | /* 57420 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 21089 | /* 57424 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21090 | /* 57428 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21091 | /* 57432 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21092 | /* 57439 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZ128rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 21093 | /* 57439 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128rm), |
| 21094 | /* 57442 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21095 | /* 57444 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21096 | /* 57448 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21097 | /* 57452 */ GIR_RootConstrainSelectedInstOperands, |
| 21098 | /* 57453 */ // GIR_Coverage, 19814, |
| 21099 | /* 57453 */ GIR_EraseRootFromParent_Done, |
| 21100 | /* 57454 */ // Label 1385: @57454 |
| 21101 | /* 57454 */ GIM_Try, /*On fail goto*//*Label 1386*/ GIMT_Encode4(57492), // Rule ID 19817 // |
| 21102 | /* 57459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21103 | /* 57462 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 21104 | /* 57466 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21105 | /* 57470 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21106 | /* 57477 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z128rm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 21107 | /* 57477 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128rm), |
| 21108 | /* 57480 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21109 | /* 57482 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21110 | /* 57486 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21111 | /* 57490 */ GIR_RootConstrainSelectedInstOperands, |
| 21112 | /* 57491 */ // GIR_Coverage, 19817, |
| 21113 | /* 57491 */ GIR_EraseRootFromParent_Done, |
| 21114 | /* 57492 */ // Label 1386: @57492 |
| 21115 | /* 57492 */ GIM_Try, /*On fail goto*//*Label 1387*/ GIMT_Encode4(57530), // Rule ID 19818 // |
| 21116 | /* 57497 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21117 | /* 57500 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 21118 | /* 57504 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21119 | /* 57508 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21120 | /* 57515 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZ128rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 21121 | /* 57515 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128rm), |
| 21122 | /* 57518 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21123 | /* 57520 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21124 | /* 57524 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21125 | /* 57528 */ GIR_RootConstrainSelectedInstOperands, |
| 21126 | /* 57529 */ // GIR_Coverage, 19818, |
| 21127 | /* 57529 */ GIR_EraseRootFromParent_Done, |
| 21128 | /* 57530 */ // Label 1387: @57530 |
| 21129 | /* 57530 */ GIM_Reject, |
| 21130 | /* 57531 */ // Label 1373: @57531 |
| 21131 | /* 57531 */ GIM_Reject, |
| 21132 | /* 57532 */ // Label 1282: @57532 |
| 21133 | /* 57532 */ GIM_Try, /*On fail goto*//*Label 1388*/ GIMT_Encode4(57865), |
| 21134 | /* 57537 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21135 | /* 57540 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21136 | /* 57544 */ GIM_Try, /*On fail goto*//*Label 1389*/ GIMT_Encode4(57586), // Rule ID 1707 // |
| 21137 | /* 57549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21138 | /* 57552 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21139 | /* 57556 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21140 | /* 57560 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21141 | /* 57564 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21142 | /* 57571 */ // (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 21143 | /* 57571 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 21144 | /* 57574 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21145 | /* 57576 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21146 | /* 57580 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21147 | /* 57584 */ GIR_RootConstrainSelectedInstOperands, |
| 21148 | /* 57585 */ // GIR_Coverage, 1707, |
| 21149 | /* 57585 */ GIR_EraseRootFromParent_Done, |
| 21150 | /* 57586 */ // Label 1389: @57586 |
| 21151 | /* 57586 */ GIM_Try, /*On fail goto*//*Label 1390*/ GIMT_Encode4(57624), // Rule ID 1709 // |
| 21152 | /* 57591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21153 | /* 57594 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21154 | /* 57598 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21155 | /* 57602 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21156 | /* 57609 */ // (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 21157 | /* 57609 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 21158 | /* 57612 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21159 | /* 57614 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21160 | /* 57618 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21161 | /* 57622 */ GIR_RootConstrainSelectedInstOperands, |
| 21162 | /* 57623 */ // GIR_Coverage, 1709, |
| 21163 | /* 57623 */ GIR_EraseRootFromParent_Done, |
| 21164 | /* 57624 */ // Label 1390: @57624 |
| 21165 | /* 57624 */ GIM_Try, /*On fail goto*//*Label 1391*/ GIMT_Encode4(57666), // Rule ID 4467 // |
| 21166 | /* 57629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 21167 | /* 57632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21168 | /* 57636 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21169 | /* 57640 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21170 | /* 57644 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21171 | /* 57651 */ // (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZ256rm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 21172 | /* 57651 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256rm), |
| 21173 | /* 57654 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21174 | /* 57656 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21175 | /* 57660 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21176 | /* 57664 */ GIR_RootConstrainSelectedInstOperands, |
| 21177 | /* 57665 */ // GIR_Coverage, 4467, |
| 21178 | /* 57665 */ GIR_EraseRootFromParent_Done, |
| 21179 | /* 57666 */ // Label 1391: @57666 |
| 21180 | /* 57666 */ GIM_Try, /*On fail goto*//*Label 1392*/ GIMT_Encode4(57704), // Rule ID 4500 // |
| 21181 | /* 57671 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 21182 | /* 57674 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21183 | /* 57678 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21184 | /* 57682 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21185 | /* 57689 */ // (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZ256rm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 21186 | /* 57689 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ256rm), |
| 21187 | /* 57692 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21188 | /* 57694 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21189 | /* 57698 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21190 | /* 57702 */ GIR_RootConstrainSelectedInstOperands, |
| 21191 | /* 57703 */ // GIR_Coverage, 4500, |
| 21192 | /* 57703 */ GIR_EraseRootFromParent_Done, |
| 21193 | /* 57704 */ // Label 1392: @57704 |
| 21194 | /* 57704 */ GIM_Try, /*On fail goto*//*Label 1393*/ GIMT_Encode4(57746), // Rule ID 17916 // |
| 21195 | /* 57709 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21196 | /* 57712 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21197 | /* 57716 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21198 | /* 57720 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21199 | /* 57724 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21200 | /* 57731 */ // (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 21201 | /* 57731 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 21202 | /* 57734 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21203 | /* 57736 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21204 | /* 57740 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21205 | /* 57744 */ GIR_RootConstrainSelectedInstOperands, |
| 21206 | /* 57745 */ // GIR_Coverage, 17916, |
| 21207 | /* 57745 */ GIR_EraseRootFromParent_Done, |
| 21208 | /* 57746 */ // Label 1393: @57746 |
| 21209 | /* 57746 */ GIM_Try, /*On fail goto*//*Label 1394*/ GIMT_Encode4(57784), // Rule ID 17920 // |
| 21210 | /* 57751 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21211 | /* 57754 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21212 | /* 57758 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21213 | /* 57762 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21214 | /* 57769 */ // (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 21215 | /* 57769 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 21216 | /* 57772 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21217 | /* 57774 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21218 | /* 57778 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21219 | /* 57782 */ GIR_RootConstrainSelectedInstOperands, |
| 21220 | /* 57783 */ // GIR_Coverage, 17920, |
| 21221 | /* 57783 */ GIR_EraseRootFromParent_Done, |
| 21222 | /* 57784 */ // Label 1394: @57784 |
| 21223 | /* 57784 */ GIM_Try, /*On fail goto*//*Label 1395*/ GIMT_Encode4(57826), // Rule ID 19828 // |
| 21224 | /* 57789 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21225 | /* 57792 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21226 | /* 57796 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21227 | /* 57800 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21228 | /* 57804 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21229 | /* 57811 */ // (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 21230 | /* 57811 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rm), |
| 21231 | /* 57814 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21232 | /* 57816 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21233 | /* 57820 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21234 | /* 57824 */ GIR_RootConstrainSelectedInstOperands, |
| 21235 | /* 57825 */ // GIR_Coverage, 19828, |
| 21236 | /* 57825 */ GIR_EraseRootFromParent_Done, |
| 21237 | /* 57826 */ // Label 1395: @57826 |
| 21238 | /* 57826 */ GIM_Try, /*On fail goto*//*Label 1396*/ GIMT_Encode4(57864), // Rule ID 19832 // |
| 21239 | /* 57831 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21240 | /* 57834 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21241 | /* 57838 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21242 | /* 57842 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21243 | /* 57849 */ // (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 21244 | /* 57849 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256rm), |
| 21245 | /* 57852 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21246 | /* 57854 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21247 | /* 57858 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21248 | /* 57862 */ GIR_RootConstrainSelectedInstOperands, |
| 21249 | /* 57863 */ // GIR_Coverage, 19832, |
| 21250 | /* 57863 */ GIR_EraseRootFromParent_Done, |
| 21251 | /* 57864 */ // Label 1396: @57864 |
| 21252 | /* 57864 */ GIM_Reject, |
| 21253 | /* 57865 */ // Label 1388: @57865 |
| 21254 | /* 57865 */ GIM_Reject, |
| 21255 | /* 57866 */ // Label 1283: @57866 |
| 21256 | /* 57866 */ GIM_Try, /*On fail goto*//*Label 1397*/ GIMT_Encode4(58039), |
| 21257 | /* 57871 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21258 | /* 57874 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21259 | /* 57878 */ GIM_Try, /*On fail goto*//*Label 1398*/ GIMT_Encode4(57920), // Rule ID 4480 // |
| 21260 | /* 57883 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21261 | /* 57886 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21262 | /* 57890 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21263 | /* 57894 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21264 | /* 57898 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21265 | /* 57905 */ // (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 21266 | /* 57905 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrm), |
| 21267 | /* 57908 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21268 | /* 57910 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21269 | /* 57914 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21270 | /* 57918 */ GIR_RootConstrainSelectedInstOperands, |
| 21271 | /* 57919 */ // GIR_Coverage, 4480, |
| 21272 | /* 57919 */ GIR_EraseRootFromParent_Done, |
| 21273 | /* 57920 */ // Label 1398: @57920 |
| 21274 | /* 57920 */ GIM_Try, /*On fail goto*//*Label 1399*/ GIMT_Encode4(57958), // Rule ID 4509 // |
| 21275 | /* 57925 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21276 | /* 57928 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21277 | /* 57932 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21278 | /* 57936 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21279 | /* 57943 */ // (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 21280 | /* 57943 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZrm), |
| 21281 | /* 57946 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21282 | /* 57948 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21283 | /* 57952 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21284 | /* 57956 */ GIR_RootConstrainSelectedInstOperands, |
| 21285 | /* 57957 */ // GIR_Coverage, 4509, |
| 21286 | /* 57957 */ GIR_EraseRootFromParent_Done, |
| 21287 | /* 57958 */ // Label 1399: @57958 |
| 21288 | /* 57958 */ GIM_Try, /*On fail goto*//*Label 1400*/ GIMT_Encode4(58000), // Rule ID 4534 // |
| 21289 | /* 57963 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21290 | /* 57966 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21291 | /* 57970 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21292 | /* 57974 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21293 | /* 57978 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21294 | /* 57985 */ // (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Zrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 21295 | /* 57985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrm), |
| 21296 | /* 57988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21297 | /* 57990 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21298 | /* 57994 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21299 | /* 57998 */ GIR_RootConstrainSelectedInstOperands, |
| 21300 | /* 57999 */ // GIR_Coverage, 4534, |
| 21301 | /* 57999 */ GIR_EraseRootFromParent_Done, |
| 21302 | /* 58000 */ // Label 1400: @58000 |
| 21303 | /* 58000 */ GIM_Try, /*On fail goto*//*Label 1401*/ GIMT_Encode4(58038), // Rule ID 4581 // |
| 21304 | /* 58005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21305 | /* 58008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21306 | /* 58012 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21307 | /* 58016 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21308 | /* 58023 */ // (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Zrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 21309 | /* 58023 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zrm), |
| 21310 | /* 58026 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21311 | /* 58028 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21312 | /* 58032 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21313 | /* 58036 */ GIR_RootConstrainSelectedInstOperands, |
| 21314 | /* 58037 */ // GIR_Coverage, 4581, |
| 21315 | /* 58037 */ GIR_EraseRootFromParent_Done, |
| 21316 | /* 58038 */ // Label 1401: @58038 |
| 21317 | /* 58038 */ GIM_Reject, |
| 21318 | /* 58039 */ // Label 1397: @58039 |
| 21319 | /* 58039 */ GIM_Reject, |
| 21320 | /* 58040 */ // Label 1284: @58040 |
| 21321 | /* 58040 */ GIM_Try, /*On fail goto*//*Label 1402*/ GIMT_Encode4(58121), |
| 21322 | /* 58045 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21323 | /* 58048 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21324 | /* 58052 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 21325 | /* 58056 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21326 | /* 58060 */ GIM_Try, /*On fail goto*//*Label 1403*/ GIMT_Encode4(58090), // Rule ID 4399 // |
| 21327 | /* 58065 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoEGPR), |
| 21328 | /* 58068 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21329 | /* 58075 */ // (ld:{ *:[v16i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVWkm:{ *:[v16i1] } addr:{ *:[iPTR] }:$src) |
| 21330 | /* 58075 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWkm), |
| 21331 | /* 58078 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21332 | /* 58080 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21333 | /* 58084 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21334 | /* 58088 */ GIR_RootConstrainSelectedInstOperands, |
| 21335 | /* 58089 */ // GIR_Coverage, 4399, |
| 21336 | /* 58089 */ GIR_EraseRootFromParent_Done, |
| 21337 | /* 58090 */ // Label 1403: @58090 |
| 21338 | /* 58090 */ GIM_Try, /*On fail goto*//*Label 1404*/ GIMT_Encode4(58120), // Rule ID 4401 // |
| 21339 | /* 58095 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEGPR_In64BitMode), |
| 21340 | /* 58098 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21341 | /* 58105 */ // (ld:{ *:[v16i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVWkm_EVEX:{ *:[v16i1] } addr:{ *:[iPTR] }:$src) |
| 21342 | /* 58105 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWkm_EVEX), |
| 21343 | /* 58108 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21344 | /* 58110 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21345 | /* 58114 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21346 | /* 58118 */ GIR_RootConstrainSelectedInstOperands, |
| 21347 | /* 58119 */ // GIR_Coverage, 4401, |
| 21348 | /* 58119 */ GIR_EraseRootFromParent_Done, |
| 21349 | /* 58120 */ // Label 1404: @58120 |
| 21350 | /* 58120 */ GIM_Reject, |
| 21351 | /* 58121 */ // Label 1402: @58121 |
| 21352 | /* 58121 */ GIM_Reject, |
| 21353 | /* 58122 */ // Label 1285: @58122 |
| 21354 | /* 58122 */ GIM_Try, /*On fail goto*//*Label 1405*/ GIMT_Encode4(58375), |
| 21355 | /* 58127 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21356 | /* 58130 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21357 | /* 58134 */ GIM_Try, /*On fail goto*//*Label 1406*/ GIMT_Encode4(58176), // Rule ID 17942 // |
| 21358 | /* 58139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 21359 | /* 58142 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21360 | /* 58146 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21361 | /* 58150 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21362 | /* 58154 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21363 | /* 58161 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21364 | /* 58161 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 21365 | /* 58164 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21366 | /* 58166 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21367 | /* 58170 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21368 | /* 58174 */ GIR_RootConstrainSelectedInstOperands, |
| 21369 | /* 58175 */ // GIR_Coverage, 17942, |
| 21370 | /* 58175 */ GIR_EraseRootFromParent_Done, |
| 21371 | /* 58176 */ // Label 1406: @58176 |
| 21372 | /* 58176 */ GIM_Try, /*On fail goto*//*Label 1407*/ GIMT_Encode4(58214), // Rule ID 17946 // |
| 21373 | /* 58181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 21374 | /* 58184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21375 | /* 58188 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21376 | /* 58192 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21377 | /* 58199 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21378 | /* 58199 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 21379 | /* 58202 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21380 | /* 58204 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21381 | /* 58208 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21382 | /* 58212 */ GIR_RootConstrainSelectedInstOperands, |
| 21383 | /* 58213 */ // GIR_Coverage, 17946, |
| 21384 | /* 58213 */ GIR_EraseRootFromParent_Done, |
| 21385 | /* 58214 */ // Label 1407: @58214 |
| 21386 | /* 58214 */ GIM_Try, /*On fail goto*//*Label 1408*/ GIMT_Encode4(58256), // Rule ID 18322 // |
| 21387 | /* 58219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21388 | /* 58222 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21389 | /* 58226 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21390 | /* 58230 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21391 | /* 58234 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21392 | /* 58241 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQArm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21393 | /* 58241 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQArm), |
| 21394 | /* 58244 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21395 | /* 58246 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21396 | /* 58250 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21397 | /* 58254 */ GIR_RootConstrainSelectedInstOperands, |
| 21398 | /* 58255 */ // GIR_Coverage, 18322, |
| 21399 | /* 58255 */ GIR_EraseRootFromParent_Done, |
| 21400 | /* 58256 */ // Label 1408: @58256 |
| 21401 | /* 58256 */ GIM_Try, /*On fail goto*//*Label 1409*/ GIMT_Encode4(58294), // Rule ID 18326 // |
| 21402 | /* 58261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21403 | /* 58264 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21404 | /* 58268 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21405 | /* 58272 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21406 | /* 58279 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQUrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21407 | /* 58279 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUrm), |
| 21408 | /* 58282 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21409 | /* 58284 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21410 | /* 58288 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21411 | /* 58292 */ GIR_RootConstrainSelectedInstOperands, |
| 21412 | /* 58293 */ // GIR_Coverage, 18326, |
| 21413 | /* 58293 */ GIR_EraseRootFromParent_Done, |
| 21414 | /* 58294 */ // Label 1409: @58294 |
| 21415 | /* 58294 */ GIM_Try, /*On fail goto*//*Label 1410*/ GIMT_Encode4(58336), // Rule ID 19815 // |
| 21416 | /* 58299 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21417 | /* 58302 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 21418 | /* 58306 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21419 | /* 58310 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21420 | /* 58314 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21421 | /* 58321 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z128rm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21422 | /* 58321 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rm), |
| 21423 | /* 58324 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21424 | /* 58326 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21425 | /* 58330 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21426 | /* 58334 */ GIR_RootConstrainSelectedInstOperands, |
| 21427 | /* 58335 */ // GIR_Coverage, 19815, |
| 21428 | /* 58335 */ GIR_EraseRootFromParent_Done, |
| 21429 | /* 58336 */ // Label 1410: @58336 |
| 21430 | /* 58336 */ GIM_Try, /*On fail goto*//*Label 1411*/ GIMT_Encode4(58374), // Rule ID 19819 // |
| 21431 | /* 58341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21432 | /* 58344 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 21433 | /* 58348 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21434 | /* 58352 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21435 | /* 58359 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z128rm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21436 | /* 58359 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128rm), |
| 21437 | /* 58362 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21438 | /* 58364 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21439 | /* 58368 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21440 | /* 58372 */ GIR_RootConstrainSelectedInstOperands, |
| 21441 | /* 58373 */ // GIR_Coverage, 19819, |
| 21442 | /* 58373 */ GIR_EraseRootFromParent_Done, |
| 21443 | /* 58374 */ // Label 1411: @58374 |
| 21444 | /* 58374 */ GIM_Reject, |
| 21445 | /* 58375 */ // Label 1405: @58375 |
| 21446 | /* 58375 */ GIM_Reject, |
| 21447 | /* 58376 */ // Label 1286: @58376 |
| 21448 | /* 58376 */ GIM_Try, /*On fail goto*//*Label 1412*/ GIMT_Encode4(58709), |
| 21449 | /* 58381 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21450 | /* 58384 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21451 | /* 58388 */ GIM_Try, /*On fail goto*//*Label 1413*/ GIMT_Encode4(58430), // Rule ID 17917 // |
| 21452 | /* 58393 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21453 | /* 58396 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21454 | /* 58400 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21455 | /* 58404 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21456 | /* 58408 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21457 | /* 58415 */ // (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 21458 | /* 58415 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 21459 | /* 58418 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21460 | /* 58420 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21461 | /* 58424 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21462 | /* 58428 */ GIR_RootConstrainSelectedInstOperands, |
| 21463 | /* 58429 */ // GIR_Coverage, 17917, |
| 21464 | /* 58429 */ GIR_EraseRootFromParent_Done, |
| 21465 | /* 58430 */ // Label 1413: @58430 |
| 21466 | /* 58430 */ GIM_Try, /*On fail goto*//*Label 1414*/ GIMT_Encode4(58468), // Rule ID 17921 // |
| 21467 | /* 58435 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21468 | /* 58438 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21469 | /* 58442 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21470 | /* 58446 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21471 | /* 58453 */ // (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 21472 | /* 58453 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 21473 | /* 58456 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21474 | /* 58458 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21475 | /* 58462 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21476 | /* 58466 */ GIR_RootConstrainSelectedInstOperands, |
| 21477 | /* 58467 */ // GIR_Coverage, 17921, |
| 21478 | /* 58467 */ GIR_EraseRootFromParent_Done, |
| 21479 | /* 58468 */ // Label 1414: @58468 |
| 21480 | /* 58468 */ GIM_Try, /*On fail goto*//*Label 1415*/ GIMT_Encode4(58510), // Rule ID 17935 // |
| 21481 | /* 58473 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21482 | /* 58476 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21483 | /* 58480 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21484 | /* 58484 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21485 | /* 58488 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21486 | /* 58495 */ // (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 21487 | /* 58495 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 21488 | /* 58498 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21489 | /* 58500 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21490 | /* 58504 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21491 | /* 58508 */ GIR_RootConstrainSelectedInstOperands, |
| 21492 | /* 58509 */ // GIR_Coverage, 17935, |
| 21493 | /* 58509 */ GIR_EraseRootFromParent_Done, |
| 21494 | /* 58510 */ // Label 1415: @58510 |
| 21495 | /* 58510 */ GIM_Try, /*On fail goto*//*Label 1416*/ GIMT_Encode4(58548), // Rule ID 17936 // |
| 21496 | /* 58515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21497 | /* 58518 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21498 | /* 58522 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21499 | /* 58526 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21500 | /* 58533 */ // (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 21501 | /* 58533 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 21502 | /* 58536 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21503 | /* 58538 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21504 | /* 58542 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21505 | /* 58546 */ GIR_RootConstrainSelectedInstOperands, |
| 21506 | /* 58547 */ // GIR_Coverage, 17936, |
| 21507 | /* 58547 */ GIR_EraseRootFromParent_Done, |
| 21508 | /* 58548 */ // Label 1416: @58548 |
| 21509 | /* 58548 */ GIM_Try, /*On fail goto*//*Label 1417*/ GIMT_Encode4(58590), // Rule ID 19829 // |
| 21510 | /* 58553 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21511 | /* 58556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21512 | /* 58560 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21513 | /* 58564 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21514 | /* 58568 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21515 | /* 58575 */ // (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 21516 | /* 58575 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rm), |
| 21517 | /* 58578 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21518 | /* 58580 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21519 | /* 58584 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21520 | /* 58588 */ GIR_RootConstrainSelectedInstOperands, |
| 21521 | /* 58589 */ // GIR_Coverage, 19829, |
| 21522 | /* 58589 */ GIR_EraseRootFromParent_Done, |
| 21523 | /* 58590 */ // Label 1417: @58590 |
| 21524 | /* 58590 */ GIM_Try, /*On fail goto*//*Label 1418*/ GIMT_Encode4(58632), // Rule ID 19830 // |
| 21525 | /* 58595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21526 | /* 58598 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21527 | /* 58602 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21528 | /* 58606 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21529 | /* 58610 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21530 | /* 58617 */ // (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZ256rm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 21531 | /* 58617 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256rm), |
| 21532 | /* 58620 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21533 | /* 58622 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21534 | /* 58626 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21535 | /* 58630 */ GIR_RootConstrainSelectedInstOperands, |
| 21536 | /* 58631 */ // GIR_Coverage, 19830, |
| 21537 | /* 58631 */ GIR_EraseRootFromParent_Done, |
| 21538 | /* 58632 */ // Label 1418: @58632 |
| 21539 | /* 58632 */ GIM_Try, /*On fail goto*//*Label 1419*/ GIMT_Encode4(58670), // Rule ID 19833 // |
| 21540 | /* 58637 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21541 | /* 58640 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21542 | /* 58644 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21543 | /* 58648 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21544 | /* 58655 */ // (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 21545 | /* 58655 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256rm), |
| 21546 | /* 58658 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21547 | /* 58660 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21548 | /* 58664 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21549 | /* 58668 */ GIR_RootConstrainSelectedInstOperands, |
| 21550 | /* 58669 */ // GIR_Coverage, 19833, |
| 21551 | /* 58669 */ GIR_EraseRootFromParent_Done, |
| 21552 | /* 58670 */ // Label 1419: @58670 |
| 21553 | /* 58670 */ GIM_Try, /*On fail goto*//*Label 1420*/ GIMT_Encode4(58708), // Rule ID 19834 // |
| 21554 | /* 58675 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21555 | /* 58678 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21556 | /* 58682 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21557 | /* 58686 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21558 | /* 58693 */ // (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZ256rm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 21559 | /* 58693 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ256rm), |
| 21560 | /* 58696 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21561 | /* 58698 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21562 | /* 58702 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21563 | /* 58706 */ GIR_RootConstrainSelectedInstOperands, |
| 21564 | /* 58707 */ // GIR_Coverage, 19834, |
| 21565 | /* 58707 */ GIR_EraseRootFromParent_Done, |
| 21566 | /* 58708 */ // Label 1420: @58708 |
| 21567 | /* 58708 */ GIM_Reject, |
| 21568 | /* 58709 */ // Label 1412: @58709 |
| 21569 | /* 58709 */ GIM_Reject, |
| 21570 | /* 58710 */ // Label 1287: @58710 |
| 21571 | /* 58710 */ GIM_Try, /*On fail goto*//*Label 1421*/ GIMT_Encode4(58883), |
| 21572 | /* 58715 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21573 | /* 58718 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21574 | /* 58722 */ GIM_Try, /*On fail goto*//*Label 1422*/ GIMT_Encode4(58764), // Rule ID 4462 // |
| 21575 | /* 58727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21576 | /* 58730 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21577 | /* 58734 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21578 | /* 58738 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21579 | /* 58742 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21580 | /* 58749 */ // (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZrm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 21581 | /* 58749 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrm), |
| 21582 | /* 58752 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21583 | /* 58754 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21584 | /* 58758 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21585 | /* 58762 */ GIR_RootConstrainSelectedInstOperands, |
| 21586 | /* 58763 */ // GIR_Coverage, 4462, |
| 21587 | /* 58763 */ GIR_EraseRootFromParent_Done, |
| 21588 | /* 58764 */ // Label 1422: @58764 |
| 21589 | /* 58764 */ GIM_Try, /*On fail goto*//*Label 1423*/ GIMT_Encode4(58802), // Rule ID 4497 // |
| 21590 | /* 58769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21591 | /* 58772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21592 | /* 58776 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21593 | /* 58780 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21594 | /* 58787 */ // (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZrm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 21595 | /* 58787 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZrm), |
| 21596 | /* 58790 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21597 | /* 58792 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21598 | /* 58796 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21599 | /* 58800 */ GIR_RootConstrainSelectedInstOperands, |
| 21600 | /* 58801 */ // GIR_Coverage, 4497, |
| 21601 | /* 58801 */ GIR_EraseRootFromParent_Done, |
| 21602 | /* 58802 */ // Label 1423: @58802 |
| 21603 | /* 58802 */ GIM_Try, /*On fail goto*//*Label 1424*/ GIMT_Encode4(58844), // Rule ID 19796 // |
| 21604 | /* 58807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21605 | /* 58810 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21606 | /* 58814 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21607 | /* 58818 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21608 | /* 58822 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21609 | /* 58829 */ // (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Zrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 21610 | /* 58829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrm), |
| 21611 | /* 58832 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21612 | /* 58834 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21613 | /* 58838 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21614 | /* 58842 */ GIR_RootConstrainSelectedInstOperands, |
| 21615 | /* 58843 */ // GIR_Coverage, 19796, |
| 21616 | /* 58843 */ GIR_EraseRootFromParent_Done, |
| 21617 | /* 58844 */ // Label 1424: @58844 |
| 21618 | /* 58844 */ GIM_Try, /*On fail goto*//*Label 1425*/ GIMT_Encode4(58882), // Rule ID 19800 // |
| 21619 | /* 58849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21620 | /* 58852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21621 | /* 58856 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21622 | /* 58860 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21623 | /* 58867 */ // (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Zrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 21624 | /* 58867 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zrm), |
| 21625 | /* 58870 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21626 | /* 58872 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21627 | /* 58876 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21628 | /* 58880 */ GIR_RootConstrainSelectedInstOperands, |
| 21629 | /* 58881 */ // GIR_Coverage, 19800, |
| 21630 | /* 58881 */ GIR_EraseRootFromParent_Done, |
| 21631 | /* 58882 */ // Label 1425: @58882 |
| 21632 | /* 58882 */ GIM_Reject, |
| 21633 | /* 58883 */ // Label 1421: @58883 |
| 21634 | /* 58883 */ GIM_Reject, |
| 21635 | /* 58884 */ // Label 1288: @58884 |
| 21636 | /* 58884 */ GIM_Try, /*On fail goto*//*Label 1426*/ GIMT_Encode4(58965), |
| 21637 | /* 58889 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21638 | /* 58892 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21639 | /* 58896 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 21640 | /* 58900 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21641 | /* 58904 */ GIM_Try, /*On fail goto*//*Label 1427*/ GIMT_Encode4(58934), // Rule ID 4403 // |
| 21642 | /* 58909 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoEGPR), |
| 21643 | /* 58912 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21644 | /* 58919 */ // (ld:{ *:[v32i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVDkm:{ *:[v32i1] } addr:{ *:[iPTR] }:$src) |
| 21645 | /* 58919 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVDkm), |
| 21646 | /* 58922 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21647 | /* 58924 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21648 | /* 58928 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21649 | /* 58932 */ GIR_RootConstrainSelectedInstOperands, |
| 21650 | /* 58933 */ // GIR_Coverage, 4403, |
| 21651 | /* 58933 */ GIR_EraseRootFromParent_Done, |
| 21652 | /* 58934 */ // Label 1427: @58934 |
| 21653 | /* 58934 */ GIM_Try, /*On fail goto*//*Label 1428*/ GIMT_Encode4(58964), // Rule ID 4407 // |
| 21654 | /* 58939 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEGPR_In64BitMode), |
| 21655 | /* 58942 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21656 | /* 58949 */ // (ld:{ *:[v32i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVDkm_EVEX:{ *:[v32i1] } addr:{ *:[iPTR] }:$src) |
| 21657 | /* 58949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVDkm_EVEX), |
| 21658 | /* 58952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21659 | /* 58954 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21660 | /* 58958 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21661 | /* 58962 */ GIR_RootConstrainSelectedInstOperands, |
| 21662 | /* 58963 */ // GIR_Coverage, 4407, |
| 21663 | /* 58963 */ GIR_EraseRootFromParent_Done, |
| 21664 | /* 58964 */ // Label 1428: @58964 |
| 21665 | /* 58964 */ GIM_Reject, |
| 21666 | /* 58965 */ // Label 1426: @58965 |
| 21667 | /* 58965 */ GIM_Reject, |
| 21668 | /* 58966 */ // Label 1289: @58966 |
| 21669 | /* 58966 */ GIM_Try, /*On fail goto*//*Label 1429*/ GIMT_Encode4(59139), |
| 21670 | /* 58971 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21671 | /* 58974 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21672 | /* 58978 */ GIM_Try, /*On fail goto*//*Label 1430*/ GIMT_Encode4(59020), // Rule ID 17918 // |
| 21673 | /* 58983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21674 | /* 58986 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21675 | /* 58990 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21676 | /* 58994 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21677 | /* 58998 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21678 | /* 59005 */ // (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 21679 | /* 59005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 21680 | /* 59008 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21681 | /* 59010 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21682 | /* 59014 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21683 | /* 59018 */ GIR_RootConstrainSelectedInstOperands, |
| 21684 | /* 59019 */ // GIR_Coverage, 17918, |
| 21685 | /* 59019 */ GIR_EraseRootFromParent_Done, |
| 21686 | /* 59020 */ // Label 1430: @59020 |
| 21687 | /* 59020 */ GIM_Try, /*On fail goto*//*Label 1431*/ GIMT_Encode4(59058), // Rule ID 17922 // |
| 21688 | /* 59025 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21689 | /* 59028 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21690 | /* 59032 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21691 | /* 59036 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21692 | /* 59043 */ // (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 21693 | /* 59043 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 21694 | /* 59046 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21695 | /* 59048 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21696 | /* 59052 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21697 | /* 59056 */ GIR_RootConstrainSelectedInstOperands, |
| 21698 | /* 59057 */ // GIR_Coverage, 17922, |
| 21699 | /* 59057 */ GIR_EraseRootFromParent_Done, |
| 21700 | /* 59058 */ // Label 1431: @59058 |
| 21701 | /* 59058 */ GIM_Try, /*On fail goto*//*Label 1432*/ GIMT_Encode4(59100), // Rule ID 19831 // |
| 21702 | /* 59063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21703 | /* 59066 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21704 | /* 59070 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21705 | /* 59074 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21706 | /* 59078 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21707 | /* 59085 */ // (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z256rm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 21708 | /* 59085 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rm), |
| 21709 | /* 59088 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21710 | /* 59090 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21711 | /* 59094 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21712 | /* 59098 */ GIR_RootConstrainSelectedInstOperands, |
| 21713 | /* 59099 */ // GIR_Coverage, 19831, |
| 21714 | /* 59099 */ GIR_EraseRootFromParent_Done, |
| 21715 | /* 59100 */ // Label 1432: @59100 |
| 21716 | /* 59100 */ GIM_Try, /*On fail goto*//*Label 1433*/ GIMT_Encode4(59138), // Rule ID 19835 // |
| 21717 | /* 59105 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21718 | /* 59108 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21719 | /* 59112 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21720 | /* 59116 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21721 | /* 59123 */ // (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z256rm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 21722 | /* 59123 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256rm), |
| 21723 | /* 59126 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21724 | /* 59128 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21725 | /* 59132 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21726 | /* 59136 */ GIR_RootConstrainSelectedInstOperands, |
| 21727 | /* 59137 */ // GIR_Coverage, 19835, |
| 21728 | /* 59137 */ GIR_EraseRootFromParent_Done, |
| 21729 | /* 59138 */ // Label 1433: @59138 |
| 21730 | /* 59138 */ GIM_Reject, |
| 21731 | /* 59139 */ // Label 1429: @59139 |
| 21732 | /* 59139 */ GIM_Reject, |
| 21733 | /* 59140 */ // Label 1290: @59140 |
| 21734 | /* 59140 */ GIM_Try, /*On fail goto*//*Label 1434*/ GIMT_Encode4(59313), |
| 21735 | /* 59145 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21736 | /* 59148 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21737 | /* 59152 */ GIM_Try, /*On fail goto*//*Label 1435*/ GIMT_Encode4(59194), // Rule ID 19797 // |
| 21738 | /* 59157 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21739 | /* 59160 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21740 | /* 59164 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21741 | /* 59168 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21742 | /* 59172 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21743 | /* 59179 */ // (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Zrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 21744 | /* 59179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrm), |
| 21745 | /* 59182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21746 | /* 59184 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21747 | /* 59188 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21748 | /* 59192 */ GIR_RootConstrainSelectedInstOperands, |
| 21749 | /* 59193 */ // GIR_Coverage, 19797, |
| 21750 | /* 59193 */ GIR_EraseRootFromParent_Done, |
| 21751 | /* 59194 */ // Label 1435: @59194 |
| 21752 | /* 59194 */ GIM_Try, /*On fail goto*//*Label 1436*/ GIMT_Encode4(59236), // Rule ID 19798 // |
| 21753 | /* 59199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21754 | /* 59202 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21755 | /* 59206 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21756 | /* 59210 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21757 | /* 59214 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21758 | /* 59221 */ // (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZrm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 21759 | /* 59221 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrm), |
| 21760 | /* 59224 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21761 | /* 59226 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21762 | /* 59230 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21763 | /* 59234 */ GIR_RootConstrainSelectedInstOperands, |
| 21764 | /* 59235 */ // GIR_Coverage, 19798, |
| 21765 | /* 59235 */ GIR_EraseRootFromParent_Done, |
| 21766 | /* 59236 */ // Label 1436: @59236 |
| 21767 | /* 59236 */ GIM_Try, /*On fail goto*//*Label 1437*/ GIMT_Encode4(59274), // Rule ID 19801 // |
| 21768 | /* 59241 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21769 | /* 59244 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21770 | /* 59248 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21771 | /* 59252 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21772 | /* 59259 */ // (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Zrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 21773 | /* 59259 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zrm), |
| 21774 | /* 59262 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21775 | /* 59264 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21776 | /* 59268 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21777 | /* 59272 */ GIR_RootConstrainSelectedInstOperands, |
| 21778 | /* 59273 */ // GIR_Coverage, 19801, |
| 21779 | /* 59273 */ GIR_EraseRootFromParent_Done, |
| 21780 | /* 59274 */ // Label 1437: @59274 |
| 21781 | /* 59274 */ GIM_Try, /*On fail goto*//*Label 1438*/ GIMT_Encode4(59312), // Rule ID 19802 // |
| 21782 | /* 59279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21783 | /* 59282 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21784 | /* 59286 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21785 | /* 59290 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21786 | /* 59297 */ // (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZrm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 21787 | /* 59297 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZrm), |
| 21788 | /* 59300 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21789 | /* 59302 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21790 | /* 59306 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21791 | /* 59310 */ GIR_RootConstrainSelectedInstOperands, |
| 21792 | /* 59311 */ // GIR_Coverage, 19802, |
| 21793 | /* 59311 */ GIR_EraseRootFromParent_Done, |
| 21794 | /* 59312 */ // Label 1438: @59312 |
| 21795 | /* 59312 */ GIM_Reject, |
| 21796 | /* 59313 */ // Label 1434: @59313 |
| 21797 | /* 59313 */ GIM_Reject, |
| 21798 | /* 59314 */ // Label 1291: @59314 |
| 21799 | /* 59314 */ GIM_Try, /*On fail goto*//*Label 1439*/ GIMT_Encode4(59395), |
| 21800 | /* 59319 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21801 | /* 59322 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21802 | /* 59326 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 21803 | /* 59330 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21804 | /* 59334 */ GIM_Try, /*On fail goto*//*Label 1440*/ GIMT_Encode4(59364), // Rule ID 4405 // |
| 21805 | /* 59339 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoEGPR), |
| 21806 | /* 59342 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21807 | /* 59349 */ // (ld:{ *:[v64i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVQkm:{ *:[v64i1] } addr:{ *:[iPTR] }:$src) |
| 21808 | /* 59349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVQkm), |
| 21809 | /* 59352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21810 | /* 59354 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21811 | /* 59358 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21812 | /* 59362 */ GIR_RootConstrainSelectedInstOperands, |
| 21813 | /* 59363 */ // GIR_Coverage, 4405, |
| 21814 | /* 59363 */ GIR_EraseRootFromParent_Done, |
| 21815 | /* 59364 */ // Label 1440: @59364 |
| 21816 | /* 59364 */ GIM_Try, /*On fail goto*//*Label 1441*/ GIMT_Encode4(59394), // Rule ID 4409 // |
| 21817 | /* 59369 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEGPR_In64BitMode), |
| 21818 | /* 59372 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21819 | /* 59379 */ // (ld:{ *:[v64i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVQkm_EVEX:{ *:[v64i1] } addr:{ *:[iPTR] }:$src) |
| 21820 | /* 59379 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVQkm_EVEX), |
| 21821 | /* 59382 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21822 | /* 59384 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21823 | /* 59388 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21824 | /* 59392 */ GIR_RootConstrainSelectedInstOperands, |
| 21825 | /* 59393 */ // GIR_Coverage, 4409, |
| 21826 | /* 59393 */ GIR_EraseRootFromParent_Done, |
| 21827 | /* 59394 */ // Label 1441: @59394 |
| 21828 | /* 59394 */ GIM_Reject, |
| 21829 | /* 59395 */ // Label 1439: @59395 |
| 21830 | /* 59395 */ GIM_Reject, |
| 21831 | /* 59396 */ // Label 1292: @59396 |
| 21832 | /* 59396 */ GIM_Try, /*On fail goto*//*Label 1442*/ GIMT_Encode4(59489), |
| 21833 | /* 59401 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21834 | /* 59404 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21835 | /* 59408 */ GIM_Try, /*On fail goto*//*Label 1443*/ GIMT_Encode4(59450), // Rule ID 19799 // |
| 21836 | /* 59413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21837 | /* 59416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21838 | /* 59420 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21839 | /* 59424 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21840 | /* 59428 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21841 | /* 59435 */ // (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Zrm:{ *:[v64i8] } addr:{ *:[iPTR] }:$src) |
| 21842 | /* 59435 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrm), |
| 21843 | /* 59438 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21844 | /* 59440 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21845 | /* 59444 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21846 | /* 59448 */ GIR_RootConstrainSelectedInstOperands, |
| 21847 | /* 59449 */ // GIR_Coverage, 19799, |
| 21848 | /* 59449 */ GIR_EraseRootFromParent_Done, |
| 21849 | /* 59450 */ // Label 1443: @59450 |
| 21850 | /* 59450 */ GIM_Try, /*On fail goto*//*Label 1444*/ GIMT_Encode4(59488), // Rule ID 19803 // |
| 21851 | /* 59455 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21852 | /* 59458 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21853 | /* 59462 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21854 | /* 59466 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21855 | /* 59473 */ // (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Zrm:{ *:[v64i8] } addr:{ *:[iPTR] }:$src) |
| 21856 | /* 59473 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zrm), |
| 21857 | /* 59476 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21858 | /* 59478 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21859 | /* 59482 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21860 | /* 59486 */ GIR_RootConstrainSelectedInstOperands, |
| 21861 | /* 59487 */ // GIR_Coverage, 19803, |
| 21862 | /* 59487 */ GIR_EraseRootFromParent_Done, |
| 21863 | /* 59488 */ // Label 1444: @59488 |
| 21864 | /* 59488 */ GIM_Reject, |
| 21865 | /* 59489 */ // Label 1442: @59489 |
| 21866 | /* 59489 */ GIM_Reject, |
| 21867 | /* 59490 */ // Label 1293: @59490 |
| 21868 | /* 59490 */ GIM_Reject, |
| 21869 | /* 59491 */ // Label 11: @59491 |
| 21870 | /* 59491 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 1448*/ GIMT_Encode4(59823), |
| 21871 | /* 59502 */ /*GILLT_s16*//*Label 1445*/ GIMT_Encode4(59514), |
| 21872 | /* 59506 */ /*GILLT_s32*//*Label 1446*/ GIMT_Encode4(59590), |
| 21873 | /* 59510 */ /*GILLT_s64*//*Label 1447*/ GIMT_Encode4(59684), |
| 21874 | /* 59514 */ // Label 1445: @59514 |
| 21875 | /* 59514 */ GIM_Try, /*On fail goto*//*Label 1449*/ GIMT_Encode4(59589), // Rule ID 22648 // |
| 21876 | /* 59519 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21877 | /* 59522 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21878 | /* 59529 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 21879 | /* 59533 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21880 | /* 59537 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21881 | /* 59544 */ // (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> => (EXTRACT_SUBREG:{ *:[i16] } (MOVSX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_16bit:{ *:[i32] }) |
| 21882 | /* 59544 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21883 | /* 59547 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVSX32rm8), |
| 21884 | /* 59551 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 21885 | /* 59556 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 21886 | /* 59560 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21887 | /* 59564 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21888 | /* 59566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 21889 | /* 59569 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21890 | /* 59571 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 21891 | /* 59578 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 21892 | /* 59583 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 21893 | /* 59588 */ // GIR_Coverage, 22648, |
| 21894 | /* 59588 */ GIR_EraseRootFromParent_Done, |
| 21895 | /* 59589 */ // Label 1449: @59589 |
| 21896 | /* 59589 */ GIM_Reject, |
| 21897 | /* 59590 */ // Label 1446: @59590 |
| 21898 | /* 59590 */ GIM_Try, /*On fail goto*//*Label 1450*/ GIMT_Encode4(59683), |
| 21899 | /* 59595 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21900 | /* 59598 */ GIM_Try, /*On fail goto*//*Label 1451*/ GIMT_Encode4(59640), // Rule ID 615 // |
| 21901 | /* 59603 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21902 | /* 59610 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 21903 | /* 59614 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21904 | /* 59618 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21905 | /* 59625 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> => (MOVSX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 21906 | /* 59625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX32rm8), |
| 21907 | /* 59628 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21908 | /* 59630 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21909 | /* 59634 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21910 | /* 59638 */ GIR_RootConstrainSelectedInstOperands, |
| 21911 | /* 59639 */ // GIR_Coverage, 615, |
| 21912 | /* 59639 */ GIR_EraseRootFromParent_Done, |
| 21913 | /* 59640 */ // Label 1451: @59640 |
| 21914 | /* 59640 */ GIM_Try, /*On fail goto*//*Label 1452*/ GIMT_Encode4(59682), // Rule ID 617 // |
| 21915 | /* 59645 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 21916 | /* 59652 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 21917 | /* 59656 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21918 | /* 59660 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21919 | /* 59667 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> => (MOVSX32rm16:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 21920 | /* 59667 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX32rm16), |
| 21921 | /* 59670 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21922 | /* 59672 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21923 | /* 59676 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21924 | /* 59680 */ GIR_RootConstrainSelectedInstOperands, |
| 21925 | /* 59681 */ // GIR_Coverage, 617, |
| 21926 | /* 59681 */ GIR_EraseRootFromParent_Done, |
| 21927 | /* 59682 */ // Label 1452: @59682 |
| 21928 | /* 59682 */ GIM_Reject, |
| 21929 | /* 59683 */ // Label 1450: @59683 |
| 21930 | /* 59683 */ GIM_Reject, |
| 21931 | /* 59684 */ // Label 1447: @59684 |
| 21932 | /* 59684 */ GIM_Try, /*On fail goto*//*Label 1453*/ GIMT_Encode4(59822), |
| 21933 | /* 59689 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21934 | /* 59692 */ GIM_Try, /*On fail goto*//*Label 1454*/ GIMT_Encode4(59734), // Rule ID 623 // |
| 21935 | /* 59697 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21936 | /* 59704 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 21937 | /* 59708 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21938 | /* 59712 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21939 | /* 59719 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> => (MOVSX64rm8:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 21940 | /* 59719 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX64rm8), |
| 21941 | /* 59722 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21942 | /* 59724 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21943 | /* 59728 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21944 | /* 59732 */ GIR_RootConstrainSelectedInstOperands, |
| 21945 | /* 59733 */ // GIR_Coverage, 623, |
| 21946 | /* 59733 */ GIR_EraseRootFromParent_Done, |
| 21947 | /* 59734 */ // Label 1454: @59734 |
| 21948 | /* 59734 */ GIM_Try, /*On fail goto*//*Label 1455*/ GIMT_Encode4(59776), // Rule ID 625 // |
| 21949 | /* 59739 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 21950 | /* 59746 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 21951 | /* 59750 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21952 | /* 59754 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21953 | /* 59761 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> => (MOVSX64rm16:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 21954 | /* 59761 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX64rm16), |
| 21955 | /* 59764 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21956 | /* 59766 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21957 | /* 59770 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21958 | /* 59774 */ GIR_RootConstrainSelectedInstOperands, |
| 21959 | /* 59775 */ // GIR_Coverage, 625, |
| 21960 | /* 59775 */ GIR_EraseRootFromParent_Done, |
| 21961 | /* 59776 */ // Label 1455: @59776 |
| 21962 | /* 59776 */ GIM_Try, /*On fail goto*//*Label 1456*/ GIMT_Encode4(59821), // Rule ID 627 // |
| 21963 | /* 59781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 21964 | /* 59784 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 21965 | /* 59791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 21966 | /* 59795 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21967 | /* 59799 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21968 | /* 59806 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> => (MOVSX64rm32:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 21969 | /* 59806 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX64rm32), |
| 21970 | /* 59809 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21971 | /* 59811 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21972 | /* 59815 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21973 | /* 59819 */ GIR_RootConstrainSelectedInstOperands, |
| 21974 | /* 59820 */ // GIR_Coverage, 627, |
| 21975 | /* 59820 */ GIR_EraseRootFromParent_Done, |
| 21976 | /* 59821 */ // Label 1456: @59821 |
| 21977 | /* 59821 */ GIM_Reject, |
| 21978 | /* 59822 */ // Label 1453: @59822 |
| 21979 | /* 59822 */ GIM_Reject, |
| 21980 | /* 59823 */ // Label 1448: @59823 |
| 21981 | /* 59823 */ GIM_Reject, |
| 21982 | /* 59824 */ // Label 12: @59824 |
| 21983 | /* 59824 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 1461*/ GIMT_Encode4(60478), |
| 21984 | /* 59835 */ /*GILLT_s8*//*Label 1457*/ GIMT_Encode4(59851), |
| 21985 | /* 59839 */ /*GILLT_s16*//*Label 1458*/ GIMT_Encode4(59897), |
| 21986 | /* 59843 */ /*GILLT_s32*//*Label 1459*/ GIMT_Encode4(60036), |
| 21987 | /* 59847 */ /*GILLT_s64*//*Label 1460*/ GIMT_Encode4(60172), |
| 21988 | /* 59851 */ // Label 1457: @59851 |
| 21989 | /* 59851 */ GIM_Try, /*On fail goto*//*Label 1462*/ GIMT_Encode4(59896), // Rule ID 22576 // |
| 21990 | /* 59856 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21991 | /* 59859 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21992 | /* 59866 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 21993 | /* 59870 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21994 | /* 59874 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21995 | /* 59881 */ // (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi1>> => (MOV8rm:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 21996 | /* 59881 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8rm), |
| 21997 | /* 59884 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21998 | /* 59886 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21999 | /* 59890 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 22000 | /* 59894 */ GIR_RootConstrainSelectedInstOperands, |
| 22001 | /* 59895 */ // GIR_Coverage, 22576, |
| 22002 | /* 59895 */ GIR_EraseRootFromParent_Done, |
| 22003 | /* 59896 */ // Label 1462: @59896 |
| 22004 | /* 59896 */ GIM_Reject, |
| 22005 | /* 59897 */ // Label 1458: @59897 |
| 22006 | /* 59897 */ GIM_Try, /*On fail goto*//*Label 1463*/ GIMT_Encode4(60035), |
| 22007 | /* 59902 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22008 | /* 59905 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22009 | /* 59912 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 22010 | /* 59916 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 22011 | /* 59920 */ GIM_Try, /*On fail goto*//*Label 1464*/ GIMT_Encode4(59977), // Rule ID 22577 // |
| 22012 | /* 59925 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22013 | /* 59932 */ // (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi1>> => (EXTRACT_SUBREG:{ *:[i16] } (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_16bit:{ *:[i32] }) |
| 22014 | /* 59932 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22015 | /* 59935 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 22016 | /* 59939 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 22017 | /* 59944 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 22018 | /* 59948 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 22019 | /* 59952 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22020 | /* 59954 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 22021 | /* 59957 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 22022 | /* 59959 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 22023 | /* 59966 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 22024 | /* 59971 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 22025 | /* 59976 */ // GIR_Coverage, 22577, |
| 22026 | /* 59976 */ GIR_EraseRootFromParent_Done, |
| 22027 | /* 59977 */ // Label 1464: @59977 |
| 22028 | /* 59977 */ GIM_Try, /*On fail goto*//*Label 1465*/ GIMT_Encode4(60034), // Rule ID 22650 // |
| 22029 | /* 59982 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22030 | /* 59989 */ // (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> => (EXTRACT_SUBREG:{ *:[i16] } (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_16bit:{ *:[i32] }) |
| 22031 | /* 59989 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22032 | /* 59992 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 22033 | /* 59996 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 22034 | /* 60001 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 22035 | /* 60005 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 22036 | /* 60009 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22037 | /* 60011 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 22038 | /* 60014 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 22039 | /* 60016 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 22040 | /* 60023 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 22041 | /* 60028 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 22042 | /* 60033 */ // GIR_Coverage, 22650, |
| 22043 | /* 60033 */ GIR_EraseRootFromParent_Done, |
| 22044 | /* 60034 */ // Label 1465: @60034 |
| 22045 | /* 60034 */ GIM_Reject, |
| 22046 | /* 60035 */ // Label 1463: @60035 |
| 22047 | /* 60035 */ GIM_Reject, |
| 22048 | /* 60036 */ // Label 1459: @60036 |
| 22049 | /* 60036 */ GIM_Try, /*On fail goto*//*Label 1466*/ GIMT_Encode4(60171), |
| 22050 | /* 60041 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22051 | /* 60044 */ GIM_Try, /*On fail goto*//*Label 1467*/ GIMT_Encode4(60086), // Rule ID 619 // |
| 22052 | /* 60049 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22053 | /* 60056 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 22054 | /* 60060 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 22055 | /* 60064 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22056 | /* 60071 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> => (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 22057 | /* 60071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 22058 | /* 60074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 22059 | /* 60076 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 22060 | /* 60080 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 22061 | /* 60084 */ GIR_RootConstrainSelectedInstOperands, |
| 22062 | /* 60085 */ // GIR_Coverage, 619, |
| 22063 | /* 60085 */ GIR_EraseRootFromParent_Done, |
| 22064 | /* 60086 */ // Label 1467: @60086 |
| 22065 | /* 60086 */ GIM_Try, /*On fail goto*//*Label 1468*/ GIMT_Encode4(60128), // Rule ID 621 // |
| 22066 | /* 60091 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 22067 | /* 60098 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 22068 | /* 60102 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 22069 | /* 60106 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22070 | /* 60113 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> => (MOVZX32rm16:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 22071 | /* 60113 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm16), |
| 22072 | /* 60116 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 22073 | /* 60118 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 22074 | /* 60122 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 22075 | /* 60126 */ GIR_RootConstrainSelectedInstOperands, |
| 22076 | /* 60127 */ // GIR_Coverage, 621, |
| 22077 | /* 60127 */ GIR_EraseRootFromParent_Done, |
| 22078 | /* 60128 */ // Label 1468: @60128 |
| 22079 | /* 60128 */ GIM_Try, /*On fail goto*//*Label 1469*/ GIMT_Encode4(60170), // Rule ID 22578 // |
| 22080 | /* 60133 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22081 | /* 60140 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 22082 | /* 60144 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 22083 | /* 60148 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22084 | /* 60155 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi1>> => (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 22085 | /* 60155 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 22086 | /* 60158 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 22087 | /* 60160 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 22088 | /* 60164 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 22089 | /* 60168 */ GIR_RootConstrainSelectedInstOperands, |
| 22090 | /* 60169 */ // GIR_Coverage, 22578, |
| 22091 | /* 60169 */ GIR_EraseRootFromParent_Done, |
| 22092 | /* 60170 */ // Label 1469: @60170 |
| 22093 | /* 60170 */ GIM_Reject, |
| 22094 | /* 60171 */ // Label 1466: @60171 |
| 22095 | /* 60171 */ GIM_Reject, |
| 22096 | /* 60172 */ // Label 1460: @60172 |
| 22097 | /* 60172 */ GIM_Try, /*On fail goto*//*Label 1470*/ GIMT_Encode4(60477), |
| 22098 | /* 60177 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22099 | /* 60180 */ GIM_Try, /*On fail goto*//*Label 1471*/ GIMT_Encode4(60254), // Rule ID 17591 // |
| 22100 | /* 60185 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22101 | /* 60192 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 22102 | /* 60196 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 22103 | /* 60200 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22104 | /* 60207 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 22105 | /* 60207 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22106 | /* 60210 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 22107 | /* 60214 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 22108 | /* 60219 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 22109 | /* 60223 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 22110 | /* 60227 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22111 | /* 60229 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 22112 | /* 60232 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 22113 | /* 60234 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 22114 | /* 60237 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22115 | /* 60240 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 22116 | /* 60243 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 22117 | /* 60248 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 22118 | /* 60253 */ // GIR_Coverage, 17591, |
| 22119 | /* 60253 */ GIR_EraseRootFromParent_Done, |
| 22120 | /* 60254 */ // Label 1471: @60254 |
| 22121 | /* 60254 */ GIM_Try, /*On fail goto*//*Label 1472*/ GIMT_Encode4(60328), // Rule ID 17593 // |
| 22122 | /* 60259 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 22123 | /* 60266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 22124 | /* 60270 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 22125 | /* 60274 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22126 | /* 60281 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOVZX32rm16:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 22127 | /* 60281 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22128 | /* 60284 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm16), |
| 22129 | /* 60288 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 22130 | /* 60293 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 22131 | /* 60297 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 22132 | /* 60301 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22133 | /* 60303 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 22134 | /* 60306 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 22135 | /* 60308 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 22136 | /* 60311 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22137 | /* 60314 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 22138 | /* 60317 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 22139 | /* 60322 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 22140 | /* 60327 */ // GIR_Coverage, 17593, |
| 22141 | /* 60327 */ GIR_EraseRootFromParent_Done, |
| 22142 | /* 60328 */ // Label 1472: @60328 |
| 22143 | /* 60328 */ GIM_Try, /*On fail goto*//*Label 1473*/ GIMT_Encode4(60402), // Rule ID 17595 // |
| 22144 | /* 60333 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 22145 | /* 60340 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 22146 | /* 60344 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 22147 | /* 60348 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22148 | /* 60355 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOV32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 22149 | /* 60355 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22150 | /* 60358 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32rm), |
| 22151 | /* 60362 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 22152 | /* 60367 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 22153 | /* 60371 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 22154 | /* 60375 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22155 | /* 60377 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 22156 | /* 60380 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 22157 | /* 60382 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 22158 | /* 60385 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22159 | /* 60388 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 22160 | /* 60391 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 22161 | /* 60396 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 22162 | /* 60401 */ // GIR_Coverage, 17595, |
| 22163 | /* 60401 */ GIR_EraseRootFromParent_Done, |
| 22164 | /* 60402 */ // Label 1473: @60402 |
| 22165 | /* 60402 */ GIM_Try, /*On fail goto*//*Label 1474*/ GIMT_Encode4(60476), // Rule ID 22579 // |
| 22166 | /* 60407 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22167 | /* 60414 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 22168 | /* 60418 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 22169 | /* 60422 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22170 | /* 60429 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi1>> => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 22171 | /* 60429 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22172 | /* 60432 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 22173 | /* 60436 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 22174 | /* 60441 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 22175 | /* 60445 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 22176 | /* 60449 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22177 | /* 60451 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 22178 | /* 60454 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 22179 | /* 60456 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 22180 | /* 60459 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22181 | /* 60462 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 22182 | /* 60465 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 22183 | /* 60470 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 22184 | /* 60475 */ // GIR_Coverage, 22579, |
| 22185 | /* 60475 */ GIR_EraseRootFromParent_Done, |
| 22186 | /* 60476 */ // Label 1474: @60476 |
| 22187 | /* 60476 */ GIM_Reject, |
| 22188 | /* 60477 */ // Label 1470: @60477 |
| 22189 | /* 60477 */ GIM_Reject, |
| 22190 | /* 60478 */ // Label 1461: @60478 |
| 22191 | /* 60478 */ GIM_Reject, |
| 22192 | /* 60479 */ // Label 13: @60479 |
| 22193 | /* 60479 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(25), /*)*//*default:*//*Label 1497*/ GIMT_Encode4(85941), |
| 22194 | /* 60490 */ /*GILLT_s8*//*Label 1475*/ GIMT_Encode4(60586), |
| 22195 | /* 60494 */ /*GILLT_s16*//*Label 1476*/ GIMT_Encode4(65256), |
| 22196 | /* 60498 */ /*GILLT_s32*//*Label 1477*/ GIMT_Encode4(70500), |
| 22197 | /* 60502 */ /*GILLT_s64*//*Label 1478*/ GIMT_Encode4(76200), |
| 22198 | /* 60506 */ /*GILLT_s80*//*Label 1479*/ GIMT_Encode4(81592), |
| 22199 | /* 60510 */ /*GILLT_s128*//*Label 1480*/ GIMT_Encode4(81751), GIMT_Encode4(0), |
| 22200 | /* 60518 */ /*GILLT_v2s64*//*Label 1481*/ GIMT_Encode4(82005), GIMT_Encode4(0), |
| 22201 | /* 60526 */ /*GILLT_v4s32*//*Label 1482*/ GIMT_Encode4(82499), |
| 22202 | /* 60530 */ /*GILLT_v4s64*//*Label 1483*/ GIMT_Encode4(82993), |
| 22203 | /* 60534 */ /*GILLT_v8s1*//*Label 1484*/ GIMT_Encode4(83327), |
| 22204 | /* 60538 */ /*GILLT_v8s16*//*Label 1485*/ GIMT_Encode4(83409), |
| 22205 | /* 60542 */ /*GILLT_v8s32*//*Label 1486*/ GIMT_Encode4(83983), |
| 22206 | /* 60546 */ /*GILLT_v8s64*//*Label 1487*/ GIMT_Encode4(84317), |
| 22207 | /* 60550 */ /*GILLT_v16s1*//*Label 1488*/ GIMT_Encode4(84491), |
| 22208 | /* 60554 */ /*GILLT_v16s8*//*Label 1489*/ GIMT_Encode4(84573), |
| 22209 | /* 60558 */ /*GILLT_v16s16*//*Label 1490*/ GIMT_Encode4(84827), |
| 22210 | /* 60562 */ /*GILLT_v16s32*//*Label 1491*/ GIMT_Encode4(85161), |
| 22211 | /* 60566 */ /*GILLT_v32s1*//*Label 1492*/ GIMT_Encode4(85335), |
| 22212 | /* 60570 */ /*GILLT_v32s8*//*Label 1493*/ GIMT_Encode4(85417), |
| 22213 | /* 60574 */ /*GILLT_v32s16*//*Label 1494*/ GIMT_Encode4(85591), |
| 22214 | /* 60578 */ /*GILLT_v64s1*//*Label 1495*/ GIMT_Encode4(85765), |
| 22215 | /* 60582 */ /*GILLT_v64s8*//*Label 1496*/ GIMT_Encode4(85847), |
| 22216 | /* 60586 */ // Label 1475: @60586 |
| 22217 | /* 60586 */ GIM_Try, /*On fail goto*//*Label 1498*/ GIMT_Encode4(60682), // Rule ID 22491 // |
| 22218 | /* 60591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 22219 | /* 60594 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22220 | /* 60597 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22221 | /* 60604 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22222 | /* 60608 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22223 | /* 60612 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22224 | /* 60616 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22225 | /* 60620 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22226 | /* 60624 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22227 | /* 60628 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22228 | /* 60631 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22229 | /* 60635 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22230 | /* 60642 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22231 | /* 60646 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 22232 | /* 60650 */ // MIs[0] dst |
| 22233 | /* 60650 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22234 | /* 60655 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22235 | /* 60657 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22236 | /* 60664 */ // (atomic_store (add:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, 1:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (INC8m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 22237 | /* 60664 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC8m), |
| 22238 | /* 60667 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22239 | /* 60671 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22240 | /* 60674 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22241 | /* 60680 */ GIR_RootConstrainSelectedInstOperands, |
| 22242 | /* 60681 */ // GIR_Coverage, 22491, |
| 22243 | /* 60681 */ GIR_EraseRootFromParent_Done, |
| 22244 | /* 60682 */ // Label 1498: @60682 |
| 22245 | /* 60682 */ GIM_Try, /*On fail goto*//*Label 1499*/ GIMT_Encode4(60778), // Rule ID 22495 // |
| 22246 | /* 60687 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 22247 | /* 60690 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22248 | /* 60693 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22249 | /* 60700 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22250 | /* 60704 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22251 | /* 60708 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22252 | /* 60712 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22253 | /* 60716 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22254 | /* 60720 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22255 | /* 60724 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22256 | /* 60727 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22257 | /* 60731 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22258 | /* 60738 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22259 | /* 60742 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 22260 | /* 60746 */ // MIs[0] dst |
| 22261 | /* 60746 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22262 | /* 60751 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22263 | /* 60753 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22264 | /* 60760 */ // (atomic_store (add:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, -1:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (DEC8m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 22265 | /* 60760 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC8m), |
| 22266 | /* 60763 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22267 | /* 60767 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22268 | /* 60770 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22269 | /* 60776 */ GIR_RootConstrainSelectedInstOperands, |
| 22270 | /* 60777 */ // GIR_Coverage, 22495, |
| 22271 | /* 60777 */ GIR_EraseRootFromParent_Done, |
| 22272 | /* 60778 */ // Label 1499: @60778 |
| 22273 | /* 60778 */ GIM_Try, /*On fail goto*//*Label 1500*/ GIMT_Encode4(60871), // Rule ID 22499 // |
| 22274 | /* 60783 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22275 | /* 60786 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22276 | /* 60793 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22277 | /* 60797 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 22278 | /* 60801 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22279 | /* 60805 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22280 | /* 60809 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 22281 | /* 60813 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 22282 | /* 60817 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22283 | /* 60821 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22284 | /* 60824 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22285 | /* 60828 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22286 | /* 60835 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22287 | /* 60839 */ // MIs[0] dst |
| 22288 | /* 60839 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22289 | /* 60844 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22290 | /* 60846 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22291 | /* 60853 */ // (atomic_store (sub:{ *:[i8] } 0:{ *:[i8] }, (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (NEG8m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 22292 | /* 60853 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG8m), |
| 22293 | /* 60856 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22294 | /* 60860 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22295 | /* 60863 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22296 | /* 60869 */ GIR_RootConstrainSelectedInstOperands, |
| 22297 | /* 60870 */ // GIR_Coverage, 22499, |
| 22298 | /* 60870 */ GIR_EraseRootFromParent_Done, |
| 22299 | /* 60871 */ // Label 1500: @60871 |
| 22300 | /* 60871 */ GIM_Try, /*On fail goto*//*Label 1501*/ GIMT_Encode4(60961), // Rule ID 22503 // |
| 22301 | /* 60876 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22302 | /* 60879 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22303 | /* 60886 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22304 | /* 60890 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 22305 | /* 60894 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22306 | /* 60898 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22307 | /* 60902 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22308 | /* 60906 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22309 | /* 60910 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22310 | /* 60913 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22311 | /* 60917 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22312 | /* 60924 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22313 | /* 60928 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 22314 | /* 60932 */ // MIs[0] dst |
| 22315 | /* 60932 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22316 | /* 60937 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22317 | /* 60939 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22318 | /* 60946 */ // (atomic_store (xor:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, -1:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (NOT8m addr:{ *:[iPTR] }:$dst) |
| 22319 | /* 60946 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT8m), |
| 22320 | /* 60949 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22321 | /* 60953 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22322 | /* 60959 */ GIR_RootConstrainSelectedInstOperands, |
| 22323 | /* 60960 */ // GIR_Coverage, 22503, |
| 22324 | /* 60960 */ GIR_EraseRootFromParent_Done, |
| 22325 | /* 60961 */ // Label 1501: @60961 |
| 22326 | /* 60961 */ GIM_Try, /*On fail goto*//*Label 1502*/ GIMT_Encode4(61047), // Rule ID 225 // |
| 22327 | /* 60966 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 22328 | /* 60969 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22329 | /* 60972 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22330 | /* 60976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22331 | /* 60980 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22332 | /* 60984 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22333 | /* 60988 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22334 | /* 60992 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22335 | /* 60996 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22336 | /* 61000 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22337 | /* 61003 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22338 | /* 61007 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22339 | /* 61011 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 22340 | /* 61015 */ // MIs[0] src1 |
| 22341 | /* 61015 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22342 | /* 61020 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22343 | /* 61022 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22344 | /* 61029 */ // (st (add:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, 1:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (INC8m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 22345 | /* 61029 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC8m), |
| 22346 | /* 61032 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22347 | /* 61036 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22348 | /* 61039 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22349 | /* 61045 */ GIR_RootConstrainSelectedInstOperands, |
| 22350 | /* 61046 */ // GIR_Coverage, 225, |
| 22351 | /* 61046 */ GIR_EraseRootFromParent_Done, |
| 22352 | /* 61047 */ // Label 1502: @61047 |
| 22353 | /* 61047 */ GIM_Try, /*On fail goto*//*Label 1503*/ GIMT_Encode4(61133), // Rule ID 228 // |
| 22354 | /* 61052 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 22355 | /* 61055 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22356 | /* 61058 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22357 | /* 61062 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22358 | /* 61066 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22359 | /* 61070 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22360 | /* 61074 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22361 | /* 61078 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22362 | /* 61082 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22363 | /* 61086 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22364 | /* 61089 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22365 | /* 61093 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22366 | /* 61097 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 22367 | /* 61101 */ // MIs[0] src1 |
| 22368 | /* 61101 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22369 | /* 61106 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22370 | /* 61108 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22371 | /* 61115 */ // (st (add:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, -1:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (DEC8m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 22372 | /* 61115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC8m), |
| 22373 | /* 61118 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22374 | /* 61122 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22375 | /* 61125 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22376 | /* 61131 */ GIR_RootConstrainSelectedInstOperands, |
| 22377 | /* 61132 */ // GIR_Coverage, 228, |
| 22378 | /* 61132 */ GIR_EraseRootFromParent_Done, |
| 22379 | /* 61133 */ // Label 1503: @61133 |
| 22380 | /* 61133 */ GIM_Try, /*On fail goto*//*Label 1504*/ GIMT_Encode4(61216), // Rule ID 17612 // |
| 22381 | /* 61138 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22382 | /* 61141 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22383 | /* 61145 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22384 | /* 61149 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 22385 | /* 61153 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22386 | /* 61157 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22387 | /* 61161 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22388 | /* 61165 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22389 | /* 61169 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22390 | /* 61172 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22391 | /* 61176 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22392 | /* 61180 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 7, |
| 22393 | /* 61184 */ // MIs[0] dst |
| 22394 | /* 61184 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22395 | /* 61189 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22396 | /* 61191 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22397 | /* 61198 */ // (st (rotl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, 7:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR8m1:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 22398 | /* 61198 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8m1), |
| 22399 | /* 61201 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22400 | /* 61205 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22401 | /* 61208 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22402 | /* 61214 */ GIR_RootConstrainSelectedInstOperands, |
| 22403 | /* 61215 */ // GIR_Coverage, 17612, |
| 22404 | /* 61215 */ GIR_EraseRootFromParent_Done, |
| 22405 | /* 61216 */ // Label 1504: @61216 |
| 22406 | /* 61216 */ GIM_Try, /*On fail goto*//*Label 1505*/ GIMT_Encode4(61299), // Rule ID 17616 // |
| 22407 | /* 61221 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22408 | /* 61224 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22409 | /* 61228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22410 | /* 61232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 22411 | /* 61236 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22412 | /* 61240 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22413 | /* 61244 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22414 | /* 61248 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22415 | /* 61252 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22416 | /* 61255 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22417 | /* 61259 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22418 | /* 61263 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 7, |
| 22419 | /* 61267 */ // MIs[0] dst |
| 22420 | /* 61267 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22421 | /* 61272 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22422 | /* 61274 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22423 | /* 61281 */ // (st (rotr:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, 7:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL8m1:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 22424 | /* 61281 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8m1), |
| 22425 | /* 61284 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22426 | /* 61288 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22427 | /* 61291 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22428 | /* 61297 */ GIR_RootConstrainSelectedInstOperands, |
| 22429 | /* 61298 */ // GIR_Coverage, 17616, |
| 22430 | /* 61298 */ GIR_EraseRootFromParent_Done, |
| 22431 | /* 61299 */ // Label 1505: @61299 |
| 22432 | /* 61299 */ GIM_Try, /*On fail goto*//*Label 1506*/ GIMT_Encode4(61382), // Rule ID 261 // |
| 22433 | /* 61304 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22434 | /* 61307 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22435 | /* 61311 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22436 | /* 61315 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 22437 | /* 61319 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22438 | /* 61323 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22439 | /* 61327 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 22440 | /* 61331 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 22441 | /* 61335 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22442 | /* 61339 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22443 | /* 61342 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22444 | /* 61346 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22445 | /* 61350 */ // MIs[0] src1 |
| 22446 | /* 61350 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22447 | /* 61355 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22448 | /* 61357 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22449 | /* 61364 */ // (st (sub:{ *:[i8] } 0:{ *:[i8] }, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (NEG8m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 22450 | /* 61364 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG8m), |
| 22451 | /* 61367 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22452 | /* 61371 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22453 | /* 61374 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22454 | /* 61380 */ GIR_RootConstrainSelectedInstOperands, |
| 22455 | /* 61381 */ // GIR_Coverage, 261, |
| 22456 | /* 61381 */ GIR_EraseRootFromParent_Done, |
| 22457 | /* 61382 */ // Label 1506: @61382 |
| 22458 | /* 61382 */ GIM_Try, /*On fail goto*//*Label 1507*/ GIMT_Encode4(61462), // Rule ID 269 // |
| 22459 | /* 61387 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22460 | /* 61390 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22461 | /* 61394 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22462 | /* 61398 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 22463 | /* 61402 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22464 | /* 61406 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22465 | /* 61410 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22466 | /* 61414 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22467 | /* 61418 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22468 | /* 61421 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22469 | /* 61425 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22470 | /* 61429 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 22471 | /* 61433 */ // MIs[0] src1 |
| 22472 | /* 61433 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22473 | /* 61438 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22474 | /* 61440 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22475 | /* 61447 */ // (st (xor:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, -1:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (NOT8m addr:{ *:[iPTR] }:$src1) |
| 22476 | /* 61447 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT8m), |
| 22477 | /* 61450 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22478 | /* 61454 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22479 | /* 61460 */ GIR_RootConstrainSelectedInstOperands, |
| 22480 | /* 61461 */ // GIR_Coverage, 269, |
| 22481 | /* 61461 */ GIR_EraseRootFromParent_Done, |
| 22482 | /* 61462 */ // Label 1507: @61462 |
| 22483 | /* 61462 */ GIM_Try, /*On fail goto*//*Label 1508*/ GIMT_Encode4(61557), // Rule ID 413 // |
| 22484 | /* 61467 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22485 | /* 61470 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22486 | /* 61474 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22487 | /* 61478 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22488 | /* 61482 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22489 | /* 61486 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22490 | /* 61490 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22491 | /* 61494 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22492 | /* 61498 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22493 | /* 61501 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22494 | /* 61505 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22495 | /* 61509 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22496 | /* 61513 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22497 | /* 61517 */ // MIs[3] Operand 1 |
| 22498 | /* 61517 */ // No operand predicates |
| 22499 | /* 61517 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 22500 | /* 61521 */ // MIs[0] src1 |
| 22501 | /* 61521 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22502 | /* 61526 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22503 | /* 61528 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22504 | /* 61535 */ // (st (add:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD8mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 22505 | /* 61535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mi), |
| 22506 | /* 61538 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22507 | /* 61542 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22508 | /* 61545 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22509 | /* 61548 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22510 | /* 61555 */ GIR_RootConstrainSelectedInstOperands, |
| 22511 | /* 61556 */ // GIR_Coverage, 413, |
| 22512 | /* 61556 */ GIR_EraseRootFromParent_Done, |
| 22513 | /* 61557 */ // Label 1508: @61557 |
| 22514 | /* 61557 */ GIM_Try, /*On fail goto*//*Label 1509*/ GIMT_Encode4(61652), // Rule ID 305 // |
| 22515 | /* 61562 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22516 | /* 61565 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22517 | /* 61569 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22518 | /* 61573 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 22519 | /* 61577 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22520 | /* 61581 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22521 | /* 61585 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22522 | /* 61589 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22523 | /* 61593 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22524 | /* 61596 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22525 | /* 61600 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22526 | /* 61604 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22527 | /* 61608 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22528 | /* 61612 */ // MIs[3] Operand 1 |
| 22529 | /* 61612 */ // No operand predicates |
| 22530 | /* 61612 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 22531 | /* 61616 */ // MIs[0] src1 |
| 22532 | /* 61616 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22533 | /* 61621 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22534 | /* 61623 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22535 | /* 61630 */ // (st (and:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND8mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 22536 | /* 61630 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mi), |
| 22537 | /* 61633 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22538 | /* 61637 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22539 | /* 61640 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22540 | /* 61643 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22541 | /* 61650 */ GIR_RootConstrainSelectedInstOperands, |
| 22542 | /* 61651 */ // GIR_Coverage, 305, |
| 22543 | /* 61651 */ GIR_EraseRootFromParent_Done, |
| 22544 | /* 61652 */ // Label 1509: @61652 |
| 22545 | /* 61652 */ GIM_Try, /*On fail goto*//*Label 1510*/ GIMT_Encode4(61747), // Rule ID 341 // |
| 22546 | /* 61657 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22547 | /* 61660 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22548 | /* 61664 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22549 | /* 61668 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 22550 | /* 61672 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22551 | /* 61676 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22552 | /* 61680 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22553 | /* 61684 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22554 | /* 61688 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22555 | /* 61691 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22556 | /* 61695 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22557 | /* 61699 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22558 | /* 61703 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22559 | /* 61707 */ // MIs[3] Operand 1 |
| 22560 | /* 61707 */ // No operand predicates |
| 22561 | /* 61707 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 22562 | /* 61711 */ // MIs[0] src1 |
| 22563 | /* 61711 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22564 | /* 61716 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22565 | /* 61718 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22566 | /* 61725 */ // (st (or:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR8mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 22567 | /* 61725 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mi), |
| 22568 | /* 61728 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22569 | /* 61732 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22570 | /* 61735 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22571 | /* 61738 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22572 | /* 61745 */ GIR_RootConstrainSelectedInstOperands, |
| 22573 | /* 61746 */ // GIR_Coverage, 341, |
| 22574 | /* 61746 */ GIR_EraseRootFromParent_Done, |
| 22575 | /* 61747 */ // Label 1510: @61747 |
| 22576 | /* 61747 */ GIM_Try, /*On fail goto*//*Label 1511*/ GIMT_Encode4(61842), // Rule ID 453 // |
| 22577 | /* 61752 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22578 | /* 61755 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22579 | /* 61759 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22580 | /* 61763 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 22581 | /* 61767 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22582 | /* 61771 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22583 | /* 61775 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22584 | /* 61779 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22585 | /* 61783 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22586 | /* 61786 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22587 | /* 61790 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22588 | /* 61794 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22589 | /* 61798 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22590 | /* 61802 */ // MIs[3] Operand 1 |
| 22591 | /* 61802 */ // No operand predicates |
| 22592 | /* 61802 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 22593 | /* 61806 */ // MIs[0] src1 |
| 22594 | /* 61806 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22595 | /* 61811 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22596 | /* 61813 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22597 | /* 61820 */ // (st (sub:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB8mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 22598 | /* 61820 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8mi), |
| 22599 | /* 61823 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22600 | /* 61827 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22601 | /* 61830 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22602 | /* 61833 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22603 | /* 61840 */ GIR_RootConstrainSelectedInstOperands, |
| 22604 | /* 61841 */ // GIR_Coverage, 453, |
| 22605 | /* 61841 */ GIR_EraseRootFromParent_Done, |
| 22606 | /* 61842 */ // Label 1511: @61842 |
| 22607 | /* 61842 */ GIM_Try, /*On fail goto*//*Label 1512*/ GIMT_Encode4(61937), // Rule ID 377 // |
| 22608 | /* 61847 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22609 | /* 61850 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22610 | /* 61854 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22611 | /* 61858 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 22612 | /* 61862 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22613 | /* 61866 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22614 | /* 61870 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22615 | /* 61874 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22616 | /* 61878 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22617 | /* 61881 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22618 | /* 61885 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22619 | /* 61889 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22620 | /* 61893 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22621 | /* 61897 */ // MIs[3] Operand 1 |
| 22622 | /* 61897 */ // No operand predicates |
| 22623 | /* 61897 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 22624 | /* 61901 */ // MIs[0] src1 |
| 22625 | /* 61901 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22626 | /* 61906 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22627 | /* 61908 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22628 | /* 61915 */ // (st (xor:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR8mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 22629 | /* 61915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mi), |
| 22630 | /* 61918 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22631 | /* 61922 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22632 | /* 61925 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22633 | /* 61928 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22634 | /* 61935 */ GIR_RootConstrainSelectedInstOperands, |
| 22635 | /* 61936 */ // GIR_Coverage, 377, |
| 22636 | /* 61936 */ GIR_EraseRootFromParent_Done, |
| 22637 | /* 61937 */ // Label 1512: @61937 |
| 22638 | /* 61937 */ GIM_Try, /*On fail goto*//*Label 1513*/ GIMT_Encode4(62038), // Rule ID 22427 // |
| 22639 | /* 61942 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22640 | /* 61945 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22641 | /* 61952 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22642 | /* 61956 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22643 | /* 61960 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22644 | /* 61964 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22645 | /* 61968 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22646 | /* 61972 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22647 | /* 61976 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22648 | /* 61979 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22649 | /* 61983 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22650 | /* 61990 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22651 | /* 61994 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22652 | /* 61998 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22653 | /* 62002 */ // MIs[3] Operand 1 |
| 22654 | /* 62002 */ // No operand predicates |
| 22655 | /* 62002 */ // MIs[0] dst |
| 22656 | /* 62002 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22657 | /* 62007 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22658 | /* 62009 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22659 | /* 62016 */ // (atomic_store (add:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, (imm:{ *:[i8] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (ADD8mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i8] }):$src) |
| 22660 | /* 62016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mi), |
| 22661 | /* 62019 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22662 | /* 62023 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 22663 | /* 62026 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22664 | /* 62029 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22665 | /* 62036 */ GIR_RootConstrainSelectedInstOperands, |
| 22666 | /* 62037 */ // GIR_Coverage, 22427, |
| 22667 | /* 62037 */ GIR_EraseRootFromParent_Done, |
| 22668 | /* 62038 */ // Label 1513: @62038 |
| 22669 | /* 62038 */ GIM_Try, /*On fail goto*//*Label 1514*/ GIMT_Encode4(62139), // Rule ID 22435 // |
| 22670 | /* 62043 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22671 | /* 62046 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22672 | /* 62053 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22673 | /* 62057 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 22674 | /* 62061 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22675 | /* 62065 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22676 | /* 62069 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22677 | /* 62073 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22678 | /* 62077 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22679 | /* 62080 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22680 | /* 62084 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22681 | /* 62091 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22682 | /* 62095 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22683 | /* 62099 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22684 | /* 62103 */ // MIs[3] Operand 1 |
| 22685 | /* 62103 */ // No operand predicates |
| 22686 | /* 62103 */ // MIs[0] dst |
| 22687 | /* 62103 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22688 | /* 62108 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22689 | /* 62110 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22690 | /* 62117 */ // (atomic_store (and:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, (imm:{ *:[i8] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (AND8mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i8] }):$src) |
| 22691 | /* 62117 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mi), |
| 22692 | /* 62120 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22693 | /* 62124 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 22694 | /* 62127 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22695 | /* 62130 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22696 | /* 62137 */ GIR_RootConstrainSelectedInstOperands, |
| 22697 | /* 62138 */ // GIR_Coverage, 22435, |
| 22698 | /* 62138 */ GIR_EraseRootFromParent_Done, |
| 22699 | /* 62139 */ // Label 1514: @62139 |
| 22700 | /* 62139 */ GIM_Try, /*On fail goto*//*Label 1515*/ GIMT_Encode4(62240), // Rule ID 22443 // |
| 22701 | /* 62144 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22702 | /* 62147 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22703 | /* 62154 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22704 | /* 62158 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 22705 | /* 62162 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22706 | /* 62166 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22707 | /* 62170 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22708 | /* 62174 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22709 | /* 62178 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22710 | /* 62181 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22711 | /* 62185 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22712 | /* 62192 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22713 | /* 62196 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22714 | /* 62200 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22715 | /* 62204 */ // MIs[3] Operand 1 |
| 22716 | /* 62204 */ // No operand predicates |
| 22717 | /* 62204 */ // MIs[0] dst |
| 22718 | /* 62204 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22719 | /* 62209 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22720 | /* 62211 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22721 | /* 62218 */ // (atomic_store (or:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, (imm:{ *:[i8] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (OR8mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i8] }):$src) |
| 22722 | /* 62218 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mi), |
| 22723 | /* 62221 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22724 | /* 62225 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 22725 | /* 62228 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22726 | /* 62231 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22727 | /* 62238 */ GIR_RootConstrainSelectedInstOperands, |
| 22728 | /* 62239 */ // GIR_Coverage, 22443, |
| 22729 | /* 62239 */ GIR_EraseRootFromParent_Done, |
| 22730 | /* 62240 */ // Label 1515: @62240 |
| 22731 | /* 62240 */ GIM_Try, /*On fail goto*//*Label 1516*/ GIMT_Encode4(62341), // Rule ID 22459 // |
| 22732 | /* 62245 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22733 | /* 62248 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22734 | /* 62255 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22735 | /* 62259 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 22736 | /* 62263 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22737 | /* 62267 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22738 | /* 62271 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22739 | /* 62275 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22740 | /* 62279 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22741 | /* 62282 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22742 | /* 62286 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22743 | /* 62293 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22744 | /* 62297 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22745 | /* 62301 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22746 | /* 62305 */ // MIs[3] Operand 1 |
| 22747 | /* 62305 */ // No operand predicates |
| 22748 | /* 62305 */ // MIs[0] dst |
| 22749 | /* 62305 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22750 | /* 62310 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22751 | /* 62312 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22752 | /* 62319 */ // (atomic_store (sub:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, (imm:{ *:[i8] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (SUB8mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i8] }):$src) |
| 22753 | /* 62319 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8mi), |
| 22754 | /* 62322 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22755 | /* 62326 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 22756 | /* 62329 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22757 | /* 62332 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22758 | /* 62339 */ GIR_RootConstrainSelectedInstOperands, |
| 22759 | /* 62340 */ // GIR_Coverage, 22459, |
| 22760 | /* 62340 */ GIR_EraseRootFromParent_Done, |
| 22761 | /* 62341 */ // Label 1516: @62341 |
| 22762 | /* 62341 */ GIM_Try, /*On fail goto*//*Label 1517*/ GIMT_Encode4(62442), // Rule ID 22451 // |
| 22763 | /* 62346 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22764 | /* 62349 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22765 | /* 62356 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22766 | /* 62360 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 22767 | /* 62364 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22768 | /* 62368 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22769 | /* 62372 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22770 | /* 62376 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22771 | /* 62380 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22772 | /* 62383 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22773 | /* 62387 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22774 | /* 62394 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22775 | /* 62398 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22776 | /* 62402 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22777 | /* 62406 */ // MIs[3] Operand 1 |
| 22778 | /* 62406 */ // No operand predicates |
| 22779 | /* 62406 */ // MIs[0] dst |
| 22780 | /* 62406 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22781 | /* 62411 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22782 | /* 62413 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22783 | /* 62420 */ // (atomic_store (xor:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, (imm:{ *:[i8] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (XOR8mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i8] }):$src) |
| 22784 | /* 62420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mi), |
| 22785 | /* 62423 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22786 | /* 62427 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 22787 | /* 62430 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22788 | /* 62433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22789 | /* 62440 */ GIR_RootConstrainSelectedInstOperands, |
| 22790 | /* 62441 */ // GIR_Coverage, 22451, |
| 22791 | /* 62441 */ GIR_EraseRootFromParent_Done, |
| 22792 | /* 62442 */ // Label 1517: @62442 |
| 22793 | /* 62442 */ GIM_Try, /*On fail goto*//*Label 1518*/ GIMT_Encode4(62533), // Rule ID 733 // |
| 22794 | /* 62447 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22795 | /* 62450 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22796 | /* 62454 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22797 | /* 62458 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 22798 | /* 62462 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22799 | /* 62466 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22800 | /* 62470 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22801 | /* 62474 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22802 | /* 62478 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22803 | /* 62481 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22804 | /* 62485 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22805 | /* 62489 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22806 | /* 62493 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22807 | /* 62497 */ // MIs[3] Operand 1 |
| 22808 | /* 62497 */ // No operand predicates |
| 22809 | /* 62497 */ // MIs[0] src1 |
| 22810 | /* 62497 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22811 | /* 62502 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22812 | /* 62504 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22813 | /* 62511 */ // (st (sra:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SAR8mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 22814 | /* 62511 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8mi), |
| 22815 | /* 62514 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22816 | /* 62518 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22817 | /* 62521 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22818 | /* 62524 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22819 | /* 62531 */ GIR_RootConstrainSelectedInstOperands, |
| 22820 | /* 62532 */ // GIR_Coverage, 733, |
| 22821 | /* 62532 */ GIR_EraseRootFromParent_Done, |
| 22822 | /* 62533 */ // Label 1518: @62533 |
| 22823 | /* 62533 */ GIM_Try, /*On fail goto*//*Label 1519*/ GIMT_Encode4(62624), // Rule ID 701 // |
| 22824 | /* 62538 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22825 | /* 62541 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22826 | /* 62545 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22827 | /* 62549 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 22828 | /* 62553 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22829 | /* 62557 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22830 | /* 62561 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22831 | /* 62565 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22832 | /* 62569 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22833 | /* 62572 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22834 | /* 62576 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22835 | /* 62580 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22836 | /* 62584 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22837 | /* 62588 */ // MIs[3] Operand 1 |
| 22838 | /* 62588 */ // No operand predicates |
| 22839 | /* 62588 */ // MIs[0] src1 |
| 22840 | /* 62588 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22841 | /* 62593 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22842 | /* 62595 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22843 | /* 62602 */ // (st (srl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHR8mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 22844 | /* 62602 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8mi), |
| 22845 | /* 62605 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22846 | /* 62609 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22847 | /* 62612 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22848 | /* 62615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22849 | /* 62622 */ GIR_RootConstrainSelectedInstOperands, |
| 22850 | /* 62623 */ // GIR_Coverage, 701, |
| 22851 | /* 62623 */ GIR_EraseRootFromParent_Done, |
| 22852 | /* 62624 */ // Label 1519: @62624 |
| 22853 | /* 62624 */ GIM_Try, /*On fail goto*//*Label 1520*/ GIMT_Encode4(62715), // Rule ID 765 // |
| 22854 | /* 62629 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22855 | /* 62632 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22856 | /* 62636 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22857 | /* 62640 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 22858 | /* 62644 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22859 | /* 62648 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22860 | /* 62652 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22861 | /* 62656 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22862 | /* 62660 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22863 | /* 62663 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22864 | /* 62667 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22865 | /* 62671 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22866 | /* 62675 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22867 | /* 62679 */ // MIs[3] Operand 1 |
| 22868 | /* 62679 */ // No operand predicates |
| 22869 | /* 62679 */ // MIs[0] src1 |
| 22870 | /* 62679 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22871 | /* 62684 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22872 | /* 62686 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22873 | /* 62693 */ // (st (rotl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL8mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 22874 | /* 62693 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8mi), |
| 22875 | /* 62696 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22876 | /* 62700 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22877 | /* 62703 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22878 | /* 62706 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22879 | /* 62713 */ GIR_RootConstrainSelectedInstOperands, |
| 22880 | /* 62714 */ // GIR_Coverage, 765, |
| 22881 | /* 62714 */ GIR_EraseRootFromParent_Done, |
| 22882 | /* 62715 */ // Label 1520: @62715 |
| 22883 | /* 62715 */ GIM_Try, /*On fail goto*//*Label 1521*/ GIMT_Encode4(62806), // Rule ID 797 // |
| 22884 | /* 62720 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22885 | /* 62723 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22886 | /* 62727 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22887 | /* 62731 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 22888 | /* 62735 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22889 | /* 62739 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22890 | /* 62743 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22891 | /* 62747 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22892 | /* 62751 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22893 | /* 62754 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22894 | /* 62758 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22895 | /* 62762 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22896 | /* 62766 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22897 | /* 62770 */ // MIs[3] Operand 1 |
| 22898 | /* 62770 */ // No operand predicates |
| 22899 | /* 62770 */ // MIs[0] src1 |
| 22900 | /* 62770 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22901 | /* 62775 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22902 | /* 62777 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22903 | /* 62784 */ // (st (rotr:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR8mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 22904 | /* 62784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8mi), |
| 22905 | /* 62787 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22906 | /* 62791 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22907 | /* 62794 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22908 | /* 62797 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22909 | /* 62804 */ GIR_RootConstrainSelectedInstOperands, |
| 22910 | /* 62805 */ // GIR_Coverage, 797, |
| 22911 | /* 62805 */ GIR_EraseRootFromParent_Done, |
| 22912 | /* 62806 */ // Label 1521: @62806 |
| 22913 | /* 62806 */ GIM_Try, /*On fail goto*//*Label 1522*/ GIMT_Encode4(62897), // Rule ID 669 // |
| 22914 | /* 62811 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22915 | /* 62814 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22916 | /* 62818 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22917 | /* 62822 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 22918 | /* 62826 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22919 | /* 62830 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22920 | /* 62834 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22921 | /* 62838 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22922 | /* 62842 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22923 | /* 62845 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22924 | /* 62849 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22925 | /* 62853 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22926 | /* 62857 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22927 | /* 62861 */ // MIs[3] Operand 1 |
| 22928 | /* 62861 */ // No operand predicates |
| 22929 | /* 62861 */ // MIs[0] src1 |
| 22930 | /* 62861 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22931 | /* 62866 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22932 | /* 62868 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22933 | /* 62875 */ // (st (shl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHL8mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 22934 | /* 62875 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8mi), |
| 22935 | /* 62878 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22936 | /* 62882 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22937 | /* 62885 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22938 | /* 62888 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22939 | /* 62895 */ GIR_RootConstrainSelectedInstOperands, |
| 22940 | /* 62896 */ // GIR_Coverage, 669, |
| 22941 | /* 62896 */ GIR_EraseRootFromParent_Done, |
| 22942 | /* 62897 */ // Label 1522: @62897 |
| 22943 | /* 62897 */ GIM_Try, /*On fail goto*//*Label 1523*/ GIMT_Encode4(62995), // Rule ID 22431 // |
| 22944 | /* 62902 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22945 | /* 62905 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22946 | /* 62912 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22947 | /* 62916 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22948 | /* 62920 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22949 | /* 62924 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22950 | /* 62928 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22951 | /* 62932 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22952 | /* 62936 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22953 | /* 62939 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22954 | /* 62943 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22955 | /* 62950 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22956 | /* 62954 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22957 | /* 62959 */ // MIs[0] dst |
| 22958 | /* 62959 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22959 | /* 62964 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22960 | /* 62966 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22961 | /* 62973 */ // (atomic_store (add:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, GR8:{ *:[i8] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (ADD8mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 22962 | /* 62973 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mr), |
| 22963 | /* 62976 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22964 | /* 62980 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 22965 | /* 62984 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22966 | /* 62987 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22967 | /* 62993 */ GIR_RootConstrainSelectedInstOperands, |
| 22968 | /* 62994 */ // GIR_Coverage, 22431, |
| 22969 | /* 62994 */ GIR_EraseRootFromParent_Done, |
| 22970 | /* 62995 */ // Label 1523: @62995 |
| 22971 | /* 62995 */ GIM_Try, /*On fail goto*//*Label 1524*/ GIMT_Encode4(63093), // Rule ID 26002 // |
| 22972 | /* 63000 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22973 | /* 63003 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22974 | /* 63010 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22975 | /* 63014 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22976 | /* 63018 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22977 | /* 63022 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22978 | /* 63026 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22979 | /* 63031 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 22980 | /* 63035 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22981 | /* 63039 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22982 | /* 63042 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22983 | /* 63046 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22984 | /* 63053 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22985 | /* 63057 */ // MIs[0] dst |
| 22986 | /* 63057 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22987 | /* 63062 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22988 | /* 63064 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22989 | /* 63071 */ // (atomic_store (add:{ *:[i8] } GR8:{ *:[i8] }:$src, (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (ADD8mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 22990 | /* 63071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mr), |
| 22991 | /* 63074 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22992 | /* 63078 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 22993 | /* 63082 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22994 | /* 63085 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22995 | /* 63091 */ GIR_RootConstrainSelectedInstOperands, |
| 22996 | /* 63092 */ // GIR_Coverage, 26002, |
| 22997 | /* 63092 */ GIR_EraseRootFromParent_Done, |
| 22998 | /* 63093 */ // Label 1524: @63093 |
| 22999 | /* 63093 */ GIM_Try, /*On fail goto*//*Label 1525*/ GIMT_Encode4(63191), // Rule ID 22439 // |
| 23000 | /* 63098 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23001 | /* 63101 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23002 | /* 63108 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23003 | /* 63112 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 23004 | /* 63116 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23005 | /* 63120 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23006 | /* 63124 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23007 | /* 63128 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23008 | /* 63132 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23009 | /* 63135 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23010 | /* 63139 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23011 | /* 63146 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23012 | /* 63150 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23013 | /* 63155 */ // MIs[0] dst |
| 23014 | /* 63155 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23015 | /* 63160 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23016 | /* 63162 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23017 | /* 63169 */ // (atomic_store (and:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, GR8:{ *:[i8] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (AND8mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23018 | /* 63169 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mr), |
| 23019 | /* 63172 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23020 | /* 63176 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 23021 | /* 63180 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23022 | /* 63183 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23023 | /* 63189 */ GIR_RootConstrainSelectedInstOperands, |
| 23024 | /* 63190 */ // GIR_Coverage, 22439, |
| 23025 | /* 63190 */ GIR_EraseRootFromParent_Done, |
| 23026 | /* 63191 */ // Label 1525: @63191 |
| 23027 | /* 63191 */ GIM_Try, /*On fail goto*//*Label 1526*/ GIMT_Encode4(63289), // Rule ID 26006 // |
| 23028 | /* 63196 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23029 | /* 63199 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23030 | /* 63206 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23031 | /* 63210 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 23032 | /* 63214 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23033 | /* 63218 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23034 | /* 63222 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23035 | /* 63227 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23036 | /* 63231 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23037 | /* 63235 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23038 | /* 63238 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23039 | /* 63242 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23040 | /* 63249 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23041 | /* 63253 */ // MIs[0] dst |
| 23042 | /* 63253 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23043 | /* 63258 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23044 | /* 63260 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23045 | /* 63267 */ // (atomic_store (and:{ *:[i8] } GR8:{ *:[i8] }:$src, (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (AND8mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23046 | /* 63267 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mr), |
| 23047 | /* 63270 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23048 | /* 63274 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 23049 | /* 63278 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23050 | /* 63281 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23051 | /* 63287 */ GIR_RootConstrainSelectedInstOperands, |
| 23052 | /* 63288 */ // GIR_Coverage, 26006, |
| 23053 | /* 63288 */ GIR_EraseRootFromParent_Done, |
| 23054 | /* 63289 */ // Label 1526: @63289 |
| 23055 | /* 63289 */ GIM_Try, /*On fail goto*//*Label 1527*/ GIMT_Encode4(63387), // Rule ID 22447 // |
| 23056 | /* 63294 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23057 | /* 63297 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23058 | /* 63304 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23059 | /* 63308 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 23060 | /* 63312 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23061 | /* 63316 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23062 | /* 63320 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23063 | /* 63324 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23064 | /* 63328 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23065 | /* 63331 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23066 | /* 63335 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23067 | /* 63342 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23068 | /* 63346 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23069 | /* 63351 */ // MIs[0] dst |
| 23070 | /* 63351 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23071 | /* 63356 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23072 | /* 63358 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23073 | /* 63365 */ // (atomic_store (or:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, GR8:{ *:[i8] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (OR8mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23074 | /* 63365 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mr), |
| 23075 | /* 63368 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23076 | /* 63372 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 23077 | /* 63376 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23078 | /* 63379 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23079 | /* 63385 */ GIR_RootConstrainSelectedInstOperands, |
| 23080 | /* 63386 */ // GIR_Coverage, 22447, |
| 23081 | /* 63386 */ GIR_EraseRootFromParent_Done, |
| 23082 | /* 63387 */ // Label 1527: @63387 |
| 23083 | /* 63387 */ GIM_Try, /*On fail goto*//*Label 1528*/ GIMT_Encode4(63485), // Rule ID 26010 // |
| 23084 | /* 63392 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23085 | /* 63395 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23086 | /* 63402 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23087 | /* 63406 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 23088 | /* 63410 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23089 | /* 63414 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23090 | /* 63418 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23091 | /* 63423 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23092 | /* 63427 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23093 | /* 63431 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23094 | /* 63434 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23095 | /* 63438 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23096 | /* 63445 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23097 | /* 63449 */ // MIs[0] dst |
| 23098 | /* 63449 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23099 | /* 63454 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23100 | /* 63456 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23101 | /* 63463 */ // (atomic_store (or:{ *:[i8] } GR8:{ *:[i8] }:$src, (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (OR8mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23102 | /* 63463 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mr), |
| 23103 | /* 63466 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23104 | /* 63470 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 23105 | /* 63474 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23106 | /* 63477 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23107 | /* 63483 */ GIR_RootConstrainSelectedInstOperands, |
| 23108 | /* 63484 */ // GIR_Coverage, 26010, |
| 23109 | /* 63484 */ GIR_EraseRootFromParent_Done, |
| 23110 | /* 63485 */ // Label 1528: @63485 |
| 23111 | /* 63485 */ GIM_Try, /*On fail goto*//*Label 1529*/ GIMT_Encode4(63583), // Rule ID 22463 // |
| 23112 | /* 63490 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23113 | /* 63493 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23114 | /* 63500 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23115 | /* 63504 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 23116 | /* 63508 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23117 | /* 63512 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23118 | /* 63516 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23119 | /* 63520 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23120 | /* 63524 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23121 | /* 63527 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23122 | /* 63531 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23123 | /* 63538 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23124 | /* 63542 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23125 | /* 63547 */ // MIs[0] dst |
| 23126 | /* 63547 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23127 | /* 63552 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23128 | /* 63554 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23129 | /* 63561 */ // (atomic_store (sub:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, GR8:{ *:[i8] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (SUB8mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23130 | /* 63561 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8mr), |
| 23131 | /* 63564 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23132 | /* 63568 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 23133 | /* 63572 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23134 | /* 63575 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23135 | /* 63581 */ GIR_RootConstrainSelectedInstOperands, |
| 23136 | /* 63582 */ // GIR_Coverage, 22463, |
| 23137 | /* 63582 */ GIR_EraseRootFromParent_Done, |
| 23138 | /* 63583 */ // Label 1529: @63583 |
| 23139 | /* 63583 */ GIM_Try, /*On fail goto*//*Label 1530*/ GIMT_Encode4(63681), // Rule ID 22455 // |
| 23140 | /* 63588 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23141 | /* 63591 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23142 | /* 63598 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23143 | /* 63602 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23144 | /* 63606 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23145 | /* 63610 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23146 | /* 63614 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23147 | /* 63618 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23148 | /* 63622 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23149 | /* 63625 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23150 | /* 63629 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23151 | /* 63636 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23152 | /* 63640 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23153 | /* 63645 */ // MIs[0] dst |
| 23154 | /* 63645 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23155 | /* 63650 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23156 | /* 63652 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23157 | /* 63659 */ // (atomic_store (xor:{ *:[i8] } (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>, GR8:{ *:[i8] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (XOR8mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23158 | /* 63659 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mr), |
| 23159 | /* 63662 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23160 | /* 63666 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 23161 | /* 63670 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23162 | /* 63673 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23163 | /* 63679 */ GIR_RootConstrainSelectedInstOperands, |
| 23164 | /* 63680 */ // GIR_Coverage, 22455, |
| 23165 | /* 63680 */ GIR_EraseRootFromParent_Done, |
| 23166 | /* 63681 */ // Label 1530: @63681 |
| 23167 | /* 63681 */ GIM_Try, /*On fail goto*//*Label 1531*/ GIMT_Encode4(63779), // Rule ID 26014 // |
| 23168 | /* 63686 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23169 | /* 63689 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23170 | /* 63696 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23171 | /* 63700 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23172 | /* 63704 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23173 | /* 63708 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23174 | /* 63712 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23175 | /* 63717 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23176 | /* 63721 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23177 | /* 63725 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23178 | /* 63728 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23179 | /* 63732 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23180 | /* 63739 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23181 | /* 63743 */ // MIs[0] dst |
| 23182 | /* 63743 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23183 | /* 63748 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23184 | /* 63750 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23185 | /* 63757 */ // (atomic_store (xor:{ *:[i8] } GR8:{ *:[i8] }:$src, (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (XOR8mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23186 | /* 63757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mr), |
| 23187 | /* 63760 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23188 | /* 63764 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 23189 | /* 63768 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23190 | /* 63771 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23191 | /* 63777 */ GIR_RootConstrainSelectedInstOperands, |
| 23192 | /* 63778 */ // GIR_Coverage, 26014, |
| 23193 | /* 63778 */ GIR_EraseRootFromParent_Done, |
| 23194 | /* 63779 */ // Label 1531: @63779 |
| 23195 | /* 63779 */ GIM_Try, /*On fail goto*//*Label 1532*/ GIMT_Encode4(63867), // Rule ID 409 // |
| 23196 | /* 63784 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23197 | /* 63787 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23198 | /* 63791 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23199 | /* 63795 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23200 | /* 63799 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23201 | /* 63803 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23202 | /* 63807 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23203 | /* 63811 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23204 | /* 63815 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23205 | /* 63818 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23206 | /* 63822 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23207 | /* 63826 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23208 | /* 63831 */ // MIs[0] src1 |
| 23209 | /* 63831 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23210 | /* 63836 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23211 | /* 63838 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23212 | /* 63845 */ // (st (add:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD8mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR8:{ *:[i8] }:$src2) |
| 23213 | /* 63845 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mr), |
| 23214 | /* 63848 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23215 | /* 63852 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 23216 | /* 63856 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23217 | /* 63859 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23218 | /* 63865 */ GIR_RootConstrainSelectedInstOperands, |
| 23219 | /* 63866 */ // GIR_Coverage, 409, |
| 23220 | /* 63866 */ GIR_EraseRootFromParent_Done, |
| 23221 | /* 63867 */ // Label 1532: @63867 |
| 23222 | /* 63867 */ GIM_Try, /*On fail goto*//*Label 1533*/ GIMT_Encode4(63955), // Rule ID 23222 // |
| 23223 | /* 63872 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23224 | /* 63875 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23225 | /* 63879 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23226 | /* 63883 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23227 | /* 63887 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23228 | /* 63891 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23229 | /* 63895 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23230 | /* 63900 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23231 | /* 63904 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23232 | /* 63908 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23233 | /* 63911 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23234 | /* 63915 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23235 | /* 63919 */ // MIs[0] src1 |
| 23236 | /* 63919 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23237 | /* 63924 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23238 | /* 63926 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23239 | /* 63933 */ // (st (add:{ *:[i8] } GR8:{ *:[i8] }:$src2, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD8mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR8:{ *:[i8] }:$src2) |
| 23240 | /* 63933 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mr), |
| 23241 | /* 63936 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23242 | /* 63940 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 23243 | /* 63944 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23244 | /* 63947 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23245 | /* 63953 */ GIR_RootConstrainSelectedInstOperands, |
| 23246 | /* 63954 */ // GIR_Coverage, 23222, |
| 23247 | /* 63954 */ GIR_EraseRootFromParent_Done, |
| 23248 | /* 63955 */ // Label 1533: @63955 |
| 23249 | /* 63955 */ GIM_Try, /*On fail goto*//*Label 1534*/ GIMT_Encode4(64043), // Rule ID 301 // |
| 23250 | /* 63960 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23251 | /* 63963 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23252 | /* 63967 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23253 | /* 63971 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 23254 | /* 63975 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23255 | /* 63979 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23256 | /* 63983 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23257 | /* 63987 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23258 | /* 63991 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23259 | /* 63994 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23260 | /* 63998 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23261 | /* 64002 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23262 | /* 64007 */ // MIs[0] src1 |
| 23263 | /* 64007 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23264 | /* 64012 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23265 | /* 64014 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23266 | /* 64021 */ // (st (and:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND8mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR8:{ *:[i8] }:$src2) |
| 23267 | /* 64021 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mr), |
| 23268 | /* 64024 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23269 | /* 64028 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 23270 | /* 64032 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23271 | /* 64035 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23272 | /* 64041 */ GIR_RootConstrainSelectedInstOperands, |
| 23273 | /* 64042 */ // GIR_Coverage, 301, |
| 23274 | /* 64042 */ GIR_EraseRootFromParent_Done, |
| 23275 | /* 64043 */ // Label 1534: @64043 |
| 23276 | /* 64043 */ GIM_Try, /*On fail goto*//*Label 1535*/ GIMT_Encode4(64131), // Rule ID 23186 // |
| 23277 | /* 64048 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23278 | /* 64051 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23279 | /* 64055 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23280 | /* 64059 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 23281 | /* 64063 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23282 | /* 64067 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23283 | /* 64071 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23284 | /* 64076 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23285 | /* 64080 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23286 | /* 64084 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23287 | /* 64087 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23288 | /* 64091 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23289 | /* 64095 */ // MIs[0] src1 |
| 23290 | /* 64095 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23291 | /* 64100 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23292 | /* 64102 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23293 | /* 64109 */ // (st (and:{ *:[i8] } GR8:{ *:[i8] }:$src2, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND8mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR8:{ *:[i8] }:$src2) |
| 23294 | /* 64109 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mr), |
| 23295 | /* 64112 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23296 | /* 64116 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 23297 | /* 64120 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23298 | /* 64123 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23299 | /* 64129 */ GIR_RootConstrainSelectedInstOperands, |
| 23300 | /* 64130 */ // GIR_Coverage, 23186, |
| 23301 | /* 64130 */ GIR_EraseRootFromParent_Done, |
| 23302 | /* 64131 */ // Label 1535: @64131 |
| 23303 | /* 64131 */ GIM_Try, /*On fail goto*//*Label 1536*/ GIMT_Encode4(64229), // Rule ID 749 // |
| 23304 | /* 64136 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23305 | /* 64139 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23306 | /* 64143 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23307 | /* 64147 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 23308 | /* 64151 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23309 | /* 64155 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23310 | /* 64159 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23311 | /* 64163 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23312 | /* 64167 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23313 | /* 64170 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23314 | /* 64174 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 23315 | /* 64178 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 23316 | /* 64183 */ // MIs[0] src1 |
| 23317 | /* 64183 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23318 | /* 64188 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23319 | /* 64190 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23320 | /* 64197 */ // (st (sra:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SAR8mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 23321 | /* 64197 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 23322 | /* 64201 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 23323 | /* 64207 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 23324 | /* 64211 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8mCL), |
| 23325 | /* 64214 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23326 | /* 64218 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23327 | /* 64221 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23328 | /* 64227 */ GIR_RootConstrainSelectedInstOperands, |
| 23329 | /* 64228 */ // GIR_Coverage, 749, |
| 23330 | /* 64228 */ GIR_EraseRootFromParent_Done, |
| 23331 | /* 64229 */ // Label 1536: @64229 |
| 23332 | /* 64229 */ GIM_Try, /*On fail goto*//*Label 1537*/ GIMT_Encode4(64327), // Rule ID 717 // |
| 23333 | /* 64234 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23334 | /* 64237 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23335 | /* 64241 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23336 | /* 64245 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 23337 | /* 64249 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23338 | /* 64253 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23339 | /* 64257 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23340 | /* 64261 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23341 | /* 64265 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23342 | /* 64268 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23343 | /* 64272 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 23344 | /* 64276 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 23345 | /* 64281 */ // MIs[0] src1 |
| 23346 | /* 64281 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23347 | /* 64286 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23348 | /* 64288 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23349 | /* 64295 */ // (st (srl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHR8mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 23350 | /* 64295 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 23351 | /* 64299 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 23352 | /* 64305 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 23353 | /* 64309 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8mCL), |
| 23354 | /* 64312 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23355 | /* 64316 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23356 | /* 64319 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23357 | /* 64325 */ GIR_RootConstrainSelectedInstOperands, |
| 23358 | /* 64326 */ // GIR_Coverage, 717, |
| 23359 | /* 64326 */ GIR_EraseRootFromParent_Done, |
| 23360 | /* 64327 */ // Label 1537: @64327 |
| 23361 | /* 64327 */ GIM_Try, /*On fail goto*//*Label 1538*/ GIMT_Encode4(64415), // Rule ID 337 // |
| 23362 | /* 64332 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23363 | /* 64335 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23364 | /* 64339 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23365 | /* 64343 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 23366 | /* 64347 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23367 | /* 64351 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23368 | /* 64355 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23369 | /* 64359 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23370 | /* 64363 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23371 | /* 64366 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23372 | /* 64370 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23373 | /* 64374 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23374 | /* 64379 */ // MIs[0] src1 |
| 23375 | /* 64379 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23376 | /* 64384 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23377 | /* 64386 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23378 | /* 64393 */ // (st (or:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR8mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR8:{ *:[i8] }:$src2) |
| 23379 | /* 64393 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mr), |
| 23380 | /* 64396 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23381 | /* 64400 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 23382 | /* 64404 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23383 | /* 64407 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23384 | /* 64413 */ GIR_RootConstrainSelectedInstOperands, |
| 23385 | /* 64414 */ // GIR_Coverage, 337, |
| 23386 | /* 64414 */ GIR_EraseRootFromParent_Done, |
| 23387 | /* 64415 */ // Label 1538: @64415 |
| 23388 | /* 64415 */ GIM_Try, /*On fail goto*//*Label 1539*/ GIMT_Encode4(64503), // Rule ID 23198 // |
| 23389 | /* 64420 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23390 | /* 64423 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23391 | /* 64427 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23392 | /* 64431 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 23393 | /* 64435 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23394 | /* 64439 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23395 | /* 64443 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23396 | /* 64448 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23397 | /* 64452 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23398 | /* 64456 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23399 | /* 64459 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23400 | /* 64463 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23401 | /* 64467 */ // MIs[0] src1 |
| 23402 | /* 64467 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23403 | /* 64472 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23404 | /* 64474 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23405 | /* 64481 */ // (st (or:{ *:[i8] } GR8:{ *:[i8] }:$src2, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR8mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR8:{ *:[i8] }:$src2) |
| 23406 | /* 64481 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mr), |
| 23407 | /* 64484 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23408 | /* 64488 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 23409 | /* 64492 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23410 | /* 64495 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23411 | /* 64501 */ GIR_RootConstrainSelectedInstOperands, |
| 23412 | /* 64502 */ // GIR_Coverage, 23198, |
| 23413 | /* 64502 */ GIR_EraseRootFromParent_Done, |
| 23414 | /* 64503 */ // Label 1539: @64503 |
| 23415 | /* 64503 */ GIM_Try, /*On fail goto*//*Label 1540*/ GIMT_Encode4(64601), // Rule ID 781 // |
| 23416 | /* 64508 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23417 | /* 64511 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23418 | /* 64515 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23419 | /* 64519 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 23420 | /* 64523 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23421 | /* 64527 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23422 | /* 64531 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23423 | /* 64535 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23424 | /* 64539 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23425 | /* 64542 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23426 | /* 64546 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 23427 | /* 64550 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 23428 | /* 64555 */ // MIs[0] src1 |
| 23429 | /* 64555 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23430 | /* 64560 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23431 | /* 64562 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23432 | /* 64569 */ // (st (rotl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL8mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 23433 | /* 64569 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 23434 | /* 64573 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 23435 | /* 64579 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 23436 | /* 64583 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8mCL), |
| 23437 | /* 64586 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23438 | /* 64590 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23439 | /* 64593 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23440 | /* 64599 */ GIR_RootConstrainSelectedInstOperands, |
| 23441 | /* 64600 */ // GIR_Coverage, 781, |
| 23442 | /* 64600 */ GIR_EraseRootFromParent_Done, |
| 23443 | /* 64601 */ // Label 1540: @64601 |
| 23444 | /* 64601 */ GIM_Try, /*On fail goto*//*Label 1541*/ GIMT_Encode4(64699), // Rule ID 813 // |
| 23445 | /* 64606 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23446 | /* 64609 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23447 | /* 64613 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23448 | /* 64617 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 23449 | /* 64621 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23450 | /* 64625 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23451 | /* 64629 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23452 | /* 64633 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23453 | /* 64637 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23454 | /* 64640 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23455 | /* 64644 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 23456 | /* 64648 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 23457 | /* 64653 */ // MIs[0] src1 |
| 23458 | /* 64653 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23459 | /* 64658 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23460 | /* 64660 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23461 | /* 64667 */ // (st (rotr:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR8mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 23462 | /* 64667 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 23463 | /* 64671 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 23464 | /* 64677 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 23465 | /* 64681 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8mCL), |
| 23466 | /* 64684 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23467 | /* 64688 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23468 | /* 64691 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23469 | /* 64697 */ GIR_RootConstrainSelectedInstOperands, |
| 23470 | /* 64698 */ // GIR_Coverage, 813, |
| 23471 | /* 64698 */ GIR_EraseRootFromParent_Done, |
| 23472 | /* 64699 */ // Label 1541: @64699 |
| 23473 | /* 64699 */ GIM_Try, /*On fail goto*//*Label 1542*/ GIMT_Encode4(64797), // Rule ID 685 // |
| 23474 | /* 64704 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23475 | /* 64707 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23476 | /* 64711 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23477 | /* 64715 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 23478 | /* 64719 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23479 | /* 64723 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23480 | /* 64727 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23481 | /* 64731 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23482 | /* 64735 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23483 | /* 64738 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23484 | /* 64742 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 23485 | /* 64746 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 23486 | /* 64751 */ // MIs[0] src1 |
| 23487 | /* 64751 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23488 | /* 64756 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23489 | /* 64758 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23490 | /* 64765 */ // (st (shl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHL8mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 23491 | /* 64765 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 23492 | /* 64769 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 23493 | /* 64775 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 23494 | /* 64779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8mCL), |
| 23495 | /* 64782 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23496 | /* 64786 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23497 | /* 64789 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23498 | /* 64795 */ GIR_RootConstrainSelectedInstOperands, |
| 23499 | /* 64796 */ // GIR_Coverage, 685, |
| 23500 | /* 64796 */ GIR_EraseRootFromParent_Done, |
| 23501 | /* 64797 */ // Label 1542: @64797 |
| 23502 | /* 64797 */ GIM_Try, /*On fail goto*//*Label 1543*/ GIMT_Encode4(64885), // Rule ID 445 // |
| 23503 | /* 64802 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23504 | /* 64805 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23505 | /* 64809 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23506 | /* 64813 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 23507 | /* 64817 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23508 | /* 64821 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23509 | /* 64825 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23510 | /* 64829 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23511 | /* 64833 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23512 | /* 64836 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23513 | /* 64840 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23514 | /* 64844 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23515 | /* 64849 */ // MIs[0] src1 |
| 23516 | /* 64849 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23517 | /* 64854 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23518 | /* 64856 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23519 | /* 64863 */ // (st (sub:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB8mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR8:{ *:[i8] }:$src2) |
| 23520 | /* 64863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8mr), |
| 23521 | /* 64866 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23522 | /* 64870 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 23523 | /* 64874 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23524 | /* 64877 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23525 | /* 64883 */ GIR_RootConstrainSelectedInstOperands, |
| 23526 | /* 64884 */ // GIR_Coverage, 445, |
| 23527 | /* 64884 */ GIR_EraseRootFromParent_Done, |
| 23528 | /* 64885 */ // Label 1543: @64885 |
| 23529 | /* 64885 */ GIM_Try, /*On fail goto*//*Label 1544*/ GIMT_Encode4(64973), // Rule ID 373 // |
| 23530 | /* 64890 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23531 | /* 64893 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23532 | /* 64897 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23533 | /* 64901 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23534 | /* 64905 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23535 | /* 64909 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23536 | /* 64913 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23537 | /* 64917 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23538 | /* 64921 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23539 | /* 64924 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23540 | /* 64928 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23541 | /* 64932 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23542 | /* 64937 */ // MIs[0] src1 |
| 23543 | /* 64937 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23544 | /* 64942 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23545 | /* 64944 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23546 | /* 64951 */ // (st (xor:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR8mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR8:{ *:[i8] }:$src2) |
| 23547 | /* 64951 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mr), |
| 23548 | /* 64954 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23549 | /* 64958 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 23550 | /* 64962 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23551 | /* 64965 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23552 | /* 64971 */ GIR_RootConstrainSelectedInstOperands, |
| 23553 | /* 64972 */ // GIR_Coverage, 373, |
| 23554 | /* 64972 */ GIR_EraseRootFromParent_Done, |
| 23555 | /* 64973 */ // Label 1544: @64973 |
| 23556 | /* 64973 */ GIM_Try, /*On fail goto*//*Label 1545*/ GIMT_Encode4(65061), // Rule ID 23210 // |
| 23557 | /* 64978 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23558 | /* 64981 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23559 | /* 64985 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23560 | /* 64989 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23561 | /* 64993 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23562 | /* 64997 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23563 | /* 65001 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23564 | /* 65006 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23565 | /* 65010 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23566 | /* 65014 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23567 | /* 65017 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23568 | /* 65021 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23569 | /* 65025 */ // MIs[0] src1 |
| 23570 | /* 65025 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23571 | /* 65030 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23572 | /* 65032 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23573 | /* 65039 */ // (st (xor:{ *:[i8] } GR8:{ *:[i8] }:$src2, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR8mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR8:{ *:[i8] }:$src2) |
| 23574 | /* 65039 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mr), |
| 23575 | /* 65042 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23576 | /* 65046 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 23577 | /* 65050 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23578 | /* 65053 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23579 | /* 65059 */ GIR_RootConstrainSelectedInstOperands, |
| 23580 | /* 65060 */ // GIR_Coverage, 23210, |
| 23581 | /* 65060 */ GIR_EraseRootFromParent_Done, |
| 23582 | /* 65061 */ // Label 1545: @65061 |
| 23583 | /* 65061 */ GIM_Try, /*On fail goto*//*Label 1546*/ GIMT_Encode4(65115), // Rule ID 24 // |
| 23584 | /* 65066 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23585 | /* 65069 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23586 | /* 65073 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23587 | /* 65077 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23588 | /* 65081 */ // MIs[1] Operand 1 |
| 23589 | /* 65081 */ // No operand predicates |
| 23590 | /* 65081 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 23591 | /* 65085 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 23592 | /* 65089 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23593 | /* 65091 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23594 | /* 65098 */ // (st (imm:{ *:[i8] })<<P:Predicate_imm_su>>:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV8mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i8] }):$src) |
| 23595 | /* 65098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8mi), |
| 23596 | /* 65101 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23597 | /* 65105 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 23598 | /* 65108 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 23599 | /* 65113 */ GIR_RootConstrainSelectedInstOperands, |
| 23600 | /* 65114 */ // GIR_Coverage, 24, |
| 23601 | /* 65114 */ GIR_EraseRootFromParent_Done, |
| 23602 | /* 65115 */ // Label 1546: @65115 |
| 23603 | /* 65115 */ GIM_Try, /*On fail goto*//*Label 1547*/ GIMT_Encode4(65168), // Rule ID 22507 // |
| 23604 | /* 65120 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23605 | /* 65123 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23606 | /* 65130 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23607 | /* 65134 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23608 | /* 65138 */ // MIs[1] Operand 1 |
| 23609 | /* 65138 */ // No operand predicates |
| 23610 | /* 65138 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 23611 | /* 65142 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23612 | /* 65144 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23613 | /* 65151 */ // (atomic_store (imm:{ *:[i8] }):$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (MOV8mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i8] }):$src) |
| 23614 | /* 65151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8mi), |
| 23615 | /* 65154 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23616 | /* 65158 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 23617 | /* 65161 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 23618 | /* 65166 */ GIR_RootConstrainSelectedInstOperands, |
| 23619 | /* 65167 */ // GIR_Coverage, 22507, |
| 23620 | /* 65167 */ GIR_EraseRootFromParent_Done, |
| 23621 | /* 65168 */ // Label 1547: @65168 |
| 23622 | /* 65168 */ GIM_Try, /*On fail goto*//*Label 1548*/ GIMT_Encode4(65213), // Rule ID 22511 // |
| 23623 | /* 65173 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23624 | /* 65176 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23625 | /* 65183 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23626 | /* 65187 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 23627 | /* 65191 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23628 | /* 65198 */ // (atomic_store GR8:{ *:[i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (MOV8mr addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23629 | /* 65198 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8mr), |
| 23630 | /* 65201 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23631 | /* 65205 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 23632 | /* 65207 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 23633 | /* 65211 */ GIR_RootConstrainSelectedInstOperands, |
| 23634 | /* 65212 */ // GIR_Coverage, 22511, |
| 23635 | /* 65212 */ GIR_EraseRootFromParent_Done, |
| 23636 | /* 65213 */ // Label 1548: @65213 |
| 23637 | /* 65213 */ GIM_Try, /*On fail goto*//*Label 1549*/ GIMT_Encode4(65255), // Rule ID 32 // |
| 23638 | /* 65218 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23639 | /* 65221 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23640 | /* 65225 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23641 | /* 65229 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 23642 | /* 65233 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23643 | /* 65240 */ // (st GR8:{ *:[i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV8mr addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23644 | /* 65240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8mr), |
| 23645 | /* 65243 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23646 | /* 65247 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 23647 | /* 65249 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 23648 | /* 65253 */ GIR_RootConstrainSelectedInstOperands, |
| 23649 | /* 65254 */ // GIR_Coverage, 32, |
| 23650 | /* 65254 */ GIR_EraseRootFromParent_Done, |
| 23651 | /* 65255 */ // Label 1549: @65255 |
| 23652 | /* 65255 */ GIM_Reject, |
| 23653 | /* 65256 */ // Label 1476: @65256 |
| 23654 | /* 65256 */ GIM_Try, /*On fail goto*//*Label 1550*/ GIMT_Encode4(65352), // Rule ID 22492 // |
| 23655 | /* 65261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 23656 | /* 65264 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23657 | /* 65267 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23658 | /* 65274 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23659 | /* 65278 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23660 | /* 65282 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23661 | /* 65286 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23662 | /* 65290 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23663 | /* 65294 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23664 | /* 65298 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23665 | /* 65301 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23666 | /* 65305 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23667 | /* 65312 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23668 | /* 65316 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 23669 | /* 65320 */ // MIs[0] dst |
| 23670 | /* 65320 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23671 | /* 65325 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23672 | /* 65327 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23673 | /* 65334 */ // (atomic_store (add:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, 1:{ *:[i16] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (INC16m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 23674 | /* 65334 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC16m), |
| 23675 | /* 65337 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23676 | /* 65341 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23677 | /* 65344 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23678 | /* 65350 */ GIR_RootConstrainSelectedInstOperands, |
| 23679 | /* 65351 */ // GIR_Coverage, 22492, |
| 23680 | /* 65351 */ GIR_EraseRootFromParent_Done, |
| 23681 | /* 65352 */ // Label 1550: @65352 |
| 23682 | /* 65352 */ GIM_Try, /*On fail goto*//*Label 1551*/ GIMT_Encode4(65448), // Rule ID 22496 // |
| 23683 | /* 65357 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 23684 | /* 65360 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23685 | /* 65363 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23686 | /* 65370 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23687 | /* 65374 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23688 | /* 65378 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23689 | /* 65382 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23690 | /* 65386 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23691 | /* 65390 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23692 | /* 65394 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23693 | /* 65397 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23694 | /* 65401 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23695 | /* 65408 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23696 | /* 65412 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 23697 | /* 65416 */ // MIs[0] dst |
| 23698 | /* 65416 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23699 | /* 65421 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23700 | /* 65423 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23701 | /* 65430 */ // (atomic_store (add:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, -1:{ *:[i16] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (DEC16m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 23702 | /* 65430 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC16m), |
| 23703 | /* 65433 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23704 | /* 65437 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23705 | /* 65440 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23706 | /* 65446 */ GIR_RootConstrainSelectedInstOperands, |
| 23707 | /* 65447 */ // GIR_Coverage, 22496, |
| 23708 | /* 65447 */ GIR_EraseRootFromParent_Done, |
| 23709 | /* 65448 */ // Label 1551: @65448 |
| 23710 | /* 65448 */ GIM_Try, /*On fail goto*//*Label 1552*/ GIMT_Encode4(65541), // Rule ID 22500 // |
| 23711 | /* 65453 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23712 | /* 65456 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23713 | /* 65463 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23714 | /* 65467 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 23715 | /* 65471 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23716 | /* 65475 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23717 | /* 65479 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 23718 | /* 65483 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23719 | /* 65487 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23720 | /* 65491 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23721 | /* 65494 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23722 | /* 65498 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23723 | /* 65505 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23724 | /* 65509 */ // MIs[0] dst |
| 23725 | /* 65509 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23726 | /* 65514 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23727 | /* 65516 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23728 | /* 65523 */ // (atomic_store (sub:{ *:[i16] } 0:{ *:[i16] }, (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (NEG16m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 23729 | /* 65523 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG16m), |
| 23730 | /* 65526 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23731 | /* 65530 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23732 | /* 65533 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23733 | /* 65539 */ GIR_RootConstrainSelectedInstOperands, |
| 23734 | /* 65540 */ // GIR_Coverage, 22500, |
| 23735 | /* 65540 */ GIR_EraseRootFromParent_Done, |
| 23736 | /* 65541 */ // Label 1552: @65541 |
| 23737 | /* 65541 */ GIM_Try, /*On fail goto*//*Label 1553*/ GIMT_Encode4(65631), // Rule ID 22504 // |
| 23738 | /* 65546 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23739 | /* 65549 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23740 | /* 65556 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23741 | /* 65560 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23742 | /* 65564 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23743 | /* 65568 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23744 | /* 65572 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23745 | /* 65576 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23746 | /* 65580 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23747 | /* 65583 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23748 | /* 65587 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23749 | /* 65594 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23750 | /* 65598 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 23751 | /* 65602 */ // MIs[0] dst |
| 23752 | /* 65602 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23753 | /* 65607 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23754 | /* 65609 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23755 | /* 65616 */ // (atomic_store (xor:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, -1:{ *:[i16] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (NOT16m addr:{ *:[iPTR] }:$dst) |
| 23756 | /* 65616 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT16m), |
| 23757 | /* 65619 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23758 | /* 65623 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23759 | /* 65629 */ GIR_RootConstrainSelectedInstOperands, |
| 23760 | /* 65630 */ // GIR_Coverage, 22504, |
| 23761 | /* 65630 */ GIR_EraseRootFromParent_Done, |
| 23762 | /* 65631 */ // Label 1553: @65631 |
| 23763 | /* 65631 */ GIM_Try, /*On fail goto*//*Label 1554*/ GIMT_Encode4(65717), // Rule ID 226 // |
| 23764 | /* 65636 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 23765 | /* 65639 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23766 | /* 65642 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23767 | /* 65646 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23768 | /* 65650 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23769 | /* 65654 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23770 | /* 65658 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23771 | /* 65662 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23772 | /* 65666 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23773 | /* 65670 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23774 | /* 65673 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23775 | /* 65677 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23776 | /* 65681 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 23777 | /* 65685 */ // MIs[0] src1 |
| 23778 | /* 65685 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23779 | /* 65690 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23780 | /* 65692 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23781 | /* 65699 */ // (st (add:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, 1:{ *:[i16] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (INC16m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 23782 | /* 65699 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC16m), |
| 23783 | /* 65702 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23784 | /* 65706 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23785 | /* 65709 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23786 | /* 65715 */ GIR_RootConstrainSelectedInstOperands, |
| 23787 | /* 65716 */ // GIR_Coverage, 226, |
| 23788 | /* 65716 */ GIR_EraseRootFromParent_Done, |
| 23789 | /* 65717 */ // Label 1554: @65717 |
| 23790 | /* 65717 */ GIM_Try, /*On fail goto*//*Label 1555*/ GIMT_Encode4(65803), // Rule ID 229 // |
| 23791 | /* 65722 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 23792 | /* 65725 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23793 | /* 65728 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23794 | /* 65732 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23795 | /* 65736 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23796 | /* 65740 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23797 | /* 65744 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23798 | /* 65748 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23799 | /* 65752 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23800 | /* 65756 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23801 | /* 65759 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23802 | /* 65763 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23803 | /* 65767 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 23804 | /* 65771 */ // MIs[0] src1 |
| 23805 | /* 65771 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23806 | /* 65776 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23807 | /* 65778 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23808 | /* 65785 */ // (st (add:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, -1:{ *:[i16] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (DEC16m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 23809 | /* 65785 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC16m), |
| 23810 | /* 65788 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23811 | /* 65792 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23812 | /* 65795 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23813 | /* 65801 */ GIR_RootConstrainSelectedInstOperands, |
| 23814 | /* 65802 */ // GIR_Coverage, 229, |
| 23815 | /* 65802 */ GIR_EraseRootFromParent_Done, |
| 23816 | /* 65803 */ // Label 1555: @65803 |
| 23817 | /* 65803 */ GIM_Try, /*On fail goto*//*Label 1556*/ GIMT_Encode4(65896), // Rule ID 22614 // |
| 23818 | /* 65808 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23819 | /* 65811 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23820 | /* 65815 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23821 | /* 65819 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23822 | /* 65823 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23823 | /* 65827 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23824 | /* 65831 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23825 | /* 65835 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23826 | /* 65839 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23827 | /* 65842 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23828 | /* 65846 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23829 | /* 65850 */ GIM_CheckConstantInt, /*MI*/1, /*Op*/2, GIMT_Encode8(128), |
| 23830 | /* 65861 */ // MIs[0] dst |
| 23831 | /* 65861 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23832 | /* 65866 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23833 | /* 65868 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23834 | /* 65875 */ // (st (add:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, 128:{ *:[i16] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB16mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, -128:{ *:[i16] }) |
| 23835 | /* 65875 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mi), |
| 23836 | /* 65878 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23837 | /* 65882 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 23838 | /* 65885 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23839 | /* 65888 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23840 | /* 65894 */ GIR_RootConstrainSelectedInstOperands, |
| 23841 | /* 65895 */ // GIR_Coverage, 22614, |
| 23842 | /* 65895 */ GIR_EraseRootFromParent_Done, |
| 23843 | /* 65896 */ // Label 1556: @65896 |
| 23844 | /* 65896 */ GIM_Try, /*On fail goto*//*Label 1557*/ GIMT_Encode4(65979), // Rule ID 17613 // |
| 23845 | /* 65901 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23846 | /* 65904 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23847 | /* 65908 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23848 | /* 65912 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 23849 | /* 65916 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23850 | /* 65920 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23851 | /* 65924 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23852 | /* 65928 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23853 | /* 65932 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23854 | /* 65935 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23855 | /* 65939 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23856 | /* 65943 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 15, |
| 23857 | /* 65947 */ // MIs[0] dst |
| 23858 | /* 65947 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23859 | /* 65952 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23860 | /* 65954 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23861 | /* 65961 */ // (st (rotl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, 15:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR16m1:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 23862 | /* 65961 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16m1), |
| 23863 | /* 65964 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23864 | /* 65968 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23865 | /* 65971 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23866 | /* 65977 */ GIR_RootConstrainSelectedInstOperands, |
| 23867 | /* 65978 */ // GIR_Coverage, 17613, |
| 23868 | /* 65978 */ GIR_EraseRootFromParent_Done, |
| 23869 | /* 65979 */ // Label 1557: @65979 |
| 23870 | /* 65979 */ GIM_Try, /*On fail goto*//*Label 1558*/ GIMT_Encode4(66062), // Rule ID 17617 // |
| 23871 | /* 65984 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23872 | /* 65987 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23873 | /* 65991 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23874 | /* 65995 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 23875 | /* 65999 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23876 | /* 66003 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23877 | /* 66007 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23878 | /* 66011 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23879 | /* 66015 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23880 | /* 66018 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23881 | /* 66022 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23882 | /* 66026 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 15, |
| 23883 | /* 66030 */ // MIs[0] dst |
| 23884 | /* 66030 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23885 | /* 66035 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23886 | /* 66037 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23887 | /* 66044 */ // (st (rotr:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, 15:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL16m1:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 23888 | /* 66044 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16m1), |
| 23889 | /* 66047 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23890 | /* 66051 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23891 | /* 66054 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23892 | /* 66060 */ GIR_RootConstrainSelectedInstOperands, |
| 23893 | /* 66061 */ // GIR_Coverage, 17617, |
| 23894 | /* 66061 */ GIR_EraseRootFromParent_Done, |
| 23895 | /* 66062 */ // Label 1558: @66062 |
| 23896 | /* 66062 */ GIM_Try, /*On fail goto*//*Label 1559*/ GIMT_Encode4(66145), // Rule ID 262 // |
| 23897 | /* 66067 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23898 | /* 66070 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23899 | /* 66074 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23900 | /* 66078 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 23901 | /* 66082 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23902 | /* 66086 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23903 | /* 66090 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 23904 | /* 66094 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23905 | /* 66098 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23906 | /* 66102 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23907 | /* 66105 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23908 | /* 66109 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23909 | /* 66113 */ // MIs[0] src1 |
| 23910 | /* 66113 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23911 | /* 66118 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23912 | /* 66120 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23913 | /* 66127 */ // (st (sub:{ *:[i16] } 0:{ *:[i16] }, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (NEG16m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 23914 | /* 66127 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG16m), |
| 23915 | /* 66130 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23916 | /* 66134 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23917 | /* 66137 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23918 | /* 66143 */ GIR_RootConstrainSelectedInstOperands, |
| 23919 | /* 66144 */ // GIR_Coverage, 262, |
| 23920 | /* 66144 */ GIR_EraseRootFromParent_Done, |
| 23921 | /* 66145 */ // Label 1559: @66145 |
| 23922 | /* 66145 */ GIM_Try, /*On fail goto*//*Label 1560*/ GIMT_Encode4(66225), // Rule ID 270 // |
| 23923 | /* 66150 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23924 | /* 66153 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23925 | /* 66157 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23926 | /* 66161 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23927 | /* 66165 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23928 | /* 66169 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23929 | /* 66173 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23930 | /* 66177 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23931 | /* 66181 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23932 | /* 66184 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23933 | /* 66188 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23934 | /* 66192 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 23935 | /* 66196 */ // MIs[0] src1 |
| 23936 | /* 66196 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23937 | /* 66201 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23938 | /* 66203 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23939 | /* 66210 */ // (st (xor:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, -1:{ *:[i16] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (NOT16m addr:{ *:[iPTR] }:$src1) |
| 23940 | /* 66210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT16m), |
| 23941 | /* 66213 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23942 | /* 66217 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23943 | /* 66223 */ GIR_RootConstrainSelectedInstOperands, |
| 23944 | /* 66224 */ // GIR_Coverage, 270, |
| 23945 | /* 66224 */ GIR_EraseRootFromParent_Done, |
| 23946 | /* 66225 */ // Label 1560: @66225 |
| 23947 | /* 66225 */ GIM_Try, /*On fail goto*//*Label 1561*/ GIMT_Encode4(66320), // Rule ID 414 // |
| 23948 | /* 66230 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23949 | /* 66233 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23950 | /* 66237 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23951 | /* 66241 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23952 | /* 66245 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23953 | /* 66249 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23954 | /* 66253 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23955 | /* 66257 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23956 | /* 66261 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23957 | /* 66264 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23958 | /* 66268 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23959 | /* 66272 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23960 | /* 66276 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23961 | /* 66280 */ // MIs[3] Operand 1 |
| 23962 | /* 66280 */ // No operand predicates |
| 23963 | /* 66280 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 23964 | /* 66284 */ // MIs[0] src1 |
| 23965 | /* 66284 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23966 | /* 66289 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23967 | /* 66291 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23968 | /* 66298 */ // (st (add:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i16] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD16mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i16] }):$src2) |
| 23969 | /* 66298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mi), |
| 23970 | /* 66301 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23971 | /* 66305 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 23972 | /* 66308 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23973 | /* 66311 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23974 | /* 66318 */ GIR_RootConstrainSelectedInstOperands, |
| 23975 | /* 66319 */ // GIR_Coverage, 414, |
| 23976 | /* 66319 */ GIR_EraseRootFromParent_Done, |
| 23977 | /* 66320 */ // Label 1561: @66320 |
| 23978 | /* 66320 */ GIM_Try, /*On fail goto*//*Label 1562*/ GIMT_Encode4(66415), // Rule ID 306 // |
| 23979 | /* 66325 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23980 | /* 66328 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23981 | /* 66332 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23982 | /* 66336 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 23983 | /* 66340 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23984 | /* 66344 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23985 | /* 66348 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23986 | /* 66352 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23987 | /* 66356 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23988 | /* 66359 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23989 | /* 66363 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23990 | /* 66367 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23991 | /* 66371 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23992 | /* 66375 */ // MIs[3] Operand 1 |
| 23993 | /* 66375 */ // No operand predicates |
| 23994 | /* 66375 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 23995 | /* 66379 */ // MIs[0] src1 |
| 23996 | /* 66379 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23997 | /* 66384 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23998 | /* 66386 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23999 | /* 66393 */ // (st (and:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i16] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND16mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i16] }):$src2) |
| 24000 | /* 66393 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mi), |
| 24001 | /* 66396 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24002 | /* 66400 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24003 | /* 66403 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24004 | /* 66406 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24005 | /* 66413 */ GIR_RootConstrainSelectedInstOperands, |
| 24006 | /* 66414 */ // GIR_Coverage, 306, |
| 24007 | /* 66414 */ GIR_EraseRootFromParent_Done, |
| 24008 | /* 66415 */ // Label 1562: @66415 |
| 24009 | /* 66415 */ GIM_Try, /*On fail goto*//*Label 1563*/ GIMT_Encode4(66510), // Rule ID 342 // |
| 24010 | /* 66420 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24011 | /* 66423 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24012 | /* 66427 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24013 | /* 66431 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 24014 | /* 66435 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24015 | /* 66439 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24016 | /* 66443 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24017 | /* 66447 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24018 | /* 66451 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24019 | /* 66454 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24020 | /* 66458 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24021 | /* 66462 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24022 | /* 66466 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24023 | /* 66470 */ // MIs[3] Operand 1 |
| 24024 | /* 66470 */ // No operand predicates |
| 24025 | /* 66470 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 24026 | /* 66474 */ // MIs[0] src1 |
| 24027 | /* 66474 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24028 | /* 66479 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24029 | /* 66481 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24030 | /* 66488 */ // (st (or:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i16] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR16mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i16] }):$src2) |
| 24031 | /* 66488 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mi), |
| 24032 | /* 66491 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24033 | /* 66495 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24034 | /* 66498 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24035 | /* 66501 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24036 | /* 66508 */ GIR_RootConstrainSelectedInstOperands, |
| 24037 | /* 66509 */ // GIR_Coverage, 342, |
| 24038 | /* 66509 */ GIR_EraseRootFromParent_Done, |
| 24039 | /* 66510 */ // Label 1563: @66510 |
| 24040 | /* 66510 */ GIM_Try, /*On fail goto*//*Label 1564*/ GIMT_Encode4(66605), // Rule ID 454 // |
| 24041 | /* 66515 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24042 | /* 66518 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24043 | /* 66522 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24044 | /* 66526 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 24045 | /* 66530 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24046 | /* 66534 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24047 | /* 66538 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24048 | /* 66542 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24049 | /* 66546 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24050 | /* 66549 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24051 | /* 66553 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24052 | /* 66557 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24053 | /* 66561 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24054 | /* 66565 */ // MIs[3] Operand 1 |
| 24055 | /* 66565 */ // No operand predicates |
| 24056 | /* 66565 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 24057 | /* 66569 */ // MIs[0] src1 |
| 24058 | /* 66569 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24059 | /* 66574 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24060 | /* 66576 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24061 | /* 66583 */ // (st (sub:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i16] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB16mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i16] }):$src2) |
| 24062 | /* 66583 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mi), |
| 24063 | /* 66586 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24064 | /* 66590 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24065 | /* 66593 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24066 | /* 66596 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24067 | /* 66603 */ GIR_RootConstrainSelectedInstOperands, |
| 24068 | /* 66604 */ // GIR_Coverage, 454, |
| 24069 | /* 66604 */ GIR_EraseRootFromParent_Done, |
| 24070 | /* 66605 */ // Label 1564: @66605 |
| 24071 | /* 66605 */ GIM_Try, /*On fail goto*//*Label 1565*/ GIMT_Encode4(66700), // Rule ID 378 // |
| 24072 | /* 66610 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24073 | /* 66613 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24074 | /* 66617 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24075 | /* 66621 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 24076 | /* 66625 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24077 | /* 66629 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24078 | /* 66633 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24079 | /* 66637 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24080 | /* 66641 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24081 | /* 66644 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24082 | /* 66648 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24083 | /* 66652 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24084 | /* 66656 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24085 | /* 66660 */ // MIs[3] Operand 1 |
| 24086 | /* 66660 */ // No operand predicates |
| 24087 | /* 66660 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 24088 | /* 66664 */ // MIs[0] src1 |
| 24089 | /* 66664 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24090 | /* 66669 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24091 | /* 66671 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24092 | /* 66678 */ // (st (xor:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i16] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR16mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i16] }):$src2) |
| 24093 | /* 66678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mi), |
| 24094 | /* 66681 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24095 | /* 66685 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24096 | /* 66688 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24097 | /* 66691 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24098 | /* 66698 */ GIR_RootConstrainSelectedInstOperands, |
| 24099 | /* 66699 */ // GIR_Coverage, 378, |
| 24100 | /* 66699 */ GIR_EraseRootFromParent_Done, |
| 24101 | /* 66700 */ // Label 1565: @66700 |
| 24102 | /* 66700 */ GIM_Try, /*On fail goto*//*Label 1566*/ GIMT_Encode4(66801), // Rule ID 22428 // |
| 24103 | /* 66705 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24104 | /* 66708 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24105 | /* 66715 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24106 | /* 66719 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24107 | /* 66723 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24108 | /* 66727 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24109 | /* 66731 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24110 | /* 66735 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24111 | /* 66739 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24112 | /* 66742 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24113 | /* 66746 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24114 | /* 66753 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24115 | /* 66757 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24116 | /* 66761 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24117 | /* 66765 */ // MIs[3] Operand 1 |
| 24118 | /* 66765 */ // No operand predicates |
| 24119 | /* 66765 */ // MIs[0] dst |
| 24120 | /* 66765 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24121 | /* 66770 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24122 | /* 66772 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24123 | /* 66779 */ // (atomic_store (add:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, (imm:{ *:[i16] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (ADD16mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i16] }):$src) |
| 24124 | /* 66779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mi), |
| 24125 | /* 66782 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24126 | /* 66786 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 24127 | /* 66789 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24128 | /* 66792 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24129 | /* 66799 */ GIR_RootConstrainSelectedInstOperands, |
| 24130 | /* 66800 */ // GIR_Coverage, 22428, |
| 24131 | /* 66800 */ GIR_EraseRootFromParent_Done, |
| 24132 | /* 66801 */ // Label 1566: @66801 |
| 24133 | /* 66801 */ GIM_Try, /*On fail goto*//*Label 1567*/ GIMT_Encode4(66902), // Rule ID 22436 // |
| 24134 | /* 66806 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24135 | /* 66809 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24136 | /* 66816 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24137 | /* 66820 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 24138 | /* 66824 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24139 | /* 66828 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24140 | /* 66832 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24141 | /* 66836 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24142 | /* 66840 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24143 | /* 66843 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24144 | /* 66847 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24145 | /* 66854 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24146 | /* 66858 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24147 | /* 66862 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24148 | /* 66866 */ // MIs[3] Operand 1 |
| 24149 | /* 66866 */ // No operand predicates |
| 24150 | /* 66866 */ // MIs[0] dst |
| 24151 | /* 66866 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24152 | /* 66871 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24153 | /* 66873 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24154 | /* 66880 */ // (atomic_store (and:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, (imm:{ *:[i16] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (AND16mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i16] }):$src) |
| 24155 | /* 66880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mi), |
| 24156 | /* 66883 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24157 | /* 66887 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 24158 | /* 66890 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24159 | /* 66893 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24160 | /* 66900 */ GIR_RootConstrainSelectedInstOperands, |
| 24161 | /* 66901 */ // GIR_Coverage, 22436, |
| 24162 | /* 66901 */ GIR_EraseRootFromParent_Done, |
| 24163 | /* 66902 */ // Label 1567: @66902 |
| 24164 | /* 66902 */ GIM_Try, /*On fail goto*//*Label 1568*/ GIMT_Encode4(67003), // Rule ID 22444 // |
| 24165 | /* 66907 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24166 | /* 66910 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24167 | /* 66917 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24168 | /* 66921 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 24169 | /* 66925 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24170 | /* 66929 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24171 | /* 66933 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24172 | /* 66937 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24173 | /* 66941 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24174 | /* 66944 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24175 | /* 66948 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24176 | /* 66955 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24177 | /* 66959 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24178 | /* 66963 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24179 | /* 66967 */ // MIs[3] Operand 1 |
| 24180 | /* 66967 */ // No operand predicates |
| 24181 | /* 66967 */ // MIs[0] dst |
| 24182 | /* 66967 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24183 | /* 66972 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24184 | /* 66974 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24185 | /* 66981 */ // (atomic_store (or:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, (imm:{ *:[i16] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (OR16mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i16] }):$src) |
| 24186 | /* 66981 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mi), |
| 24187 | /* 66984 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24188 | /* 66988 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 24189 | /* 66991 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24190 | /* 66994 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24191 | /* 67001 */ GIR_RootConstrainSelectedInstOperands, |
| 24192 | /* 67002 */ // GIR_Coverage, 22444, |
| 24193 | /* 67002 */ GIR_EraseRootFromParent_Done, |
| 24194 | /* 67003 */ // Label 1568: @67003 |
| 24195 | /* 67003 */ GIM_Try, /*On fail goto*//*Label 1569*/ GIMT_Encode4(67104), // Rule ID 22460 // |
| 24196 | /* 67008 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24197 | /* 67011 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24198 | /* 67018 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24199 | /* 67022 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 24200 | /* 67026 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24201 | /* 67030 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24202 | /* 67034 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24203 | /* 67038 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24204 | /* 67042 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24205 | /* 67045 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24206 | /* 67049 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24207 | /* 67056 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24208 | /* 67060 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24209 | /* 67064 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24210 | /* 67068 */ // MIs[3] Operand 1 |
| 24211 | /* 67068 */ // No operand predicates |
| 24212 | /* 67068 */ // MIs[0] dst |
| 24213 | /* 67068 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24214 | /* 67073 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24215 | /* 67075 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24216 | /* 67082 */ // (atomic_store (sub:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, (imm:{ *:[i16] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (SUB16mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i16] }):$src) |
| 24217 | /* 67082 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mi), |
| 24218 | /* 67085 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24219 | /* 67089 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 24220 | /* 67092 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24221 | /* 67095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24222 | /* 67102 */ GIR_RootConstrainSelectedInstOperands, |
| 24223 | /* 67103 */ // GIR_Coverage, 22460, |
| 24224 | /* 67103 */ GIR_EraseRootFromParent_Done, |
| 24225 | /* 67104 */ // Label 1569: @67104 |
| 24226 | /* 67104 */ GIM_Try, /*On fail goto*//*Label 1570*/ GIMT_Encode4(67205), // Rule ID 22452 // |
| 24227 | /* 67109 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24228 | /* 67112 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24229 | /* 67119 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24230 | /* 67123 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 24231 | /* 67127 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24232 | /* 67131 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24233 | /* 67135 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24234 | /* 67139 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24235 | /* 67143 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24236 | /* 67146 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24237 | /* 67150 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24238 | /* 67157 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24239 | /* 67161 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24240 | /* 67165 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24241 | /* 67169 */ // MIs[3] Operand 1 |
| 24242 | /* 67169 */ // No operand predicates |
| 24243 | /* 67169 */ // MIs[0] dst |
| 24244 | /* 67169 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24245 | /* 67174 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24246 | /* 67176 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24247 | /* 67183 */ // (atomic_store (xor:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, (imm:{ *:[i16] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (XOR16mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i16] }):$src) |
| 24248 | /* 67183 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mi), |
| 24249 | /* 67186 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24250 | /* 67190 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 24251 | /* 67193 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24252 | /* 67196 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24253 | /* 67203 */ GIR_RootConstrainSelectedInstOperands, |
| 24254 | /* 67204 */ // GIR_Coverage, 22452, |
| 24255 | /* 67204 */ GIR_EraseRootFromParent_Done, |
| 24256 | /* 67205 */ // Label 1570: @67205 |
| 24257 | /* 67205 */ GIM_Try, /*On fail goto*//*Label 1571*/ GIMT_Encode4(67296), // Rule ID 734 // |
| 24258 | /* 67210 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24259 | /* 67213 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24260 | /* 67217 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24261 | /* 67221 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 24262 | /* 67225 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24263 | /* 67229 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24264 | /* 67233 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24265 | /* 67237 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24266 | /* 67241 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24267 | /* 67244 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24268 | /* 67248 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24269 | /* 67252 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24270 | /* 67256 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24271 | /* 67260 */ // MIs[3] Operand 1 |
| 24272 | /* 67260 */ // No operand predicates |
| 24273 | /* 67260 */ // MIs[0] src1 |
| 24274 | /* 67260 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24275 | /* 67265 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24276 | /* 67267 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24277 | /* 67274 */ // (st (sra:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SAR16mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 24278 | /* 67274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16mi), |
| 24279 | /* 67277 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24280 | /* 67281 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24281 | /* 67284 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24282 | /* 67287 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24283 | /* 67294 */ GIR_RootConstrainSelectedInstOperands, |
| 24284 | /* 67295 */ // GIR_Coverage, 734, |
| 24285 | /* 67295 */ GIR_EraseRootFromParent_Done, |
| 24286 | /* 67296 */ // Label 1571: @67296 |
| 24287 | /* 67296 */ GIM_Try, /*On fail goto*//*Label 1572*/ GIMT_Encode4(67387), // Rule ID 702 // |
| 24288 | /* 67301 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24289 | /* 67304 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24290 | /* 67308 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24291 | /* 67312 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 24292 | /* 67316 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24293 | /* 67320 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24294 | /* 67324 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24295 | /* 67328 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24296 | /* 67332 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24297 | /* 67335 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24298 | /* 67339 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24299 | /* 67343 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24300 | /* 67347 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24301 | /* 67351 */ // MIs[3] Operand 1 |
| 24302 | /* 67351 */ // No operand predicates |
| 24303 | /* 67351 */ // MIs[0] src1 |
| 24304 | /* 67351 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24305 | /* 67356 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24306 | /* 67358 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24307 | /* 67365 */ // (st (srl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHR16mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 24308 | /* 67365 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16mi), |
| 24309 | /* 67368 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24310 | /* 67372 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24311 | /* 67375 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24312 | /* 67378 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24313 | /* 67385 */ GIR_RootConstrainSelectedInstOperands, |
| 24314 | /* 67386 */ // GIR_Coverage, 702, |
| 24315 | /* 67386 */ GIR_EraseRootFromParent_Done, |
| 24316 | /* 67387 */ // Label 1572: @67387 |
| 24317 | /* 67387 */ GIM_Try, /*On fail goto*//*Label 1573*/ GIMT_Encode4(67478), // Rule ID 766 // |
| 24318 | /* 67392 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24319 | /* 67395 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24320 | /* 67399 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24321 | /* 67403 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 24322 | /* 67407 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24323 | /* 67411 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24324 | /* 67415 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24325 | /* 67419 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24326 | /* 67423 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24327 | /* 67426 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24328 | /* 67430 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24329 | /* 67434 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24330 | /* 67438 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24331 | /* 67442 */ // MIs[3] Operand 1 |
| 24332 | /* 67442 */ // No operand predicates |
| 24333 | /* 67442 */ // MIs[0] src1 |
| 24334 | /* 67442 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24335 | /* 67447 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24336 | /* 67449 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24337 | /* 67456 */ // (st (rotl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL16mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 24338 | /* 67456 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16mi), |
| 24339 | /* 67459 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24340 | /* 67463 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24341 | /* 67466 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24342 | /* 67469 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24343 | /* 67476 */ GIR_RootConstrainSelectedInstOperands, |
| 24344 | /* 67477 */ // GIR_Coverage, 766, |
| 24345 | /* 67477 */ GIR_EraseRootFromParent_Done, |
| 24346 | /* 67478 */ // Label 1573: @67478 |
| 24347 | /* 67478 */ GIM_Try, /*On fail goto*//*Label 1574*/ GIMT_Encode4(67569), // Rule ID 798 // |
| 24348 | /* 67483 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24349 | /* 67486 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24350 | /* 67490 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24351 | /* 67494 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 24352 | /* 67498 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24353 | /* 67502 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24354 | /* 67506 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24355 | /* 67510 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24356 | /* 67514 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24357 | /* 67517 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24358 | /* 67521 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24359 | /* 67525 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24360 | /* 67529 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24361 | /* 67533 */ // MIs[3] Operand 1 |
| 24362 | /* 67533 */ // No operand predicates |
| 24363 | /* 67533 */ // MIs[0] src1 |
| 24364 | /* 67533 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24365 | /* 67538 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24366 | /* 67540 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24367 | /* 67547 */ // (st (rotr:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR16mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 24368 | /* 67547 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16mi), |
| 24369 | /* 67550 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24370 | /* 67554 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24371 | /* 67557 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24372 | /* 67560 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24373 | /* 67567 */ GIR_RootConstrainSelectedInstOperands, |
| 24374 | /* 67568 */ // GIR_Coverage, 798, |
| 24375 | /* 67568 */ GIR_EraseRootFromParent_Done, |
| 24376 | /* 67569 */ // Label 1574: @67569 |
| 24377 | /* 67569 */ GIM_Try, /*On fail goto*//*Label 1575*/ GIMT_Encode4(67660), // Rule ID 670 // |
| 24378 | /* 67574 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24379 | /* 67577 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24380 | /* 67581 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24381 | /* 67585 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 24382 | /* 67589 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24383 | /* 67593 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24384 | /* 67597 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24385 | /* 67601 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24386 | /* 67605 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24387 | /* 67608 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24388 | /* 67612 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24389 | /* 67616 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24390 | /* 67620 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24391 | /* 67624 */ // MIs[3] Operand 1 |
| 24392 | /* 67624 */ // No operand predicates |
| 24393 | /* 67624 */ // MIs[0] src1 |
| 24394 | /* 67624 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24395 | /* 67629 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24396 | /* 67631 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24397 | /* 67638 */ // (st (shl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHL16mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 24398 | /* 67638 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16mi), |
| 24399 | /* 67641 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24400 | /* 67645 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24401 | /* 67648 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24402 | /* 67651 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24403 | /* 67658 */ GIR_RootConstrainSelectedInstOperands, |
| 24404 | /* 67659 */ // GIR_Coverage, 670, |
| 24405 | /* 67659 */ GIR_EraseRootFromParent_Done, |
| 24406 | /* 67660 */ // Label 1575: @67660 |
| 24407 | /* 67660 */ GIM_Try, /*On fail goto*//*Label 1576*/ GIMT_Encode4(67758), // Rule ID 22432 // |
| 24408 | /* 67665 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24409 | /* 67668 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24410 | /* 67675 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24411 | /* 67679 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24412 | /* 67683 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24413 | /* 67687 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24414 | /* 67691 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24415 | /* 67695 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24416 | /* 67699 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24417 | /* 67702 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24418 | /* 67706 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24419 | /* 67713 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24420 | /* 67717 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24421 | /* 67722 */ // MIs[0] dst |
| 24422 | /* 67722 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24423 | /* 67727 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24424 | /* 67729 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24425 | /* 67736 */ // (atomic_store (add:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, GR16:{ *:[i16] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (ADD16mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24426 | /* 67736 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mr), |
| 24427 | /* 67739 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24428 | /* 67743 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 24429 | /* 67747 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24430 | /* 67750 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24431 | /* 67756 */ GIR_RootConstrainSelectedInstOperands, |
| 24432 | /* 67757 */ // GIR_Coverage, 22432, |
| 24433 | /* 67757 */ GIR_EraseRootFromParent_Done, |
| 24434 | /* 67758 */ // Label 1576: @67758 |
| 24435 | /* 67758 */ GIM_Try, /*On fail goto*//*Label 1577*/ GIMT_Encode4(67856), // Rule ID 26003 // |
| 24436 | /* 67763 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24437 | /* 67766 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24438 | /* 67773 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24439 | /* 67777 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24440 | /* 67781 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24441 | /* 67785 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24442 | /* 67789 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24443 | /* 67794 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24444 | /* 67798 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24445 | /* 67802 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24446 | /* 67805 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24447 | /* 67809 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24448 | /* 67816 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24449 | /* 67820 */ // MIs[0] dst |
| 24450 | /* 67820 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24451 | /* 67825 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24452 | /* 67827 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24453 | /* 67834 */ // (atomic_store (add:{ *:[i16] } GR16:{ *:[i16] }:$src, (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (ADD16mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24454 | /* 67834 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mr), |
| 24455 | /* 67837 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24456 | /* 67841 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 24457 | /* 67845 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24458 | /* 67848 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24459 | /* 67854 */ GIR_RootConstrainSelectedInstOperands, |
| 24460 | /* 67855 */ // GIR_Coverage, 26003, |
| 24461 | /* 67855 */ GIR_EraseRootFromParent_Done, |
| 24462 | /* 67856 */ // Label 1577: @67856 |
| 24463 | /* 67856 */ GIM_Try, /*On fail goto*//*Label 1578*/ GIMT_Encode4(67954), // Rule ID 22440 // |
| 24464 | /* 67861 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24465 | /* 67864 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24466 | /* 67871 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24467 | /* 67875 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 24468 | /* 67879 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24469 | /* 67883 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24470 | /* 67887 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24471 | /* 67891 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24472 | /* 67895 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24473 | /* 67898 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24474 | /* 67902 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24475 | /* 67909 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24476 | /* 67913 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24477 | /* 67918 */ // MIs[0] dst |
| 24478 | /* 67918 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24479 | /* 67923 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24480 | /* 67925 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24481 | /* 67932 */ // (atomic_store (and:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, GR16:{ *:[i16] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (AND16mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24482 | /* 67932 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mr), |
| 24483 | /* 67935 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24484 | /* 67939 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 24485 | /* 67943 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24486 | /* 67946 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24487 | /* 67952 */ GIR_RootConstrainSelectedInstOperands, |
| 24488 | /* 67953 */ // GIR_Coverage, 22440, |
| 24489 | /* 67953 */ GIR_EraseRootFromParent_Done, |
| 24490 | /* 67954 */ // Label 1578: @67954 |
| 24491 | /* 67954 */ GIM_Try, /*On fail goto*//*Label 1579*/ GIMT_Encode4(68052), // Rule ID 26007 // |
| 24492 | /* 67959 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24493 | /* 67962 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24494 | /* 67969 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24495 | /* 67973 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 24496 | /* 67977 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24497 | /* 67981 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24498 | /* 67985 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24499 | /* 67990 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24500 | /* 67994 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24501 | /* 67998 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24502 | /* 68001 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24503 | /* 68005 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24504 | /* 68012 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24505 | /* 68016 */ // MIs[0] dst |
| 24506 | /* 68016 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24507 | /* 68021 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24508 | /* 68023 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24509 | /* 68030 */ // (atomic_store (and:{ *:[i16] } GR16:{ *:[i16] }:$src, (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (AND16mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24510 | /* 68030 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mr), |
| 24511 | /* 68033 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24512 | /* 68037 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 24513 | /* 68041 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24514 | /* 68044 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24515 | /* 68050 */ GIR_RootConstrainSelectedInstOperands, |
| 24516 | /* 68051 */ // GIR_Coverage, 26007, |
| 24517 | /* 68051 */ GIR_EraseRootFromParent_Done, |
| 24518 | /* 68052 */ // Label 1579: @68052 |
| 24519 | /* 68052 */ GIM_Try, /*On fail goto*//*Label 1580*/ GIMT_Encode4(68150), // Rule ID 22448 // |
| 24520 | /* 68057 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24521 | /* 68060 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24522 | /* 68067 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24523 | /* 68071 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 24524 | /* 68075 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24525 | /* 68079 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24526 | /* 68083 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24527 | /* 68087 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24528 | /* 68091 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24529 | /* 68094 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24530 | /* 68098 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24531 | /* 68105 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24532 | /* 68109 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24533 | /* 68114 */ // MIs[0] dst |
| 24534 | /* 68114 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24535 | /* 68119 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24536 | /* 68121 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24537 | /* 68128 */ // (atomic_store (or:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, GR16:{ *:[i16] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (OR16mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24538 | /* 68128 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mr), |
| 24539 | /* 68131 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24540 | /* 68135 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 24541 | /* 68139 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24542 | /* 68142 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24543 | /* 68148 */ GIR_RootConstrainSelectedInstOperands, |
| 24544 | /* 68149 */ // GIR_Coverage, 22448, |
| 24545 | /* 68149 */ GIR_EraseRootFromParent_Done, |
| 24546 | /* 68150 */ // Label 1580: @68150 |
| 24547 | /* 68150 */ GIM_Try, /*On fail goto*//*Label 1581*/ GIMT_Encode4(68248), // Rule ID 26011 // |
| 24548 | /* 68155 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24549 | /* 68158 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24550 | /* 68165 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24551 | /* 68169 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 24552 | /* 68173 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24553 | /* 68177 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24554 | /* 68181 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24555 | /* 68186 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24556 | /* 68190 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24557 | /* 68194 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24558 | /* 68197 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24559 | /* 68201 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24560 | /* 68208 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24561 | /* 68212 */ // MIs[0] dst |
| 24562 | /* 68212 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24563 | /* 68217 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24564 | /* 68219 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24565 | /* 68226 */ // (atomic_store (or:{ *:[i16] } GR16:{ *:[i16] }:$src, (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (OR16mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24566 | /* 68226 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mr), |
| 24567 | /* 68229 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24568 | /* 68233 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 24569 | /* 68237 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24570 | /* 68240 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24571 | /* 68246 */ GIR_RootConstrainSelectedInstOperands, |
| 24572 | /* 68247 */ // GIR_Coverage, 26011, |
| 24573 | /* 68247 */ GIR_EraseRootFromParent_Done, |
| 24574 | /* 68248 */ // Label 1581: @68248 |
| 24575 | /* 68248 */ GIM_Try, /*On fail goto*//*Label 1582*/ GIMT_Encode4(68346), // Rule ID 22464 // |
| 24576 | /* 68253 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24577 | /* 68256 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24578 | /* 68263 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24579 | /* 68267 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 24580 | /* 68271 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24581 | /* 68275 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24582 | /* 68279 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24583 | /* 68283 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24584 | /* 68287 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24585 | /* 68290 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24586 | /* 68294 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24587 | /* 68301 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24588 | /* 68305 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24589 | /* 68310 */ // MIs[0] dst |
| 24590 | /* 68310 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24591 | /* 68315 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24592 | /* 68317 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24593 | /* 68324 */ // (atomic_store (sub:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, GR16:{ *:[i16] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (SUB16mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24594 | /* 68324 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mr), |
| 24595 | /* 68327 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24596 | /* 68331 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 24597 | /* 68335 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24598 | /* 68338 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24599 | /* 68344 */ GIR_RootConstrainSelectedInstOperands, |
| 24600 | /* 68345 */ // GIR_Coverage, 22464, |
| 24601 | /* 68345 */ GIR_EraseRootFromParent_Done, |
| 24602 | /* 68346 */ // Label 1582: @68346 |
| 24603 | /* 68346 */ GIM_Try, /*On fail goto*//*Label 1583*/ GIMT_Encode4(68444), // Rule ID 22456 // |
| 24604 | /* 68351 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24605 | /* 68354 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24606 | /* 68361 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24607 | /* 68365 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 24608 | /* 68369 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24609 | /* 68373 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24610 | /* 68377 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24611 | /* 68381 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24612 | /* 68385 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24613 | /* 68388 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24614 | /* 68392 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24615 | /* 68399 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24616 | /* 68403 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24617 | /* 68408 */ // MIs[0] dst |
| 24618 | /* 68408 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24619 | /* 68413 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24620 | /* 68415 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24621 | /* 68422 */ // (atomic_store (xor:{ *:[i16] } (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>, GR16:{ *:[i16] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (XOR16mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24622 | /* 68422 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mr), |
| 24623 | /* 68425 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24624 | /* 68429 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 24625 | /* 68433 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24626 | /* 68436 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24627 | /* 68442 */ GIR_RootConstrainSelectedInstOperands, |
| 24628 | /* 68443 */ // GIR_Coverage, 22456, |
| 24629 | /* 68443 */ GIR_EraseRootFromParent_Done, |
| 24630 | /* 68444 */ // Label 1583: @68444 |
| 24631 | /* 68444 */ GIM_Try, /*On fail goto*//*Label 1584*/ GIMT_Encode4(68542), // Rule ID 26015 // |
| 24632 | /* 68449 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24633 | /* 68452 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24634 | /* 68459 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24635 | /* 68463 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 24636 | /* 68467 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24637 | /* 68471 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24638 | /* 68475 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24639 | /* 68480 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24640 | /* 68484 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24641 | /* 68488 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24642 | /* 68491 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24643 | /* 68495 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24644 | /* 68502 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24645 | /* 68506 */ // MIs[0] dst |
| 24646 | /* 68506 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24647 | /* 68511 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24648 | /* 68513 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24649 | /* 68520 */ // (atomic_store (xor:{ *:[i16] } GR16:{ *:[i16] }:$src, (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (XOR16mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24650 | /* 68520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mr), |
| 24651 | /* 68523 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24652 | /* 68527 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 24653 | /* 68531 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24654 | /* 68534 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24655 | /* 68540 */ GIR_RootConstrainSelectedInstOperands, |
| 24656 | /* 68541 */ // GIR_Coverage, 26015, |
| 24657 | /* 68541 */ GIR_EraseRootFromParent_Done, |
| 24658 | /* 68542 */ // Label 1584: @68542 |
| 24659 | /* 68542 */ GIM_Try, /*On fail goto*//*Label 1585*/ GIMT_Encode4(68630), // Rule ID 410 // |
| 24660 | /* 68547 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24661 | /* 68550 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24662 | /* 68554 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24663 | /* 68558 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24664 | /* 68562 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24665 | /* 68566 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24666 | /* 68570 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24667 | /* 68574 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24668 | /* 68578 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24669 | /* 68581 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24670 | /* 68585 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24671 | /* 68589 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24672 | /* 68594 */ // MIs[0] src1 |
| 24673 | /* 68594 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24674 | /* 68599 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24675 | /* 68601 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24676 | /* 68608 */ // (st (add:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:{ *:[i16] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD16mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR16:{ *:[i16] }:$src2) |
| 24677 | /* 68608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mr), |
| 24678 | /* 68611 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24679 | /* 68615 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 24680 | /* 68619 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24681 | /* 68622 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24682 | /* 68628 */ GIR_RootConstrainSelectedInstOperands, |
| 24683 | /* 68629 */ // GIR_Coverage, 410, |
| 24684 | /* 68629 */ GIR_EraseRootFromParent_Done, |
| 24685 | /* 68630 */ // Label 1585: @68630 |
| 24686 | /* 68630 */ GIM_Try, /*On fail goto*//*Label 1586*/ GIMT_Encode4(68718), // Rule ID 23223 // |
| 24687 | /* 68635 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24688 | /* 68638 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24689 | /* 68642 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24690 | /* 68646 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24691 | /* 68650 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24692 | /* 68654 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24693 | /* 68658 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24694 | /* 68663 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24695 | /* 68667 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24696 | /* 68671 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24697 | /* 68674 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24698 | /* 68678 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24699 | /* 68682 */ // MIs[0] src1 |
| 24700 | /* 68682 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24701 | /* 68687 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24702 | /* 68689 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24703 | /* 68696 */ // (st (add:{ *:[i16] } GR16:{ *:[i16] }:$src2, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD16mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR16:{ *:[i16] }:$src2) |
| 24704 | /* 68696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mr), |
| 24705 | /* 68699 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24706 | /* 68703 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 24707 | /* 68707 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24708 | /* 68710 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24709 | /* 68716 */ GIR_RootConstrainSelectedInstOperands, |
| 24710 | /* 68717 */ // GIR_Coverage, 23223, |
| 24711 | /* 68717 */ GIR_EraseRootFromParent_Done, |
| 24712 | /* 68718 */ // Label 1586: @68718 |
| 24713 | /* 68718 */ GIM_Try, /*On fail goto*//*Label 1587*/ GIMT_Encode4(68806), // Rule ID 302 // |
| 24714 | /* 68723 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24715 | /* 68726 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24716 | /* 68730 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24717 | /* 68734 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 24718 | /* 68738 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24719 | /* 68742 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24720 | /* 68746 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24721 | /* 68750 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24722 | /* 68754 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24723 | /* 68757 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24724 | /* 68761 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24725 | /* 68765 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24726 | /* 68770 */ // MIs[0] src1 |
| 24727 | /* 68770 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24728 | /* 68775 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24729 | /* 68777 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24730 | /* 68784 */ // (st (and:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:{ *:[i16] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND16mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR16:{ *:[i16] }:$src2) |
| 24731 | /* 68784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mr), |
| 24732 | /* 68787 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24733 | /* 68791 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 24734 | /* 68795 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24735 | /* 68798 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24736 | /* 68804 */ GIR_RootConstrainSelectedInstOperands, |
| 24737 | /* 68805 */ // GIR_Coverage, 302, |
| 24738 | /* 68805 */ GIR_EraseRootFromParent_Done, |
| 24739 | /* 68806 */ // Label 1587: @68806 |
| 24740 | /* 68806 */ GIM_Try, /*On fail goto*//*Label 1588*/ GIMT_Encode4(68894), // Rule ID 23187 // |
| 24741 | /* 68811 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24742 | /* 68814 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24743 | /* 68818 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24744 | /* 68822 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 24745 | /* 68826 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24746 | /* 68830 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24747 | /* 68834 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24748 | /* 68839 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24749 | /* 68843 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24750 | /* 68847 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24751 | /* 68850 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24752 | /* 68854 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24753 | /* 68858 */ // MIs[0] src1 |
| 24754 | /* 68858 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24755 | /* 68863 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24756 | /* 68865 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24757 | /* 68872 */ // (st (and:{ *:[i16] } GR16:{ *:[i16] }:$src2, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND16mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR16:{ *:[i16] }:$src2) |
| 24758 | /* 68872 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mr), |
| 24759 | /* 68875 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24760 | /* 68879 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 24761 | /* 68883 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24762 | /* 68886 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24763 | /* 68892 */ GIR_RootConstrainSelectedInstOperands, |
| 24764 | /* 68893 */ // GIR_Coverage, 23187, |
| 24765 | /* 68893 */ GIR_EraseRootFromParent_Done, |
| 24766 | /* 68894 */ // Label 1588: @68894 |
| 24767 | /* 68894 */ GIM_Try, /*On fail goto*//*Label 1589*/ GIMT_Encode4(68992), // Rule ID 750 // |
| 24768 | /* 68899 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24769 | /* 68902 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24770 | /* 68906 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24771 | /* 68910 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 24772 | /* 68914 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24773 | /* 68918 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24774 | /* 68922 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24775 | /* 68926 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24776 | /* 68930 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24777 | /* 68933 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24778 | /* 68937 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24779 | /* 68941 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 24780 | /* 68946 */ // MIs[0] src1 |
| 24781 | /* 68946 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24782 | /* 68951 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24783 | /* 68953 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24784 | /* 68960 */ // (st (sra:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SAR16mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 24785 | /* 68960 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24786 | /* 68964 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 24787 | /* 68970 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 24788 | /* 68974 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16mCL), |
| 24789 | /* 68977 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24790 | /* 68981 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24791 | /* 68984 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24792 | /* 68990 */ GIR_RootConstrainSelectedInstOperands, |
| 24793 | /* 68991 */ // GIR_Coverage, 750, |
| 24794 | /* 68991 */ GIR_EraseRootFromParent_Done, |
| 24795 | /* 68992 */ // Label 1589: @68992 |
| 24796 | /* 68992 */ GIM_Try, /*On fail goto*//*Label 1590*/ GIMT_Encode4(69090), // Rule ID 718 // |
| 24797 | /* 68997 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24798 | /* 69000 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24799 | /* 69004 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24800 | /* 69008 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 24801 | /* 69012 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24802 | /* 69016 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24803 | /* 69020 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24804 | /* 69024 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24805 | /* 69028 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24806 | /* 69031 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24807 | /* 69035 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24808 | /* 69039 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 24809 | /* 69044 */ // MIs[0] src1 |
| 24810 | /* 69044 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24811 | /* 69049 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24812 | /* 69051 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24813 | /* 69058 */ // (st (srl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHR16mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 24814 | /* 69058 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24815 | /* 69062 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 24816 | /* 69068 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 24817 | /* 69072 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16mCL), |
| 24818 | /* 69075 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24819 | /* 69079 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24820 | /* 69082 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24821 | /* 69088 */ GIR_RootConstrainSelectedInstOperands, |
| 24822 | /* 69089 */ // GIR_Coverage, 718, |
| 24823 | /* 69089 */ GIR_EraseRootFromParent_Done, |
| 24824 | /* 69090 */ // Label 1590: @69090 |
| 24825 | /* 69090 */ GIM_Try, /*On fail goto*//*Label 1591*/ GIMT_Encode4(69178), // Rule ID 338 // |
| 24826 | /* 69095 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24827 | /* 69098 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24828 | /* 69102 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24829 | /* 69106 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 24830 | /* 69110 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24831 | /* 69114 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24832 | /* 69118 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24833 | /* 69122 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24834 | /* 69126 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24835 | /* 69129 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24836 | /* 69133 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24837 | /* 69137 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24838 | /* 69142 */ // MIs[0] src1 |
| 24839 | /* 69142 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24840 | /* 69147 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24841 | /* 69149 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24842 | /* 69156 */ // (st (or:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:{ *:[i16] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR16mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR16:{ *:[i16] }:$src2) |
| 24843 | /* 69156 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mr), |
| 24844 | /* 69159 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24845 | /* 69163 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 24846 | /* 69167 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24847 | /* 69170 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24848 | /* 69176 */ GIR_RootConstrainSelectedInstOperands, |
| 24849 | /* 69177 */ // GIR_Coverage, 338, |
| 24850 | /* 69177 */ GIR_EraseRootFromParent_Done, |
| 24851 | /* 69178 */ // Label 1591: @69178 |
| 24852 | /* 69178 */ GIM_Try, /*On fail goto*//*Label 1592*/ GIMT_Encode4(69266), // Rule ID 23199 // |
| 24853 | /* 69183 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24854 | /* 69186 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24855 | /* 69190 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24856 | /* 69194 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 24857 | /* 69198 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24858 | /* 69202 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24859 | /* 69206 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24860 | /* 69211 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24861 | /* 69215 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24862 | /* 69219 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24863 | /* 69222 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24864 | /* 69226 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24865 | /* 69230 */ // MIs[0] src1 |
| 24866 | /* 69230 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24867 | /* 69235 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24868 | /* 69237 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24869 | /* 69244 */ // (st (or:{ *:[i16] } GR16:{ *:[i16] }:$src2, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR16mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR16:{ *:[i16] }:$src2) |
| 24870 | /* 69244 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mr), |
| 24871 | /* 69247 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24872 | /* 69251 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 24873 | /* 69255 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24874 | /* 69258 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24875 | /* 69264 */ GIR_RootConstrainSelectedInstOperands, |
| 24876 | /* 69265 */ // GIR_Coverage, 23199, |
| 24877 | /* 69265 */ GIR_EraseRootFromParent_Done, |
| 24878 | /* 69266 */ // Label 1592: @69266 |
| 24879 | /* 69266 */ GIM_Try, /*On fail goto*//*Label 1593*/ GIMT_Encode4(69364), // Rule ID 782 // |
| 24880 | /* 69271 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24881 | /* 69274 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24882 | /* 69278 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24883 | /* 69282 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 24884 | /* 69286 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24885 | /* 69290 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24886 | /* 69294 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24887 | /* 69298 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24888 | /* 69302 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24889 | /* 69305 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24890 | /* 69309 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24891 | /* 69313 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 24892 | /* 69318 */ // MIs[0] src1 |
| 24893 | /* 69318 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24894 | /* 69323 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24895 | /* 69325 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24896 | /* 69332 */ // (st (rotl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL16mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 24897 | /* 69332 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24898 | /* 69336 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 24899 | /* 69342 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 24900 | /* 69346 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16mCL), |
| 24901 | /* 69349 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24902 | /* 69353 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24903 | /* 69356 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24904 | /* 69362 */ GIR_RootConstrainSelectedInstOperands, |
| 24905 | /* 69363 */ // GIR_Coverage, 782, |
| 24906 | /* 69363 */ GIR_EraseRootFromParent_Done, |
| 24907 | /* 69364 */ // Label 1593: @69364 |
| 24908 | /* 69364 */ GIM_Try, /*On fail goto*//*Label 1594*/ GIMT_Encode4(69462), // Rule ID 814 // |
| 24909 | /* 69369 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24910 | /* 69372 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24911 | /* 69376 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24912 | /* 69380 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 24913 | /* 69384 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24914 | /* 69388 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24915 | /* 69392 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24916 | /* 69396 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24917 | /* 69400 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24918 | /* 69403 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24919 | /* 69407 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24920 | /* 69411 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 24921 | /* 69416 */ // MIs[0] src1 |
| 24922 | /* 69416 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24923 | /* 69421 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24924 | /* 69423 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24925 | /* 69430 */ // (st (rotr:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR16mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 24926 | /* 69430 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24927 | /* 69434 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 24928 | /* 69440 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 24929 | /* 69444 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16mCL), |
| 24930 | /* 69447 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24931 | /* 69451 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24932 | /* 69454 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24933 | /* 69460 */ GIR_RootConstrainSelectedInstOperands, |
| 24934 | /* 69461 */ // GIR_Coverage, 814, |
| 24935 | /* 69461 */ GIR_EraseRootFromParent_Done, |
| 24936 | /* 69462 */ // Label 1594: @69462 |
| 24937 | /* 69462 */ GIM_Try, /*On fail goto*//*Label 1595*/ GIMT_Encode4(69560), // Rule ID 686 // |
| 24938 | /* 69467 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24939 | /* 69470 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24940 | /* 69474 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24941 | /* 69478 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 24942 | /* 69482 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24943 | /* 69486 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24944 | /* 69490 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24945 | /* 69494 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24946 | /* 69498 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24947 | /* 69501 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24948 | /* 69505 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24949 | /* 69509 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 24950 | /* 69514 */ // MIs[0] src1 |
| 24951 | /* 69514 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24952 | /* 69519 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24953 | /* 69521 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24954 | /* 69528 */ // (st (shl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHL16mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 24955 | /* 69528 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24956 | /* 69532 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 24957 | /* 69538 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 24958 | /* 69542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16mCL), |
| 24959 | /* 69545 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24960 | /* 69549 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24961 | /* 69552 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24962 | /* 69558 */ GIR_RootConstrainSelectedInstOperands, |
| 24963 | /* 69559 */ // GIR_Coverage, 686, |
| 24964 | /* 69559 */ GIR_EraseRootFromParent_Done, |
| 24965 | /* 69560 */ // Label 1595: @69560 |
| 24966 | /* 69560 */ GIM_Try, /*On fail goto*//*Label 1596*/ GIMT_Encode4(69648), // Rule ID 446 // |
| 24967 | /* 69565 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24968 | /* 69568 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24969 | /* 69572 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24970 | /* 69576 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 24971 | /* 69580 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24972 | /* 69584 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24973 | /* 69588 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24974 | /* 69592 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24975 | /* 69596 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24976 | /* 69599 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24977 | /* 69603 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24978 | /* 69607 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24979 | /* 69612 */ // MIs[0] src1 |
| 24980 | /* 69612 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24981 | /* 69617 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24982 | /* 69619 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24983 | /* 69626 */ // (st (sub:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:{ *:[i16] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB16mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR16:{ *:[i16] }:$src2) |
| 24984 | /* 69626 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mr), |
| 24985 | /* 69629 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24986 | /* 69633 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 24987 | /* 69637 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24988 | /* 69640 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24989 | /* 69646 */ GIR_RootConstrainSelectedInstOperands, |
| 24990 | /* 69647 */ // GIR_Coverage, 446, |
| 24991 | /* 69647 */ GIR_EraseRootFromParent_Done, |
| 24992 | /* 69648 */ // Label 1596: @69648 |
| 24993 | /* 69648 */ GIM_Try, /*On fail goto*//*Label 1597*/ GIMT_Encode4(69736), // Rule ID 374 // |
| 24994 | /* 69653 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24995 | /* 69656 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24996 | /* 69660 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24997 | /* 69664 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 24998 | /* 69668 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24999 | /* 69672 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 25000 | /* 69676 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25001 | /* 69680 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25002 | /* 69684 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25003 | /* 69687 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25004 | /* 69691 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25005 | /* 69695 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 25006 | /* 69700 */ // MIs[0] src1 |
| 25007 | /* 69700 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25008 | /* 69705 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25009 | /* 69707 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25010 | /* 69714 */ // (st (xor:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:{ *:[i16] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR16mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR16:{ *:[i16] }:$src2) |
| 25011 | /* 69714 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mr), |
| 25012 | /* 69717 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25013 | /* 69721 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 25014 | /* 69725 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25015 | /* 69728 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25016 | /* 69734 */ GIR_RootConstrainSelectedInstOperands, |
| 25017 | /* 69735 */ // GIR_Coverage, 374, |
| 25018 | /* 69735 */ GIR_EraseRootFromParent_Done, |
| 25019 | /* 69736 */ // Label 1597: @69736 |
| 25020 | /* 69736 */ GIM_Try, /*On fail goto*//*Label 1598*/ GIMT_Encode4(69824), // Rule ID 23211 // |
| 25021 | /* 69741 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25022 | /* 69744 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25023 | /* 69748 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25024 | /* 69752 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25025 | /* 69756 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 25026 | /* 69760 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 25027 | /* 69764 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 25028 | /* 69769 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25029 | /* 69773 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25030 | /* 69777 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25031 | /* 69780 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25032 | /* 69784 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25033 | /* 69788 */ // MIs[0] src1 |
| 25034 | /* 69788 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25035 | /* 69793 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25036 | /* 69795 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25037 | /* 69802 */ // (st (xor:{ *:[i16] } GR16:{ *:[i16] }:$src2, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR16mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR16:{ *:[i16] }:$src2) |
| 25038 | /* 69802 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mr), |
| 25039 | /* 69805 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25040 | /* 69809 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 25041 | /* 69813 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25042 | /* 69816 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25043 | /* 69822 */ GIR_RootConstrainSelectedInstOperands, |
| 25044 | /* 69823 */ // GIR_Coverage, 23211, |
| 25045 | /* 69823 */ GIR_EraseRootFromParent_Done, |
| 25046 | /* 69824 */ // Label 1598: @69824 |
| 25047 | /* 69824 */ GIM_Try, /*On fail goto*//*Label 1599*/ GIMT_Encode4(69878), // Rule ID 25 // |
| 25048 | /* 69829 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25049 | /* 69832 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25050 | /* 69836 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25051 | /* 69840 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25052 | /* 69844 */ // MIs[1] Operand 1 |
| 25053 | /* 69844 */ // No operand predicates |
| 25054 | /* 69844 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25055 | /* 69848 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25056 | /* 69852 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 25057 | /* 69854 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25058 | /* 69861 */ // (st (imm:{ *:[i16] })<<P:Predicate_imm_su>>:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV16mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i16] }):$src) |
| 25059 | /* 69861 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16mi), |
| 25060 | /* 69864 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25061 | /* 69868 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 25062 | /* 69871 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 25063 | /* 69876 */ GIR_RootConstrainSelectedInstOperands, |
| 25064 | /* 69877 */ // GIR_Coverage, 25, |
| 25065 | /* 69877 */ GIR_EraseRootFromParent_Done, |
| 25066 | /* 69878 */ // Label 1599: @69878 |
| 25067 | /* 69878 */ GIM_Try, /*On fail goto*//*Label 1600*/ GIMT_Encode4(69931), // Rule ID 22508 // |
| 25068 | /* 69883 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25069 | /* 69886 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 25070 | /* 69893 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25071 | /* 69897 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25072 | /* 69901 */ // MIs[1] Operand 1 |
| 25073 | /* 69901 */ // No operand predicates |
| 25074 | /* 69901 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25075 | /* 69905 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 25076 | /* 69907 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25077 | /* 69914 */ // (atomic_store (imm:{ *:[i16] }):$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (MOV16mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i16] }):$src) |
| 25078 | /* 69914 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16mi), |
| 25079 | /* 69917 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25080 | /* 69921 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 25081 | /* 69924 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 25082 | /* 69929 */ GIR_RootConstrainSelectedInstOperands, |
| 25083 | /* 69930 */ // GIR_Coverage, 22508, |
| 25084 | /* 69930 */ GIR_EraseRootFromParent_Done, |
| 25085 | /* 69931 */ // Label 1600: @69931 |
| 25086 | /* 69931 */ GIM_Try, /*On fail goto*//*Label 1601*/ GIMT_Encode4(69994), // Rule ID 50 // |
| 25087 | /* 69936 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 25088 | /* 69939 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25089 | /* 69942 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25090 | /* 69946 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25091 | /* 69950 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 25092 | /* 69954 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 25093 | /* 69958 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 25094 | /* 69963 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25095 | /* 69967 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 25096 | /* 69969 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25097 | /* 69976 */ // (st (bswap:{ *:[i16] } GR16:{ *:[i16] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE16mr addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src1) |
| 25098 | /* 69976 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE16mr), |
| 25099 | /* 69979 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25100 | /* 69983 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 25101 | /* 69987 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 25102 | /* 69992 */ GIR_RootConstrainSelectedInstOperands, |
| 25103 | /* 69993 */ // GIR_Coverage, 50, |
| 25104 | /* 69993 */ GIR_EraseRootFromParent_Done, |
| 25105 | /* 69994 */ // Label 1601: @69994 |
| 25106 | /* 69994 */ GIM_Try, /*On fail goto*//*Label 1602*/ GIMT_Encode4(70057), // Rule ID 56 // |
| 25107 | /* 69999 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 25108 | /* 70002 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25109 | /* 70005 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25110 | /* 70009 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25111 | /* 70013 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 25112 | /* 70017 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 25113 | /* 70021 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 25114 | /* 70026 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25115 | /* 70030 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 25116 | /* 70032 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25117 | /* 70039 */ // (st (bswap:{ *:[i16] } GR16:{ *:[i16] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE16mr_EVEX addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src1) |
| 25118 | /* 70039 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE16mr_EVEX), |
| 25119 | /* 70042 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25120 | /* 70046 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 25121 | /* 70050 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 25122 | /* 70055 */ GIR_RootConstrainSelectedInstOperands, |
| 25123 | /* 70056 */ // GIR_Coverage, 56, |
| 25124 | /* 70056 */ GIR_EraseRootFromParent_Done, |
| 25125 | /* 70057 */ // Label 1602: @70057 |
| 25126 | /* 70057 */ GIM_Try, /*On fail goto*//*Label 1603*/ GIMT_Encode4(70102), // Rule ID 22512 // |
| 25127 | /* 70062 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25128 | /* 70065 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 25129 | /* 70072 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 25130 | /* 70076 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25131 | /* 70080 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25132 | /* 70087 */ // (atomic_store GR16:{ *:[i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (MOV16mr addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 25133 | /* 70087 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16mr), |
| 25134 | /* 70090 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25135 | /* 70094 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 25136 | /* 70096 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 25137 | /* 70100 */ GIR_RootConstrainSelectedInstOperands, |
| 25138 | /* 70101 */ // GIR_Coverage, 22512, |
| 25139 | /* 70101 */ GIR_EraseRootFromParent_Done, |
| 25140 | /* 70102 */ // Label 1603: @70102 |
| 25141 | /* 70102 */ GIM_Try, /*On fail goto*//*Label 1604*/ GIMT_Encode4(70144), // Rule ID 33 // |
| 25142 | /* 70107 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25143 | /* 70110 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25144 | /* 70114 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 25145 | /* 70118 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25146 | /* 70122 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25147 | /* 70129 */ // (st GR16:{ *:[i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV16mr addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 25148 | /* 70129 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16mr), |
| 25149 | /* 70132 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25150 | /* 70136 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 25151 | /* 70138 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 25152 | /* 70142 */ GIR_RootConstrainSelectedInstOperands, |
| 25153 | /* 70143 */ // GIR_Coverage, 33, |
| 25154 | /* 70143 */ GIR_EraseRootFromParent_Done, |
| 25155 | /* 70144 */ // Label 1604: @70144 |
| 25156 | /* 70144 */ GIM_Try, /*On fail goto*//*Label 1605*/ GIMT_Encode4(70189), // Rule ID 4622 // |
| 25157 | /* 70149 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 25158 | /* 70152 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25159 | /* 70155 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25160 | /* 70159 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 25161 | /* 70163 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25162 | /* 70167 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25163 | /* 70174 */ // (st FR16X:{ *:[f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVSHZmr addr:{ *:[iPTR] }:$dst, FR16X:{ *:[f16] }:$src) |
| 25164 | /* 70174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSHZmr), |
| 25165 | /* 70177 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25166 | /* 70181 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 25167 | /* 70183 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 25168 | /* 70187 */ GIR_RootConstrainSelectedInstOperands, |
| 25169 | /* 70188 */ // GIR_Coverage, 4622, |
| 25170 | /* 70188 */ GIR_EraseRootFromParent_Done, |
| 25171 | /* 70189 */ // Label 1605: @70189 |
| 25172 | /* 70189 */ GIM_Try, /*On fail goto*//*Label 1606*/ GIMT_Encode4(70255), // Rule ID 18547 // |
| 25173 | /* 70194 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 25174 | /* 70197 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25175 | /* 70200 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25176 | /* 70204 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25177 | /* 70208 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25178 | /* 70215 */ // (st f16:{ *:[f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (PEXTRWmri addr:{ *:[iPTR] }:$dst, (COPY_TO_REGCLASS:{ *:[v8i16] } FR16:{ *:[f16] }:$src, VR128:{ *:[i32] }), 0:{ *:[i8] }) |
| 25179 | /* 70215 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 25180 | /* 70218 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 25181 | /* 70222 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 25182 | /* 70227 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/0, // src |
| 25183 | /* 70231 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 25184 | /* 70236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PEXTRWmri), |
| 25185 | /* 70239 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25186 | /* 70243 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 25187 | /* 70246 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 25188 | /* 70249 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 25189 | /* 70253 */ GIR_RootConstrainSelectedInstOperands, |
| 25190 | /* 70254 */ // GIR_Coverage, 18547, |
| 25191 | /* 70254 */ GIR_EraseRootFromParent_Done, |
| 25192 | /* 70255 */ // Label 1606: @70255 |
| 25193 | /* 70255 */ GIM_Try, /*On fail goto*//*Label 1607*/ GIMT_Encode4(70321), // Rule ID 18548 // |
| 25194 | /* 70260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoBWI), |
| 25195 | /* 70263 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25196 | /* 70266 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25197 | /* 70270 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25198 | /* 70274 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25199 | /* 70281 */ // (st f16:{ *:[f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VPEXTRWmri addr:{ *:[iPTR] }:$dst, (COPY_TO_REGCLASS:{ *:[v8i16] } FR16:{ *:[f16] }:$src, VR128:{ *:[i32] }), 0:{ *:[i8] }) |
| 25200 | /* 70281 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 25201 | /* 70284 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 25202 | /* 70288 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 25203 | /* 70293 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/0, // src |
| 25204 | /* 70297 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 25205 | /* 70302 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPEXTRWmri), |
| 25206 | /* 70305 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25207 | /* 70309 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 25208 | /* 70312 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 25209 | /* 70315 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 25210 | /* 70319 */ GIR_RootConstrainSelectedInstOperands, |
| 25211 | /* 70320 */ // GIR_Coverage, 18548, |
| 25212 | /* 70320 */ GIR_EraseRootFromParent_Done, |
| 25213 | /* 70321 */ // Label 1607: @70321 |
| 25214 | /* 70321 */ GIM_Try, /*On fail goto*//*Label 1608*/ GIMT_Encode4(70433), // Rule ID 18336 // |
| 25215 | /* 70326 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 25216 | /* 70329 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25217 | /* 70332 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25218 | /* 70336 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25219 | /* 70340 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25220 | /* 70347 */ // (st f16:{ *:[f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV16mr addr:{ *:[iPTR] }:$dst, (EXTRACT_SUBREG:{ *:[i16] } (PEXTRWrri:{ *:[i32] } (COPY_TO_REGCLASS:{ *:[v8i16] } FR16:{ *:[f16] }:$src, VR128:{ *:[i32] }), 0:{ *:[i8] }), sub_16bit:{ *:[i32] })) |
| 25221 | /* 70347 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s16, |
| 25222 | /* 70350 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 25223 | /* 70354 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 25224 | /* 70359 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/0, // src |
| 25225 | /* 70363 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 25226 | /* 70368 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 25227 | /* 70371 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(X86::PEXTRWrri), |
| 25228 | /* 70375 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 25229 | /* 70380 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 25230 | /* 70383 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/0, |
| 25231 | /* 70386 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 25232 | /* 70388 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 25233 | /* 70391 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 25234 | /* 70395 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 25235 | /* 70400 */ GIR_AddTempSubRegister, /*InsnID*/1, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 25236 | /* 70407 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 25237 | /* 70412 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 25238 | /* 70417 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16mr), |
| 25239 | /* 70420 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25240 | /* 70424 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 25241 | /* 70427 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 25242 | /* 70431 */ GIR_RootConstrainSelectedInstOperands, |
| 25243 | /* 70432 */ // GIR_Coverage, 18336, |
| 25244 | /* 70432 */ GIR_EraseRootFromParent_Done, |
| 25245 | /* 70433 */ // Label 1608: @70433 |
| 25246 | /* 70433 */ GIM_Try, /*On fail goto*//*Label 1609*/ GIMT_Encode4(70499), // Rule ID 21840 // |
| 25247 | /* 70438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 25248 | /* 70441 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25249 | /* 70444 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25250 | /* 70448 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 25251 | /* 70452 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25252 | /* 70459 */ // (st f16:{ *:[f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VPEXTRWZmri addr:{ *:[iPTR] }:$dst, (COPY_TO_REGCLASS:{ *:[v8i16] } FR16:{ *:[f16] }:$src, VR128:{ *:[i32] }), 0:{ *:[i8] }) |
| 25253 | /* 70459 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 25254 | /* 70462 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 25255 | /* 70466 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 25256 | /* 70471 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/0, // src |
| 25257 | /* 70475 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 25258 | /* 70480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPEXTRWZmri), |
| 25259 | /* 70483 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25260 | /* 70487 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 25261 | /* 70490 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 25262 | /* 70493 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 25263 | /* 70497 */ GIR_RootConstrainSelectedInstOperands, |
| 25264 | /* 70498 */ // GIR_Coverage, 21840, |
| 25265 | /* 70498 */ GIR_EraseRootFromParent_Done, |
| 25266 | /* 70499 */ // Label 1609: @70499 |
| 25267 | /* 70499 */ GIM_Reject, |
| 25268 | /* 70500 */ // Label 1477: @70500 |
| 25269 | /* 70500 */ GIM_Try, /*On fail goto*//*Label 1610*/ GIMT_Encode4(70596), // Rule ID 22493 // |
| 25270 | /* 70505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 25271 | /* 70508 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25272 | /* 70511 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25273 | /* 70518 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25274 | /* 70522 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25275 | /* 70526 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25276 | /* 70530 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25277 | /* 70534 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25278 | /* 70538 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25279 | /* 70542 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25280 | /* 70545 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25281 | /* 70549 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25282 | /* 70556 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25283 | /* 70560 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 25284 | /* 70564 */ // MIs[0] dst |
| 25285 | /* 70564 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25286 | /* 70569 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25287 | /* 70571 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25288 | /* 70578 */ // (atomic_store (add:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, 1:{ *:[i32] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (INC32m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 25289 | /* 70578 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC32m), |
| 25290 | /* 70581 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25291 | /* 70585 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25292 | /* 70588 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25293 | /* 70594 */ GIR_RootConstrainSelectedInstOperands, |
| 25294 | /* 70595 */ // GIR_Coverage, 22493, |
| 25295 | /* 70595 */ GIR_EraseRootFromParent_Done, |
| 25296 | /* 70596 */ // Label 1610: @70596 |
| 25297 | /* 70596 */ GIM_Try, /*On fail goto*//*Label 1611*/ GIMT_Encode4(70692), // Rule ID 22497 // |
| 25298 | /* 70601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 25299 | /* 70604 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25300 | /* 70607 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25301 | /* 70614 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25302 | /* 70618 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25303 | /* 70622 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25304 | /* 70626 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25305 | /* 70630 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25306 | /* 70634 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25307 | /* 70638 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25308 | /* 70641 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25309 | /* 70645 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25310 | /* 70652 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25311 | /* 70656 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 25312 | /* 70660 */ // MIs[0] dst |
| 25313 | /* 70660 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25314 | /* 70665 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25315 | /* 70667 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25316 | /* 70674 */ // (atomic_store (add:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, -1:{ *:[i32] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (DEC32m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 25317 | /* 70674 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC32m), |
| 25318 | /* 70677 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25319 | /* 70681 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25320 | /* 70684 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25321 | /* 70690 */ GIR_RootConstrainSelectedInstOperands, |
| 25322 | /* 70691 */ // GIR_Coverage, 22497, |
| 25323 | /* 70691 */ GIR_EraseRootFromParent_Done, |
| 25324 | /* 70692 */ // Label 1611: @70692 |
| 25325 | /* 70692 */ GIM_Try, /*On fail goto*//*Label 1612*/ GIMT_Encode4(70785), // Rule ID 22501 // |
| 25326 | /* 70697 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25327 | /* 70700 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25328 | /* 70707 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25329 | /* 70711 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 25330 | /* 70715 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25331 | /* 70719 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25332 | /* 70723 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 25333 | /* 70727 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25334 | /* 70731 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25335 | /* 70735 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25336 | /* 70738 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25337 | /* 70742 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25338 | /* 70749 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25339 | /* 70753 */ // MIs[0] dst |
| 25340 | /* 70753 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25341 | /* 70758 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25342 | /* 70760 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25343 | /* 70767 */ // (atomic_store (sub:{ *:[i32] } 0:{ *:[i32] }, (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (NEG32m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 25344 | /* 70767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG32m), |
| 25345 | /* 70770 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25346 | /* 70774 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25347 | /* 70777 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25348 | /* 70783 */ GIR_RootConstrainSelectedInstOperands, |
| 25349 | /* 70784 */ // GIR_Coverage, 22501, |
| 25350 | /* 70784 */ GIR_EraseRootFromParent_Done, |
| 25351 | /* 70785 */ // Label 1612: @70785 |
| 25352 | /* 70785 */ GIM_Try, /*On fail goto*//*Label 1613*/ GIMT_Encode4(70875), // Rule ID 22505 // |
| 25353 | /* 70790 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25354 | /* 70793 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25355 | /* 70800 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25356 | /* 70804 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25357 | /* 70808 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25358 | /* 70812 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25359 | /* 70816 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25360 | /* 70820 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25361 | /* 70824 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25362 | /* 70827 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25363 | /* 70831 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25364 | /* 70838 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25365 | /* 70842 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 25366 | /* 70846 */ // MIs[0] dst |
| 25367 | /* 70846 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25368 | /* 70851 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25369 | /* 70853 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25370 | /* 70860 */ // (atomic_store (xor:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, -1:{ *:[i32] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (NOT32m addr:{ *:[iPTR] }:$dst) |
| 25371 | /* 70860 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT32m), |
| 25372 | /* 70863 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25373 | /* 70867 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25374 | /* 70873 */ GIR_RootConstrainSelectedInstOperands, |
| 25375 | /* 70874 */ // GIR_Coverage, 22505, |
| 25376 | /* 70874 */ GIR_EraseRootFromParent_Done, |
| 25377 | /* 70875 */ // Label 1613: @70875 |
| 25378 | /* 70875 */ GIM_Try, /*On fail goto*//*Label 1614*/ GIMT_Encode4(70961), // Rule ID 227 // |
| 25379 | /* 70880 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 25380 | /* 70883 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25381 | /* 70886 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25382 | /* 70890 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25383 | /* 70894 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25384 | /* 70898 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25385 | /* 70902 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25386 | /* 70906 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25387 | /* 70910 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25388 | /* 70914 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25389 | /* 70917 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25390 | /* 70921 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25391 | /* 70925 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 25392 | /* 70929 */ // MIs[0] src1 |
| 25393 | /* 70929 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25394 | /* 70934 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25395 | /* 70936 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25396 | /* 70943 */ // (st (add:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, 1:{ *:[i32] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (INC32m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 25397 | /* 70943 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC32m), |
| 25398 | /* 70946 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25399 | /* 70950 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25400 | /* 70953 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25401 | /* 70959 */ GIR_RootConstrainSelectedInstOperands, |
| 25402 | /* 70960 */ // GIR_Coverage, 227, |
| 25403 | /* 70960 */ GIR_EraseRootFromParent_Done, |
| 25404 | /* 70961 */ // Label 1614: @70961 |
| 25405 | /* 70961 */ GIM_Try, /*On fail goto*//*Label 1615*/ GIMT_Encode4(71047), // Rule ID 230 // |
| 25406 | /* 70966 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 25407 | /* 70969 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25408 | /* 70972 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25409 | /* 70976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25410 | /* 70980 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25411 | /* 70984 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25412 | /* 70988 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25413 | /* 70992 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25414 | /* 70996 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25415 | /* 71000 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25416 | /* 71003 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25417 | /* 71007 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25418 | /* 71011 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 25419 | /* 71015 */ // MIs[0] src1 |
| 25420 | /* 71015 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25421 | /* 71020 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25422 | /* 71022 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25423 | /* 71029 */ // (st (add:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, -1:{ *:[i32] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (DEC32m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 25424 | /* 71029 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC32m), |
| 25425 | /* 71032 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25426 | /* 71036 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25427 | /* 71039 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25428 | /* 71045 */ GIR_RootConstrainSelectedInstOperands, |
| 25429 | /* 71046 */ // GIR_Coverage, 230, |
| 25430 | /* 71046 */ GIR_EraseRootFromParent_Done, |
| 25431 | /* 71047 */ // Label 1615: @71047 |
| 25432 | /* 71047 */ GIM_Try, /*On fail goto*//*Label 1616*/ GIMT_Encode4(71140), // Rule ID 22615 // |
| 25433 | /* 71052 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25434 | /* 71055 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25435 | /* 71059 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25436 | /* 71063 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25437 | /* 71067 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25438 | /* 71071 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25439 | /* 71075 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25440 | /* 71079 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25441 | /* 71083 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25442 | /* 71086 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25443 | /* 71090 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25444 | /* 71094 */ GIM_CheckConstantInt, /*MI*/1, /*Op*/2, GIMT_Encode8(128), |
| 25445 | /* 71105 */ // MIs[0] dst |
| 25446 | /* 71105 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25447 | /* 71110 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25448 | /* 71112 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25449 | /* 71119 */ // (st (add:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, 128:{ *:[i32] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB32mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, -128:{ *:[i32] }) |
| 25450 | /* 71119 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mi), |
| 25451 | /* 71122 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25452 | /* 71126 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 25453 | /* 71129 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25454 | /* 71132 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25455 | /* 71138 */ GIR_RootConstrainSelectedInstOperands, |
| 25456 | /* 71139 */ // GIR_Coverage, 22615, |
| 25457 | /* 71139 */ GIR_EraseRootFromParent_Done, |
| 25458 | /* 71140 */ // Label 1616: @71140 |
| 25459 | /* 71140 */ GIM_Try, /*On fail goto*//*Label 1617*/ GIMT_Encode4(71223), // Rule ID 17614 // |
| 25460 | /* 71145 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25461 | /* 71148 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25462 | /* 71152 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25463 | /* 71156 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 25464 | /* 71160 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25465 | /* 71164 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25466 | /* 71168 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25467 | /* 71172 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25468 | /* 71176 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25469 | /* 71179 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25470 | /* 71183 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25471 | /* 71187 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 31, |
| 25472 | /* 71191 */ // MIs[0] dst |
| 25473 | /* 71191 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25474 | /* 71196 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25475 | /* 71198 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25476 | /* 71205 */ // (st (rotl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, 31:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR32m1:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 25477 | /* 71205 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32m1), |
| 25478 | /* 71208 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25479 | /* 71212 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25480 | /* 71215 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25481 | /* 71221 */ GIR_RootConstrainSelectedInstOperands, |
| 25482 | /* 71222 */ // GIR_Coverage, 17614, |
| 25483 | /* 71222 */ GIR_EraseRootFromParent_Done, |
| 25484 | /* 71223 */ // Label 1617: @71223 |
| 25485 | /* 71223 */ GIM_Try, /*On fail goto*//*Label 1618*/ GIMT_Encode4(71306), // Rule ID 17618 // |
| 25486 | /* 71228 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25487 | /* 71231 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25488 | /* 71235 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25489 | /* 71239 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 25490 | /* 71243 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25491 | /* 71247 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25492 | /* 71251 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25493 | /* 71255 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25494 | /* 71259 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25495 | /* 71262 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25496 | /* 71266 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25497 | /* 71270 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 31, |
| 25498 | /* 71274 */ // MIs[0] dst |
| 25499 | /* 71274 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25500 | /* 71279 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25501 | /* 71281 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25502 | /* 71288 */ // (st (rotr:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, 31:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL32m1:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 25503 | /* 71288 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32m1), |
| 25504 | /* 71291 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25505 | /* 71295 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25506 | /* 71298 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25507 | /* 71304 */ GIR_RootConstrainSelectedInstOperands, |
| 25508 | /* 71305 */ // GIR_Coverage, 17618, |
| 25509 | /* 71305 */ GIR_EraseRootFromParent_Done, |
| 25510 | /* 71306 */ // Label 1618: @71306 |
| 25511 | /* 71306 */ GIM_Try, /*On fail goto*//*Label 1619*/ GIMT_Encode4(71389), // Rule ID 263 // |
| 25512 | /* 71311 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25513 | /* 71314 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25514 | /* 71318 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25515 | /* 71322 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 25516 | /* 71326 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25517 | /* 71330 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25518 | /* 71334 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 25519 | /* 71338 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25520 | /* 71342 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25521 | /* 71346 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25522 | /* 71349 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25523 | /* 71353 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25524 | /* 71357 */ // MIs[0] src1 |
| 25525 | /* 71357 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25526 | /* 71362 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25527 | /* 71364 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25528 | /* 71371 */ // (st (sub:{ *:[i32] } 0:{ *:[i32] }, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (NEG32m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 25529 | /* 71371 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG32m), |
| 25530 | /* 71374 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25531 | /* 71378 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25532 | /* 71381 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25533 | /* 71387 */ GIR_RootConstrainSelectedInstOperands, |
| 25534 | /* 71388 */ // GIR_Coverage, 263, |
| 25535 | /* 71388 */ GIR_EraseRootFromParent_Done, |
| 25536 | /* 71389 */ // Label 1619: @71389 |
| 25537 | /* 71389 */ GIM_Try, /*On fail goto*//*Label 1620*/ GIMT_Encode4(71469), // Rule ID 271 // |
| 25538 | /* 71394 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25539 | /* 71397 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25540 | /* 71401 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25541 | /* 71405 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25542 | /* 71409 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25543 | /* 71413 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25544 | /* 71417 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25545 | /* 71421 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25546 | /* 71425 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25547 | /* 71428 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25548 | /* 71432 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25549 | /* 71436 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 25550 | /* 71440 */ // MIs[0] src1 |
| 25551 | /* 71440 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25552 | /* 71445 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25553 | /* 71447 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25554 | /* 71454 */ // (st (xor:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, -1:{ *:[i32] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (NOT32m addr:{ *:[iPTR] }:$src1) |
| 25555 | /* 71454 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT32m), |
| 25556 | /* 71457 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25557 | /* 71461 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25558 | /* 71467 */ GIR_RootConstrainSelectedInstOperands, |
| 25559 | /* 71468 */ // GIR_Coverage, 271, |
| 25560 | /* 71468 */ GIR_EraseRootFromParent_Done, |
| 25561 | /* 71469 */ // Label 1620: @71469 |
| 25562 | /* 71469 */ GIM_Try, /*On fail goto*//*Label 1621*/ GIMT_Encode4(71564), // Rule ID 415 // |
| 25563 | /* 71474 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25564 | /* 71477 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25565 | /* 71481 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25566 | /* 71485 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25567 | /* 71489 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25568 | /* 71493 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25569 | /* 71497 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25570 | /* 71501 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25571 | /* 71505 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25572 | /* 71508 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25573 | /* 71512 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25574 | /* 71516 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25575 | /* 71520 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25576 | /* 71524 */ // MIs[3] Operand 1 |
| 25577 | /* 71524 */ // No operand predicates |
| 25578 | /* 71524 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25579 | /* 71528 */ // MIs[0] src1 |
| 25580 | /* 71528 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25581 | /* 71533 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25582 | /* 71535 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25583 | /* 71542 */ // (st (add:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i32] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i32] }):$src2) |
| 25584 | /* 71542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mi), |
| 25585 | /* 71545 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25586 | /* 71549 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25587 | /* 71552 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25588 | /* 71555 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25589 | /* 71562 */ GIR_RootConstrainSelectedInstOperands, |
| 25590 | /* 71563 */ // GIR_Coverage, 415, |
| 25591 | /* 71563 */ GIR_EraseRootFromParent_Done, |
| 25592 | /* 71564 */ // Label 1621: @71564 |
| 25593 | /* 71564 */ GIM_Try, /*On fail goto*//*Label 1622*/ GIMT_Encode4(71659), // Rule ID 307 // |
| 25594 | /* 71569 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25595 | /* 71572 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25596 | /* 71576 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25597 | /* 71580 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 25598 | /* 71584 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25599 | /* 71588 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25600 | /* 71592 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25601 | /* 71596 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25602 | /* 71600 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25603 | /* 71603 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25604 | /* 71607 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25605 | /* 71611 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25606 | /* 71615 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25607 | /* 71619 */ // MIs[3] Operand 1 |
| 25608 | /* 71619 */ // No operand predicates |
| 25609 | /* 71619 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25610 | /* 71623 */ // MIs[0] src1 |
| 25611 | /* 71623 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25612 | /* 71628 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25613 | /* 71630 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25614 | /* 71637 */ // (st (and:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i32] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i32] }):$src2) |
| 25615 | /* 71637 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mi), |
| 25616 | /* 71640 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25617 | /* 71644 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25618 | /* 71647 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25619 | /* 71650 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25620 | /* 71657 */ GIR_RootConstrainSelectedInstOperands, |
| 25621 | /* 71658 */ // GIR_Coverage, 307, |
| 25622 | /* 71658 */ GIR_EraseRootFromParent_Done, |
| 25623 | /* 71659 */ // Label 1622: @71659 |
| 25624 | /* 71659 */ GIM_Try, /*On fail goto*//*Label 1623*/ GIMT_Encode4(71754), // Rule ID 343 // |
| 25625 | /* 71664 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25626 | /* 71667 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25627 | /* 71671 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25628 | /* 71675 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 25629 | /* 71679 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25630 | /* 71683 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25631 | /* 71687 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25632 | /* 71691 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25633 | /* 71695 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25634 | /* 71698 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25635 | /* 71702 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25636 | /* 71706 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25637 | /* 71710 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25638 | /* 71714 */ // MIs[3] Operand 1 |
| 25639 | /* 71714 */ // No operand predicates |
| 25640 | /* 71714 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25641 | /* 71718 */ // MIs[0] src1 |
| 25642 | /* 71718 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25643 | /* 71723 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25644 | /* 71725 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25645 | /* 71732 */ // (st (or:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i32] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i32] }):$src2) |
| 25646 | /* 71732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mi), |
| 25647 | /* 71735 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25648 | /* 71739 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25649 | /* 71742 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25650 | /* 71745 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25651 | /* 71752 */ GIR_RootConstrainSelectedInstOperands, |
| 25652 | /* 71753 */ // GIR_Coverage, 343, |
| 25653 | /* 71753 */ GIR_EraseRootFromParent_Done, |
| 25654 | /* 71754 */ // Label 1623: @71754 |
| 25655 | /* 71754 */ GIM_Try, /*On fail goto*//*Label 1624*/ GIMT_Encode4(71849), // Rule ID 455 // |
| 25656 | /* 71759 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25657 | /* 71762 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25658 | /* 71766 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25659 | /* 71770 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 25660 | /* 71774 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25661 | /* 71778 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25662 | /* 71782 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25663 | /* 71786 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25664 | /* 71790 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25665 | /* 71793 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25666 | /* 71797 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25667 | /* 71801 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25668 | /* 71805 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25669 | /* 71809 */ // MIs[3] Operand 1 |
| 25670 | /* 71809 */ // No operand predicates |
| 25671 | /* 71809 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25672 | /* 71813 */ // MIs[0] src1 |
| 25673 | /* 71813 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25674 | /* 71818 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25675 | /* 71820 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25676 | /* 71827 */ // (st (sub:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i32] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i32] }):$src2) |
| 25677 | /* 71827 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mi), |
| 25678 | /* 71830 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25679 | /* 71834 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25680 | /* 71837 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25681 | /* 71840 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25682 | /* 71847 */ GIR_RootConstrainSelectedInstOperands, |
| 25683 | /* 71848 */ // GIR_Coverage, 455, |
| 25684 | /* 71848 */ GIR_EraseRootFromParent_Done, |
| 25685 | /* 71849 */ // Label 1624: @71849 |
| 25686 | /* 71849 */ GIM_Try, /*On fail goto*//*Label 1625*/ GIMT_Encode4(71944), // Rule ID 379 // |
| 25687 | /* 71854 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25688 | /* 71857 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25689 | /* 71861 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25690 | /* 71865 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25691 | /* 71869 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25692 | /* 71873 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25693 | /* 71877 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25694 | /* 71881 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25695 | /* 71885 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25696 | /* 71888 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25697 | /* 71892 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25698 | /* 71896 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25699 | /* 71900 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25700 | /* 71904 */ // MIs[3] Operand 1 |
| 25701 | /* 71904 */ // No operand predicates |
| 25702 | /* 71904 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25703 | /* 71908 */ // MIs[0] src1 |
| 25704 | /* 71908 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25705 | /* 71913 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25706 | /* 71915 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25707 | /* 71922 */ // (st (xor:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i32] })<<P:Predicate_imm_su>>:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i32] }):$src2) |
| 25708 | /* 71922 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mi), |
| 25709 | /* 71925 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25710 | /* 71929 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25711 | /* 71932 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25712 | /* 71935 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25713 | /* 71942 */ GIR_RootConstrainSelectedInstOperands, |
| 25714 | /* 71943 */ // GIR_Coverage, 379, |
| 25715 | /* 71943 */ GIR_EraseRootFromParent_Done, |
| 25716 | /* 71944 */ // Label 1625: @71944 |
| 25717 | /* 71944 */ GIM_Try, /*On fail goto*//*Label 1626*/ GIMT_Encode4(72045), // Rule ID 22429 // |
| 25718 | /* 71949 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25719 | /* 71952 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25720 | /* 71959 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25721 | /* 71963 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25722 | /* 71967 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25723 | /* 71971 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25724 | /* 71975 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25725 | /* 71979 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25726 | /* 71983 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25727 | /* 71986 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25728 | /* 71990 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25729 | /* 71997 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25730 | /* 72001 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25731 | /* 72005 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25732 | /* 72009 */ // MIs[3] Operand 1 |
| 25733 | /* 72009 */ // No operand predicates |
| 25734 | /* 72009 */ // MIs[0] dst |
| 25735 | /* 72009 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25736 | /* 72014 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25737 | /* 72016 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25738 | /* 72023 */ // (atomic_store (add:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, (imm:{ *:[i32] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (ADD32mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i32] }):$src) |
| 25739 | /* 72023 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mi), |
| 25740 | /* 72026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25741 | /* 72030 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 25742 | /* 72033 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25743 | /* 72036 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25744 | /* 72043 */ GIR_RootConstrainSelectedInstOperands, |
| 25745 | /* 72044 */ // GIR_Coverage, 22429, |
| 25746 | /* 72044 */ GIR_EraseRootFromParent_Done, |
| 25747 | /* 72045 */ // Label 1626: @72045 |
| 25748 | /* 72045 */ GIM_Try, /*On fail goto*//*Label 1627*/ GIMT_Encode4(72146), // Rule ID 22437 // |
| 25749 | /* 72050 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25750 | /* 72053 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25751 | /* 72060 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25752 | /* 72064 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 25753 | /* 72068 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25754 | /* 72072 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25755 | /* 72076 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25756 | /* 72080 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25757 | /* 72084 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25758 | /* 72087 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25759 | /* 72091 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25760 | /* 72098 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25761 | /* 72102 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25762 | /* 72106 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25763 | /* 72110 */ // MIs[3] Operand 1 |
| 25764 | /* 72110 */ // No operand predicates |
| 25765 | /* 72110 */ // MIs[0] dst |
| 25766 | /* 72110 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25767 | /* 72115 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25768 | /* 72117 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25769 | /* 72124 */ // (atomic_store (and:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, (imm:{ *:[i32] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (AND32mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i32] }):$src) |
| 25770 | /* 72124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mi), |
| 25771 | /* 72127 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25772 | /* 72131 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 25773 | /* 72134 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25774 | /* 72137 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25775 | /* 72144 */ GIR_RootConstrainSelectedInstOperands, |
| 25776 | /* 72145 */ // GIR_Coverage, 22437, |
| 25777 | /* 72145 */ GIR_EraseRootFromParent_Done, |
| 25778 | /* 72146 */ // Label 1627: @72146 |
| 25779 | /* 72146 */ GIM_Try, /*On fail goto*//*Label 1628*/ GIMT_Encode4(72247), // Rule ID 22445 // |
| 25780 | /* 72151 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25781 | /* 72154 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25782 | /* 72161 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25783 | /* 72165 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 25784 | /* 72169 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25785 | /* 72173 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25786 | /* 72177 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25787 | /* 72181 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25788 | /* 72185 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25789 | /* 72188 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25790 | /* 72192 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25791 | /* 72199 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25792 | /* 72203 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25793 | /* 72207 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25794 | /* 72211 */ // MIs[3] Operand 1 |
| 25795 | /* 72211 */ // No operand predicates |
| 25796 | /* 72211 */ // MIs[0] dst |
| 25797 | /* 72211 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25798 | /* 72216 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25799 | /* 72218 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25800 | /* 72225 */ // (atomic_store (or:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, (imm:{ *:[i32] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (OR32mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i32] }):$src) |
| 25801 | /* 72225 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mi), |
| 25802 | /* 72228 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25803 | /* 72232 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 25804 | /* 72235 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25805 | /* 72238 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25806 | /* 72245 */ GIR_RootConstrainSelectedInstOperands, |
| 25807 | /* 72246 */ // GIR_Coverage, 22445, |
| 25808 | /* 72246 */ GIR_EraseRootFromParent_Done, |
| 25809 | /* 72247 */ // Label 1628: @72247 |
| 25810 | /* 72247 */ GIM_Try, /*On fail goto*//*Label 1629*/ GIMT_Encode4(72348), // Rule ID 22461 // |
| 25811 | /* 72252 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25812 | /* 72255 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25813 | /* 72262 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25814 | /* 72266 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 25815 | /* 72270 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25816 | /* 72274 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25817 | /* 72278 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25818 | /* 72282 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25819 | /* 72286 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25820 | /* 72289 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25821 | /* 72293 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25822 | /* 72300 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25823 | /* 72304 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25824 | /* 72308 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25825 | /* 72312 */ // MIs[3] Operand 1 |
| 25826 | /* 72312 */ // No operand predicates |
| 25827 | /* 72312 */ // MIs[0] dst |
| 25828 | /* 72312 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25829 | /* 72317 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25830 | /* 72319 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25831 | /* 72326 */ // (atomic_store (sub:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, (imm:{ *:[i32] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (SUB32mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i32] }):$src) |
| 25832 | /* 72326 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mi), |
| 25833 | /* 72329 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25834 | /* 72333 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 25835 | /* 72336 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25836 | /* 72339 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25837 | /* 72346 */ GIR_RootConstrainSelectedInstOperands, |
| 25838 | /* 72347 */ // GIR_Coverage, 22461, |
| 25839 | /* 72347 */ GIR_EraseRootFromParent_Done, |
| 25840 | /* 72348 */ // Label 1629: @72348 |
| 25841 | /* 72348 */ GIM_Try, /*On fail goto*//*Label 1630*/ GIMT_Encode4(72449), // Rule ID 22453 // |
| 25842 | /* 72353 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25843 | /* 72356 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25844 | /* 72363 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25845 | /* 72367 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25846 | /* 72371 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25847 | /* 72375 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25848 | /* 72379 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25849 | /* 72383 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25850 | /* 72387 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25851 | /* 72390 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25852 | /* 72394 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25853 | /* 72401 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25854 | /* 72405 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25855 | /* 72409 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25856 | /* 72413 */ // MIs[3] Operand 1 |
| 25857 | /* 72413 */ // No operand predicates |
| 25858 | /* 72413 */ // MIs[0] dst |
| 25859 | /* 72413 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25860 | /* 72418 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25861 | /* 72420 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25862 | /* 72427 */ // (atomic_store (xor:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, (imm:{ *:[i32] }):$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (XOR32mi:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i32] }):$src) |
| 25863 | /* 72427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mi), |
| 25864 | /* 72430 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25865 | /* 72434 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 25866 | /* 72437 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25867 | /* 72440 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25868 | /* 72447 */ GIR_RootConstrainSelectedInstOperands, |
| 25869 | /* 72448 */ // GIR_Coverage, 22453, |
| 25870 | /* 72448 */ GIR_EraseRootFromParent_Done, |
| 25871 | /* 72449 */ // Label 1630: @72449 |
| 25872 | /* 72449 */ GIM_Try, /*On fail goto*//*Label 1631*/ GIMT_Encode4(72553), // Rule ID 834 // |
| 25873 | /* 72454 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25874 | /* 72457 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25875 | /* 72461 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25876 | /* 72465 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHL), |
| 25877 | /* 72469 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25878 | /* 72473 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25879 | /* 72477 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 25880 | /* 72481 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25881 | /* 72485 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25882 | /* 72489 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25883 | /* 72492 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25884 | /* 72496 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25885 | /* 72500 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25886 | /* 72505 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/3, // MIs[3] |
| 25887 | /* 72509 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25888 | /* 72513 */ // MIs[3] Operand 1 |
| 25889 | /* 72513 */ // No operand predicates |
| 25890 | /* 72513 */ // MIs[0] src1 |
| 25891 | /* 72513 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25892 | /* 72518 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25893 | /* 72520 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25894 | /* 72527 */ // (st (fshl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHLD32mri8:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 25895 | /* 72527 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32mri8), |
| 25896 | /* 72530 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25897 | /* 72534 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 25898 | /* 72538 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src3 |
| 25899 | /* 72541 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25900 | /* 72544 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25901 | /* 72551 */ GIR_RootConstrainSelectedInstOperands, |
| 25902 | /* 72552 */ // GIR_Coverage, 834, |
| 25903 | /* 72552 */ GIR_EraseRootFromParent_Done, |
| 25904 | /* 72553 */ // Label 1631: @72553 |
| 25905 | /* 72553 */ GIM_Try, /*On fail goto*//*Label 1632*/ GIMT_Encode4(72657), // Rule ID 858 // |
| 25906 | /* 72558 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25907 | /* 72561 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25908 | /* 72565 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25909 | /* 72569 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHR), |
| 25910 | /* 72573 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25911 | /* 72577 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25912 | /* 72581 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 25913 | /* 72585 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25914 | /* 72590 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25915 | /* 72594 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25916 | /* 72598 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25917 | /* 72601 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25918 | /* 72605 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25919 | /* 72609 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/3, // MIs[3] |
| 25920 | /* 72613 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25921 | /* 72617 */ // MIs[3] Operand 1 |
| 25922 | /* 72617 */ // No operand predicates |
| 25923 | /* 72617 */ // MIs[0] src1 |
| 25924 | /* 72617 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25925 | /* 72622 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25926 | /* 72624 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25927 | /* 72631 */ // (st (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src3), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHRD32mri8:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 25928 | /* 72631 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32mri8), |
| 25929 | /* 72634 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25930 | /* 72638 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 25931 | /* 72642 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src3 |
| 25932 | /* 72645 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25933 | /* 72648 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25934 | /* 72655 */ GIR_RootConstrainSelectedInstOperands, |
| 25935 | /* 72656 */ // GIR_Coverage, 858, |
| 25936 | /* 72656 */ GIR_EraseRootFromParent_Done, |
| 25937 | /* 72657 */ // Label 1632: @72657 |
| 25938 | /* 72657 */ GIM_Try, /*On fail goto*//*Label 1633*/ GIMT_Encode4(72748), // Rule ID 735 // |
| 25939 | /* 72662 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25940 | /* 72665 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25941 | /* 72669 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25942 | /* 72673 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 25943 | /* 72677 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25944 | /* 72681 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25945 | /* 72685 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25946 | /* 72689 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25947 | /* 72693 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25948 | /* 72696 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25949 | /* 72700 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25950 | /* 72704 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25951 | /* 72708 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25952 | /* 72712 */ // MIs[3] Operand 1 |
| 25953 | /* 72712 */ // No operand predicates |
| 25954 | /* 72712 */ // MIs[0] src1 |
| 25955 | /* 72712 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25956 | /* 72717 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25957 | /* 72719 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25958 | /* 72726 */ // (st (sra:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SAR32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 25959 | /* 72726 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32mi), |
| 25960 | /* 72729 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25961 | /* 72733 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25962 | /* 72736 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25963 | /* 72739 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25964 | /* 72746 */ GIR_RootConstrainSelectedInstOperands, |
| 25965 | /* 72747 */ // GIR_Coverage, 735, |
| 25966 | /* 72747 */ GIR_EraseRootFromParent_Done, |
| 25967 | /* 72748 */ // Label 1633: @72748 |
| 25968 | /* 72748 */ GIM_Try, /*On fail goto*//*Label 1634*/ GIMT_Encode4(72839), // Rule ID 703 // |
| 25969 | /* 72753 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25970 | /* 72756 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25971 | /* 72760 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25972 | /* 72764 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 25973 | /* 72768 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25974 | /* 72772 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25975 | /* 72776 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25976 | /* 72780 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25977 | /* 72784 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25978 | /* 72787 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25979 | /* 72791 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25980 | /* 72795 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25981 | /* 72799 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25982 | /* 72803 */ // MIs[3] Operand 1 |
| 25983 | /* 72803 */ // No operand predicates |
| 25984 | /* 72803 */ // MIs[0] src1 |
| 25985 | /* 72803 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25986 | /* 72808 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25987 | /* 72810 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25988 | /* 72817 */ // (st (srl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHR32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 25989 | /* 72817 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32mi), |
| 25990 | /* 72820 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25991 | /* 72824 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25992 | /* 72827 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25993 | /* 72830 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25994 | /* 72837 */ GIR_RootConstrainSelectedInstOperands, |
| 25995 | /* 72838 */ // GIR_Coverage, 703, |
| 25996 | /* 72838 */ GIR_EraseRootFromParent_Done, |
| 25997 | /* 72839 */ // Label 1634: @72839 |
| 25998 | /* 72839 */ GIM_Try, /*On fail goto*//*Label 1635*/ GIMT_Encode4(72930), // Rule ID 767 // |
| 25999 | /* 72844 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26000 | /* 72847 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26001 | /* 72851 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26002 | /* 72855 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 26003 | /* 72859 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26004 | /* 72863 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26005 | /* 72867 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26006 | /* 72871 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26007 | /* 72875 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26008 | /* 72878 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26009 | /* 72882 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26010 | /* 72886 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 26011 | /* 72890 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 26012 | /* 72894 */ // MIs[3] Operand 1 |
| 26013 | /* 72894 */ // No operand predicates |
| 26014 | /* 72894 */ // MIs[0] src1 |
| 26015 | /* 72894 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26016 | /* 72899 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 26017 | /* 72901 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26018 | /* 72908 */ // (st (rotl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 26019 | /* 72908 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32mi), |
| 26020 | /* 72911 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26021 | /* 72915 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 26022 | /* 72918 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26023 | /* 72921 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 26024 | /* 72928 */ GIR_RootConstrainSelectedInstOperands, |
| 26025 | /* 72929 */ // GIR_Coverage, 767, |
| 26026 | /* 72929 */ GIR_EraseRootFromParent_Done, |
| 26027 | /* 72930 */ // Label 1635: @72930 |
| 26028 | /* 72930 */ GIM_Try, /*On fail goto*//*Label 1636*/ GIMT_Encode4(73021), // Rule ID 799 // |
| 26029 | /* 72935 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26030 | /* 72938 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26031 | /* 72942 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26032 | /* 72946 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 26033 | /* 72950 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26034 | /* 72954 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26035 | /* 72958 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26036 | /* 72962 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26037 | /* 72966 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26038 | /* 72969 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26039 | /* 72973 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26040 | /* 72977 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 26041 | /* 72981 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 26042 | /* 72985 */ // MIs[3] Operand 1 |
| 26043 | /* 72985 */ // No operand predicates |
| 26044 | /* 72985 */ // MIs[0] src1 |
| 26045 | /* 72985 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26046 | /* 72990 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 26047 | /* 72992 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26048 | /* 72999 */ // (st (rotr:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 26049 | /* 72999 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32mi), |
| 26050 | /* 73002 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26051 | /* 73006 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 26052 | /* 73009 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26053 | /* 73012 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 26054 | /* 73019 */ GIR_RootConstrainSelectedInstOperands, |
| 26055 | /* 73020 */ // GIR_Coverage, 799, |
| 26056 | /* 73020 */ GIR_EraseRootFromParent_Done, |
| 26057 | /* 73021 */ // Label 1636: @73021 |
| 26058 | /* 73021 */ GIM_Try, /*On fail goto*//*Label 1637*/ GIMT_Encode4(73112), // Rule ID 671 // |
| 26059 | /* 73026 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26060 | /* 73029 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26061 | /* 73033 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26062 | /* 73037 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 26063 | /* 73041 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26064 | /* 73045 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26065 | /* 73049 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26066 | /* 73053 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26067 | /* 73057 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26068 | /* 73060 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26069 | /* 73064 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26070 | /* 73068 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 26071 | /* 73072 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 26072 | /* 73076 */ // MIs[3] Operand 1 |
| 26073 | /* 73076 */ // No operand predicates |
| 26074 | /* 73076 */ // MIs[0] src1 |
| 26075 | /* 73076 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26076 | /* 73081 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 26077 | /* 73083 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26078 | /* 73090 */ // (st (shl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHL32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 26079 | /* 73090 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32mi), |
| 26080 | /* 73093 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26081 | /* 73097 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 26082 | /* 73100 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26083 | /* 73103 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 26084 | /* 73110 */ GIR_RootConstrainSelectedInstOperands, |
| 26085 | /* 73111 */ // GIR_Coverage, 671, |
| 26086 | /* 73111 */ GIR_EraseRootFromParent_Done, |
| 26087 | /* 73112 */ // Label 1637: @73112 |
| 26088 | /* 73112 */ GIM_Try, /*On fail goto*//*Label 1638*/ GIMT_Encode4(73210), // Rule ID 22433 // |
| 26089 | /* 73117 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26090 | /* 73120 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26091 | /* 73127 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26092 | /* 73131 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26093 | /* 73135 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26094 | /* 73139 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26095 | /* 73143 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26096 | /* 73147 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26097 | /* 73151 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26098 | /* 73154 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26099 | /* 73158 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26100 | /* 73165 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26101 | /* 73169 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26102 | /* 73174 */ // MIs[0] dst |
| 26103 | /* 73174 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26104 | /* 73179 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26105 | /* 73181 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26106 | /* 73188 */ // (atomic_store (add:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, GR32:{ *:[i32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (ADD32mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26107 | /* 73188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mr), |
| 26108 | /* 73191 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26109 | /* 73195 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 26110 | /* 73199 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26111 | /* 73202 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26112 | /* 73208 */ GIR_RootConstrainSelectedInstOperands, |
| 26113 | /* 73209 */ // GIR_Coverage, 22433, |
| 26114 | /* 73209 */ GIR_EraseRootFromParent_Done, |
| 26115 | /* 73210 */ // Label 1638: @73210 |
| 26116 | /* 73210 */ GIM_Try, /*On fail goto*//*Label 1639*/ GIMT_Encode4(73308), // Rule ID 26004 // |
| 26117 | /* 73215 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26118 | /* 73218 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26119 | /* 73225 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26120 | /* 73229 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26121 | /* 73233 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26122 | /* 73237 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26123 | /* 73241 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26124 | /* 73246 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26125 | /* 73250 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26126 | /* 73254 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26127 | /* 73257 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26128 | /* 73261 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26129 | /* 73268 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26130 | /* 73272 */ // MIs[0] dst |
| 26131 | /* 73272 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26132 | /* 73277 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26133 | /* 73279 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26134 | /* 73286 */ // (atomic_store (add:{ *:[i32] } GR32:{ *:[i32] }:$src, (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (ADD32mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26135 | /* 73286 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mr), |
| 26136 | /* 73289 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26137 | /* 73293 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26138 | /* 73297 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26139 | /* 73300 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26140 | /* 73306 */ GIR_RootConstrainSelectedInstOperands, |
| 26141 | /* 73307 */ // GIR_Coverage, 26004, |
| 26142 | /* 73307 */ GIR_EraseRootFromParent_Done, |
| 26143 | /* 73308 */ // Label 1639: @73308 |
| 26144 | /* 73308 */ GIM_Try, /*On fail goto*//*Label 1640*/ GIMT_Encode4(73406), // Rule ID 22441 // |
| 26145 | /* 73313 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26146 | /* 73316 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26147 | /* 73323 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26148 | /* 73327 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 26149 | /* 73331 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26150 | /* 73335 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26151 | /* 73339 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26152 | /* 73343 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26153 | /* 73347 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26154 | /* 73350 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26155 | /* 73354 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26156 | /* 73361 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26157 | /* 73365 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26158 | /* 73370 */ // MIs[0] dst |
| 26159 | /* 73370 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26160 | /* 73375 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26161 | /* 73377 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26162 | /* 73384 */ // (atomic_store (and:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, GR32:{ *:[i32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (AND32mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26163 | /* 73384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mr), |
| 26164 | /* 73387 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26165 | /* 73391 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 26166 | /* 73395 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26167 | /* 73398 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26168 | /* 73404 */ GIR_RootConstrainSelectedInstOperands, |
| 26169 | /* 73405 */ // GIR_Coverage, 22441, |
| 26170 | /* 73405 */ GIR_EraseRootFromParent_Done, |
| 26171 | /* 73406 */ // Label 1640: @73406 |
| 26172 | /* 73406 */ GIM_Try, /*On fail goto*//*Label 1641*/ GIMT_Encode4(73504), // Rule ID 26008 // |
| 26173 | /* 73411 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26174 | /* 73414 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26175 | /* 73421 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26176 | /* 73425 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 26177 | /* 73429 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26178 | /* 73433 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26179 | /* 73437 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26180 | /* 73442 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26181 | /* 73446 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26182 | /* 73450 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26183 | /* 73453 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26184 | /* 73457 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26185 | /* 73464 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26186 | /* 73468 */ // MIs[0] dst |
| 26187 | /* 73468 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26188 | /* 73473 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26189 | /* 73475 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26190 | /* 73482 */ // (atomic_store (and:{ *:[i32] } GR32:{ *:[i32] }:$src, (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (AND32mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26191 | /* 73482 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mr), |
| 26192 | /* 73485 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26193 | /* 73489 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26194 | /* 73493 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26195 | /* 73496 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26196 | /* 73502 */ GIR_RootConstrainSelectedInstOperands, |
| 26197 | /* 73503 */ // GIR_Coverage, 26008, |
| 26198 | /* 73503 */ GIR_EraseRootFromParent_Done, |
| 26199 | /* 73504 */ // Label 1641: @73504 |
| 26200 | /* 73504 */ GIM_Try, /*On fail goto*//*Label 1642*/ GIMT_Encode4(73602), // Rule ID 22449 // |
| 26201 | /* 73509 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26202 | /* 73512 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26203 | /* 73519 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26204 | /* 73523 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 26205 | /* 73527 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26206 | /* 73531 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26207 | /* 73535 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26208 | /* 73539 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26209 | /* 73543 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26210 | /* 73546 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26211 | /* 73550 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26212 | /* 73557 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26213 | /* 73561 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26214 | /* 73566 */ // MIs[0] dst |
| 26215 | /* 73566 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26216 | /* 73571 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26217 | /* 73573 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26218 | /* 73580 */ // (atomic_store (or:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, GR32:{ *:[i32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (OR32mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26219 | /* 73580 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mr), |
| 26220 | /* 73583 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26221 | /* 73587 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 26222 | /* 73591 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26223 | /* 73594 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26224 | /* 73600 */ GIR_RootConstrainSelectedInstOperands, |
| 26225 | /* 73601 */ // GIR_Coverage, 22449, |
| 26226 | /* 73601 */ GIR_EraseRootFromParent_Done, |
| 26227 | /* 73602 */ // Label 1642: @73602 |
| 26228 | /* 73602 */ GIM_Try, /*On fail goto*//*Label 1643*/ GIMT_Encode4(73700), // Rule ID 26012 // |
| 26229 | /* 73607 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26230 | /* 73610 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26231 | /* 73617 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26232 | /* 73621 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 26233 | /* 73625 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26234 | /* 73629 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26235 | /* 73633 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26236 | /* 73638 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26237 | /* 73642 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26238 | /* 73646 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26239 | /* 73649 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26240 | /* 73653 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26241 | /* 73660 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26242 | /* 73664 */ // MIs[0] dst |
| 26243 | /* 73664 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26244 | /* 73669 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26245 | /* 73671 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26246 | /* 73678 */ // (atomic_store (or:{ *:[i32] } GR32:{ *:[i32] }:$src, (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (OR32mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26247 | /* 73678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mr), |
| 26248 | /* 73681 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26249 | /* 73685 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26250 | /* 73689 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26251 | /* 73692 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26252 | /* 73698 */ GIR_RootConstrainSelectedInstOperands, |
| 26253 | /* 73699 */ // GIR_Coverage, 26012, |
| 26254 | /* 73699 */ GIR_EraseRootFromParent_Done, |
| 26255 | /* 73700 */ // Label 1643: @73700 |
| 26256 | /* 73700 */ GIM_Try, /*On fail goto*//*Label 1644*/ GIMT_Encode4(73798), // Rule ID 22465 // |
| 26257 | /* 73705 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26258 | /* 73708 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26259 | /* 73715 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26260 | /* 73719 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 26261 | /* 73723 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26262 | /* 73727 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26263 | /* 73731 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26264 | /* 73735 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26265 | /* 73739 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26266 | /* 73742 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26267 | /* 73746 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26268 | /* 73753 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26269 | /* 73757 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26270 | /* 73762 */ // MIs[0] dst |
| 26271 | /* 73762 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26272 | /* 73767 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26273 | /* 73769 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26274 | /* 73776 */ // (atomic_store (sub:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, GR32:{ *:[i32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (SUB32mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26275 | /* 73776 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mr), |
| 26276 | /* 73779 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26277 | /* 73783 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 26278 | /* 73787 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26279 | /* 73790 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26280 | /* 73796 */ GIR_RootConstrainSelectedInstOperands, |
| 26281 | /* 73797 */ // GIR_Coverage, 22465, |
| 26282 | /* 73797 */ GIR_EraseRootFromParent_Done, |
| 26283 | /* 73798 */ // Label 1644: @73798 |
| 26284 | /* 73798 */ GIM_Try, /*On fail goto*//*Label 1645*/ GIMT_Encode4(73896), // Rule ID 22457 // |
| 26285 | /* 73803 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26286 | /* 73806 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26287 | /* 73813 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26288 | /* 73817 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 26289 | /* 73821 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26290 | /* 73825 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26291 | /* 73829 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26292 | /* 73833 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26293 | /* 73837 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26294 | /* 73840 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26295 | /* 73844 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26296 | /* 73851 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26297 | /* 73855 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26298 | /* 73860 */ // MIs[0] dst |
| 26299 | /* 73860 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26300 | /* 73865 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26301 | /* 73867 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26302 | /* 73874 */ // (atomic_store (xor:{ *:[i32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>, GR32:{ *:[i32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (XOR32mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26303 | /* 73874 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mr), |
| 26304 | /* 73877 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26305 | /* 73881 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 26306 | /* 73885 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26307 | /* 73888 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26308 | /* 73894 */ GIR_RootConstrainSelectedInstOperands, |
| 26309 | /* 73895 */ // GIR_Coverage, 22457, |
| 26310 | /* 73895 */ GIR_EraseRootFromParent_Done, |
| 26311 | /* 73896 */ // Label 1645: @73896 |
| 26312 | /* 73896 */ GIM_Try, /*On fail goto*//*Label 1646*/ GIMT_Encode4(73994), // Rule ID 26016 // |
| 26313 | /* 73901 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26314 | /* 73904 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26315 | /* 73911 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26316 | /* 73915 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 26317 | /* 73919 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26318 | /* 73923 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26319 | /* 73927 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26320 | /* 73932 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26321 | /* 73936 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26322 | /* 73940 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26323 | /* 73943 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26324 | /* 73947 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26325 | /* 73954 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26326 | /* 73958 */ // MIs[0] dst |
| 26327 | /* 73958 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26328 | /* 73963 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26329 | /* 73965 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26330 | /* 73972 */ // (atomic_store (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (XOR32mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26331 | /* 73972 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mr), |
| 26332 | /* 73975 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26333 | /* 73979 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26334 | /* 73983 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26335 | /* 73986 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26336 | /* 73992 */ GIR_RootConstrainSelectedInstOperands, |
| 26337 | /* 73993 */ // GIR_Coverage, 26016, |
| 26338 | /* 73993 */ GIR_EraseRootFromParent_Done, |
| 26339 | /* 73994 */ // Label 1646: @73994 |
| 26340 | /* 73994 */ GIM_Try, /*On fail goto*//*Label 1647*/ GIMT_Encode4(74105), // Rule ID 837 // |
| 26341 | /* 73999 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26342 | /* 74002 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26343 | /* 74006 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26344 | /* 74010 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHL), |
| 26345 | /* 74014 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26346 | /* 74018 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26347 | /* 74022 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 26348 | /* 74026 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26349 | /* 74030 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26350 | /* 74034 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26351 | /* 74037 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26352 | /* 74041 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26353 | /* 74045 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26354 | /* 74050 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26355 | /* 74055 */ // MIs[0] src1 |
| 26356 | /* 74055 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26357 | /* 74060 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26358 | /* 74062 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26359 | /* 74069 */ // (st (fshl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src2, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHLD32mrCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26360 | /* 74069 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26361 | /* 74073 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 26362 | /* 74079 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // CL |
| 26363 | /* 74083 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32mrCL), |
| 26364 | /* 74086 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26365 | /* 74090 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26366 | /* 74094 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26367 | /* 74097 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26368 | /* 74103 */ GIR_RootConstrainSelectedInstOperands, |
| 26369 | /* 74104 */ // GIR_Coverage, 837, |
| 26370 | /* 74104 */ GIR_EraseRootFromParent_Done, |
| 26371 | /* 74105 */ // Label 1647: @74105 |
| 26372 | /* 74105 */ GIM_Try, /*On fail goto*//*Label 1648*/ GIMT_Encode4(74216), // Rule ID 861 // |
| 26373 | /* 74110 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26374 | /* 74113 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26375 | /* 74117 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26376 | /* 74121 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHR), |
| 26377 | /* 74125 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26378 | /* 74129 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26379 | /* 74133 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 26380 | /* 74137 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26381 | /* 74142 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26382 | /* 74146 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26383 | /* 74150 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26384 | /* 74153 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26385 | /* 74157 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26386 | /* 74161 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26387 | /* 74166 */ // MIs[0] src1 |
| 26388 | /* 74166 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26389 | /* 74171 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26390 | /* 74173 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26391 | /* 74180 */ // (st (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHRD32mrCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26392 | /* 74180 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26393 | /* 74184 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 26394 | /* 74190 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // CL |
| 26395 | /* 74194 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32mrCL), |
| 26396 | /* 74197 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26397 | /* 74201 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 26398 | /* 74205 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26399 | /* 74208 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26400 | /* 74214 */ GIR_RootConstrainSelectedInstOperands, |
| 26401 | /* 74215 */ // GIR_Coverage, 861, |
| 26402 | /* 74215 */ GIR_EraseRootFromParent_Done, |
| 26403 | /* 74216 */ // Label 1648: @74216 |
| 26404 | /* 74216 */ GIM_Try, /*On fail goto*//*Label 1649*/ GIMT_Encode4(74304), // Rule ID 411 // |
| 26405 | /* 74221 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26406 | /* 74224 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26407 | /* 74228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26408 | /* 74232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26409 | /* 74236 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26410 | /* 74240 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26411 | /* 74244 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26412 | /* 74248 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26413 | /* 74252 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26414 | /* 74255 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26415 | /* 74259 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26416 | /* 74263 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26417 | /* 74268 */ // MIs[0] src1 |
| 26418 | /* 74268 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26419 | /* 74273 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26420 | /* 74275 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26421 | /* 74282 */ // (st (add:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR32:{ *:[i32] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD32mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26422 | /* 74282 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mr), |
| 26423 | /* 74285 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26424 | /* 74289 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26425 | /* 74293 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26426 | /* 74296 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26427 | /* 74302 */ GIR_RootConstrainSelectedInstOperands, |
| 26428 | /* 74303 */ // GIR_Coverage, 411, |
| 26429 | /* 74303 */ GIR_EraseRootFromParent_Done, |
| 26430 | /* 74304 */ // Label 1649: @74304 |
| 26431 | /* 74304 */ GIM_Try, /*On fail goto*//*Label 1650*/ GIMT_Encode4(74392), // Rule ID 23224 // |
| 26432 | /* 74309 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26433 | /* 74312 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26434 | /* 74316 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26435 | /* 74320 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26436 | /* 74324 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26437 | /* 74328 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26438 | /* 74332 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26439 | /* 74337 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26440 | /* 74341 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26441 | /* 74345 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26442 | /* 74348 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26443 | /* 74352 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26444 | /* 74356 */ // MIs[0] src1 |
| 26445 | /* 74356 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26446 | /* 74361 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26447 | /* 74363 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26448 | /* 74370 */ // (st (add:{ *:[i32] } GR32:{ *:[i32] }:$src2, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD32mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26449 | /* 74370 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mr), |
| 26450 | /* 74373 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26451 | /* 74377 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 26452 | /* 74381 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26453 | /* 74384 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26454 | /* 74390 */ GIR_RootConstrainSelectedInstOperands, |
| 26455 | /* 74391 */ // GIR_Coverage, 23224, |
| 26456 | /* 74391 */ GIR_EraseRootFromParent_Done, |
| 26457 | /* 74392 */ // Label 1650: @74392 |
| 26458 | /* 74392 */ GIM_Try, /*On fail goto*//*Label 1651*/ GIMT_Encode4(74480), // Rule ID 303 // |
| 26459 | /* 74397 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26460 | /* 74400 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26461 | /* 74404 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26462 | /* 74408 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 26463 | /* 74412 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26464 | /* 74416 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26465 | /* 74420 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26466 | /* 74424 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26467 | /* 74428 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26468 | /* 74431 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26469 | /* 74435 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26470 | /* 74439 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26471 | /* 74444 */ // MIs[0] src1 |
| 26472 | /* 74444 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26473 | /* 74449 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26474 | /* 74451 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26475 | /* 74458 */ // (st (and:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR32:{ *:[i32] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND32mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26476 | /* 74458 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mr), |
| 26477 | /* 74461 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26478 | /* 74465 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26479 | /* 74469 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26480 | /* 74472 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26481 | /* 74478 */ GIR_RootConstrainSelectedInstOperands, |
| 26482 | /* 74479 */ // GIR_Coverage, 303, |
| 26483 | /* 74479 */ GIR_EraseRootFromParent_Done, |
| 26484 | /* 74480 */ // Label 1651: @74480 |
| 26485 | /* 74480 */ GIM_Try, /*On fail goto*//*Label 1652*/ GIMT_Encode4(74568), // Rule ID 23188 // |
| 26486 | /* 74485 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26487 | /* 74488 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26488 | /* 74492 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26489 | /* 74496 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 26490 | /* 74500 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26491 | /* 74504 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26492 | /* 74508 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26493 | /* 74513 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26494 | /* 74517 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26495 | /* 74521 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26496 | /* 74524 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26497 | /* 74528 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26498 | /* 74532 */ // MIs[0] src1 |
| 26499 | /* 74532 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26500 | /* 74537 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26501 | /* 74539 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26502 | /* 74546 */ // (st (and:{ *:[i32] } GR32:{ *:[i32] }:$src2, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND32mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26503 | /* 74546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mr), |
| 26504 | /* 74549 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26505 | /* 74553 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 26506 | /* 74557 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26507 | /* 74560 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26508 | /* 74566 */ GIR_RootConstrainSelectedInstOperands, |
| 26509 | /* 74567 */ // GIR_Coverage, 23188, |
| 26510 | /* 74567 */ GIR_EraseRootFromParent_Done, |
| 26511 | /* 74568 */ // Label 1652: @74568 |
| 26512 | /* 74568 */ GIM_Try, /*On fail goto*//*Label 1653*/ GIMT_Encode4(74666), // Rule ID 751 // |
| 26513 | /* 74573 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26514 | /* 74576 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26515 | /* 74580 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26516 | /* 74584 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 26517 | /* 74588 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26518 | /* 74592 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26519 | /* 74596 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26520 | /* 74600 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26521 | /* 74604 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26522 | /* 74607 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26523 | /* 74611 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26524 | /* 74615 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26525 | /* 74620 */ // MIs[0] src1 |
| 26526 | /* 74620 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26527 | /* 74625 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26528 | /* 74627 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26529 | /* 74634 */ // (st (sra:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SAR32mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 26530 | /* 74634 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26531 | /* 74638 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 26532 | /* 74644 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 26533 | /* 74648 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32mCL), |
| 26534 | /* 74651 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26535 | /* 74655 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26536 | /* 74658 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26537 | /* 74664 */ GIR_RootConstrainSelectedInstOperands, |
| 26538 | /* 74665 */ // GIR_Coverage, 751, |
| 26539 | /* 74665 */ GIR_EraseRootFromParent_Done, |
| 26540 | /* 74666 */ // Label 1653: @74666 |
| 26541 | /* 74666 */ GIM_Try, /*On fail goto*//*Label 1654*/ GIMT_Encode4(74764), // Rule ID 719 // |
| 26542 | /* 74671 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26543 | /* 74674 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26544 | /* 74678 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26545 | /* 74682 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 26546 | /* 74686 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26547 | /* 74690 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26548 | /* 74694 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26549 | /* 74698 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26550 | /* 74702 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26551 | /* 74705 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26552 | /* 74709 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26553 | /* 74713 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26554 | /* 74718 */ // MIs[0] src1 |
| 26555 | /* 74718 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26556 | /* 74723 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26557 | /* 74725 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26558 | /* 74732 */ // (st (srl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHR32mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 26559 | /* 74732 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26560 | /* 74736 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 26561 | /* 74742 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 26562 | /* 74746 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32mCL), |
| 26563 | /* 74749 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26564 | /* 74753 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26565 | /* 74756 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26566 | /* 74762 */ GIR_RootConstrainSelectedInstOperands, |
| 26567 | /* 74763 */ // GIR_Coverage, 719, |
| 26568 | /* 74763 */ GIR_EraseRootFromParent_Done, |
| 26569 | /* 74764 */ // Label 1654: @74764 |
| 26570 | /* 74764 */ GIM_Try, /*On fail goto*//*Label 1655*/ GIMT_Encode4(74852), // Rule ID 339 // |
| 26571 | /* 74769 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26572 | /* 74772 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26573 | /* 74776 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26574 | /* 74780 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 26575 | /* 74784 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26576 | /* 74788 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26577 | /* 74792 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26578 | /* 74796 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26579 | /* 74800 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26580 | /* 74803 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26581 | /* 74807 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26582 | /* 74811 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26583 | /* 74816 */ // MIs[0] src1 |
| 26584 | /* 74816 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26585 | /* 74821 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26586 | /* 74823 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26587 | /* 74830 */ // (st (or:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR32:{ *:[i32] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR32mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26588 | /* 74830 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mr), |
| 26589 | /* 74833 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26590 | /* 74837 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26591 | /* 74841 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26592 | /* 74844 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26593 | /* 74850 */ GIR_RootConstrainSelectedInstOperands, |
| 26594 | /* 74851 */ // GIR_Coverage, 339, |
| 26595 | /* 74851 */ GIR_EraseRootFromParent_Done, |
| 26596 | /* 74852 */ // Label 1655: @74852 |
| 26597 | /* 74852 */ GIM_Try, /*On fail goto*//*Label 1656*/ GIMT_Encode4(74940), // Rule ID 23200 // |
| 26598 | /* 74857 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26599 | /* 74860 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26600 | /* 74864 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26601 | /* 74868 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 26602 | /* 74872 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26603 | /* 74876 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26604 | /* 74880 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26605 | /* 74885 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26606 | /* 74889 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26607 | /* 74893 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26608 | /* 74896 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26609 | /* 74900 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26610 | /* 74904 */ // MIs[0] src1 |
| 26611 | /* 74904 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26612 | /* 74909 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26613 | /* 74911 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26614 | /* 74918 */ // (st (or:{ *:[i32] } GR32:{ *:[i32] }:$src2, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR32mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26615 | /* 74918 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mr), |
| 26616 | /* 74921 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26617 | /* 74925 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 26618 | /* 74929 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26619 | /* 74932 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26620 | /* 74938 */ GIR_RootConstrainSelectedInstOperands, |
| 26621 | /* 74939 */ // GIR_Coverage, 23200, |
| 26622 | /* 74939 */ GIR_EraseRootFromParent_Done, |
| 26623 | /* 74940 */ // Label 1656: @74940 |
| 26624 | /* 74940 */ GIM_Try, /*On fail goto*//*Label 1657*/ GIMT_Encode4(75038), // Rule ID 783 // |
| 26625 | /* 74945 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26626 | /* 74948 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26627 | /* 74952 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26628 | /* 74956 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 26629 | /* 74960 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26630 | /* 74964 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26631 | /* 74968 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26632 | /* 74972 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26633 | /* 74976 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26634 | /* 74979 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26635 | /* 74983 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26636 | /* 74987 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26637 | /* 74992 */ // MIs[0] src1 |
| 26638 | /* 74992 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26639 | /* 74997 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26640 | /* 74999 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26641 | /* 75006 */ // (st (rotl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL32mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 26642 | /* 75006 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26643 | /* 75010 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 26644 | /* 75016 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 26645 | /* 75020 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32mCL), |
| 26646 | /* 75023 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26647 | /* 75027 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26648 | /* 75030 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26649 | /* 75036 */ GIR_RootConstrainSelectedInstOperands, |
| 26650 | /* 75037 */ // GIR_Coverage, 783, |
| 26651 | /* 75037 */ GIR_EraseRootFromParent_Done, |
| 26652 | /* 75038 */ // Label 1657: @75038 |
| 26653 | /* 75038 */ GIM_Try, /*On fail goto*//*Label 1658*/ GIMT_Encode4(75136), // Rule ID 815 // |
| 26654 | /* 75043 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26655 | /* 75046 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26656 | /* 75050 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26657 | /* 75054 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 26658 | /* 75058 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26659 | /* 75062 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26660 | /* 75066 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26661 | /* 75070 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26662 | /* 75074 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26663 | /* 75077 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26664 | /* 75081 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26665 | /* 75085 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26666 | /* 75090 */ // MIs[0] src1 |
| 26667 | /* 75090 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26668 | /* 75095 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26669 | /* 75097 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26670 | /* 75104 */ // (st (rotr:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR32mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 26671 | /* 75104 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26672 | /* 75108 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 26673 | /* 75114 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 26674 | /* 75118 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32mCL), |
| 26675 | /* 75121 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26676 | /* 75125 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26677 | /* 75128 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26678 | /* 75134 */ GIR_RootConstrainSelectedInstOperands, |
| 26679 | /* 75135 */ // GIR_Coverage, 815, |
| 26680 | /* 75135 */ GIR_EraseRootFromParent_Done, |
| 26681 | /* 75136 */ // Label 1658: @75136 |
| 26682 | /* 75136 */ GIM_Try, /*On fail goto*//*Label 1659*/ GIMT_Encode4(75234), // Rule ID 687 // |
| 26683 | /* 75141 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26684 | /* 75144 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26685 | /* 75148 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26686 | /* 75152 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 26687 | /* 75156 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26688 | /* 75160 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26689 | /* 75164 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26690 | /* 75168 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26691 | /* 75172 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26692 | /* 75175 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26693 | /* 75179 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26694 | /* 75183 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26695 | /* 75188 */ // MIs[0] src1 |
| 26696 | /* 75188 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26697 | /* 75193 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26698 | /* 75195 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26699 | /* 75202 */ // (st (shl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHL32mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 26700 | /* 75202 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26701 | /* 75206 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 26702 | /* 75212 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 26703 | /* 75216 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32mCL), |
| 26704 | /* 75219 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26705 | /* 75223 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26706 | /* 75226 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26707 | /* 75232 */ GIR_RootConstrainSelectedInstOperands, |
| 26708 | /* 75233 */ // GIR_Coverage, 687, |
| 26709 | /* 75233 */ GIR_EraseRootFromParent_Done, |
| 26710 | /* 75234 */ // Label 1659: @75234 |
| 26711 | /* 75234 */ GIM_Try, /*On fail goto*//*Label 1660*/ GIMT_Encode4(75322), // Rule ID 447 // |
| 26712 | /* 75239 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26713 | /* 75242 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26714 | /* 75246 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26715 | /* 75250 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 26716 | /* 75254 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26717 | /* 75258 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26718 | /* 75262 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26719 | /* 75266 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26720 | /* 75270 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26721 | /* 75273 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26722 | /* 75277 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26723 | /* 75281 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26724 | /* 75286 */ // MIs[0] src1 |
| 26725 | /* 75286 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26726 | /* 75291 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26727 | /* 75293 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26728 | /* 75300 */ // (st (sub:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR32:{ *:[i32] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB32mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26729 | /* 75300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mr), |
| 26730 | /* 75303 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26731 | /* 75307 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26732 | /* 75311 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26733 | /* 75314 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26734 | /* 75320 */ GIR_RootConstrainSelectedInstOperands, |
| 26735 | /* 75321 */ // GIR_Coverage, 447, |
| 26736 | /* 75321 */ GIR_EraseRootFromParent_Done, |
| 26737 | /* 75322 */ // Label 1660: @75322 |
| 26738 | /* 75322 */ GIM_Try, /*On fail goto*//*Label 1661*/ GIMT_Encode4(75410), // Rule ID 375 // |
| 26739 | /* 75327 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26740 | /* 75330 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26741 | /* 75334 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26742 | /* 75338 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 26743 | /* 75342 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26744 | /* 75346 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26745 | /* 75350 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26746 | /* 75354 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26747 | /* 75358 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26748 | /* 75361 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26749 | /* 75365 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26750 | /* 75369 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26751 | /* 75374 */ // MIs[0] src1 |
| 26752 | /* 75374 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26753 | /* 75379 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26754 | /* 75381 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26755 | /* 75388 */ // (st (xor:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR32:{ *:[i32] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR32mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26756 | /* 75388 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mr), |
| 26757 | /* 75391 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26758 | /* 75395 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26759 | /* 75399 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26760 | /* 75402 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26761 | /* 75408 */ GIR_RootConstrainSelectedInstOperands, |
| 26762 | /* 75409 */ // GIR_Coverage, 375, |
| 26763 | /* 75409 */ GIR_EraseRootFromParent_Done, |
| 26764 | /* 75410 */ // Label 1661: @75410 |
| 26765 | /* 75410 */ GIM_Try, /*On fail goto*//*Label 1662*/ GIMT_Encode4(75498), // Rule ID 23212 // |
| 26766 | /* 75415 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26767 | /* 75418 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26768 | /* 75422 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26769 | /* 75426 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 26770 | /* 75430 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26771 | /* 75434 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26772 | /* 75438 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26773 | /* 75443 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26774 | /* 75447 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26775 | /* 75451 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26776 | /* 75454 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26777 | /* 75458 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26778 | /* 75462 */ // MIs[0] src1 |
| 26779 | /* 75462 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26780 | /* 75467 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26781 | /* 75469 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26782 | /* 75476 */ // (st (xor:{ *:[i32] } GR32:{ *:[i32] }:$src2, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR32mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 26783 | /* 75476 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mr), |
| 26784 | /* 75479 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26785 | /* 75483 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 26786 | /* 75487 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26787 | /* 75490 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26788 | /* 75496 */ GIR_RootConstrainSelectedInstOperands, |
| 26789 | /* 75497 */ // GIR_Coverage, 23212, |
| 26790 | /* 75497 */ GIR_EraseRootFromParent_Done, |
| 26791 | /* 75498 */ // Label 1662: @75498 |
| 26792 | /* 75498 */ GIM_Try, /*On fail goto*//*Label 1663*/ GIMT_Encode4(75552), // Rule ID 26 // |
| 26793 | /* 75503 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26794 | /* 75506 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26795 | /* 75510 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26796 | /* 75514 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 26797 | /* 75518 */ // MIs[1] Operand 1 |
| 26798 | /* 75518 */ // No operand predicates |
| 26799 | /* 75518 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 26800 | /* 75522 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26801 | /* 75526 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26802 | /* 75528 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26803 | /* 75535 */ // (st (imm:{ *:[i32] })<<P:Predicate_imm_su>>:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV32mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i32] }):$src) |
| 26804 | /* 75535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32mi), |
| 26805 | /* 75538 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26806 | /* 75542 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 26807 | /* 75545 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26808 | /* 75550 */ GIR_RootConstrainSelectedInstOperands, |
| 26809 | /* 75551 */ // GIR_Coverage, 26, |
| 26810 | /* 75551 */ GIR_EraseRootFromParent_Done, |
| 26811 | /* 75552 */ // Label 1663: @75552 |
| 26812 | /* 75552 */ GIM_Try, /*On fail goto*//*Label 1664*/ GIMT_Encode4(75618), // Rule ID 22519 // |
| 26813 | /* 75557 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 26814 | /* 75560 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26815 | /* 75563 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26816 | /* 75570 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26817 | /* 75574 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 26818 | /* 75578 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26819 | /* 75582 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 26820 | /* 75587 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26821 | /* 75591 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26822 | /* 75593 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26823 | /* 75600 */ // (atomic_store (bitconvert:{ *:[i32] } FR32:{ *:[f32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (MOVSSmr addr:{ *:[iPTR] }:$dst, FR32:{ *:[f32] }:$src) |
| 26824 | /* 75600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSSmr), |
| 26825 | /* 75603 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26826 | /* 75607 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26827 | /* 75611 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26828 | /* 75616 */ GIR_RootConstrainSelectedInstOperands, |
| 26829 | /* 75617 */ // GIR_Coverage, 22519, |
| 26830 | /* 75617 */ GIR_EraseRootFromParent_Done, |
| 26831 | /* 75618 */ // Label 1664: @75618 |
| 26832 | /* 75618 */ GIM_Try, /*On fail goto*//*Label 1665*/ GIMT_Encode4(75684), // Rule ID 22520 // |
| 26833 | /* 75623 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 26834 | /* 75626 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26835 | /* 75629 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26836 | /* 75636 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26837 | /* 75640 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 26838 | /* 75644 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26839 | /* 75648 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 26840 | /* 75653 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26841 | /* 75657 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26842 | /* 75659 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26843 | /* 75666 */ // (atomic_store (bitconvert:{ *:[i32] } FR32:{ *:[f32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (VMOVSSmr addr:{ *:[iPTR] }:$dst, FR32:{ *:[f32] }:$src) |
| 26844 | /* 75666 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSmr), |
| 26845 | /* 75669 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26846 | /* 75673 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26847 | /* 75677 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26848 | /* 75682 */ GIR_RootConstrainSelectedInstOperands, |
| 26849 | /* 75683 */ // GIR_Coverage, 22520, |
| 26850 | /* 75683 */ GIR_EraseRootFromParent_Done, |
| 26851 | /* 75684 */ // Label 1665: @75684 |
| 26852 | /* 75684 */ GIM_Try, /*On fail goto*//*Label 1666*/ GIMT_Encode4(75750), // Rule ID 22521 // |
| 26853 | /* 75689 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 26854 | /* 75692 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26855 | /* 75695 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26856 | /* 75702 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26857 | /* 75706 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 26858 | /* 75710 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26859 | /* 75714 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 26860 | /* 75719 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26861 | /* 75723 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26862 | /* 75725 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26863 | /* 75732 */ // (atomic_store (bitconvert:{ *:[i32] } FR32:{ *:[f32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (VMOVSSZmr addr:{ *:[iPTR] }:$dst, FR32:{ *:[f32] }:$src) |
| 26864 | /* 75732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSZmr), |
| 26865 | /* 75735 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26866 | /* 75739 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26867 | /* 75743 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26868 | /* 75748 */ GIR_RootConstrainSelectedInstOperands, |
| 26869 | /* 75749 */ // GIR_Coverage, 22521, |
| 26870 | /* 75749 */ GIR_EraseRootFromParent_Done, |
| 26871 | /* 75750 */ // Label 1666: @75750 |
| 26872 | /* 75750 */ GIM_Try, /*On fail goto*//*Label 1667*/ GIMT_Encode4(75803), // Rule ID 22509 // |
| 26873 | /* 75755 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26874 | /* 75758 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26875 | /* 75765 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26876 | /* 75769 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 26877 | /* 75773 */ // MIs[1] Operand 1 |
| 26878 | /* 75773 */ // No operand predicates |
| 26879 | /* 75773 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26880 | /* 75777 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26881 | /* 75779 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26882 | /* 75786 */ // (atomic_store (imm:{ *:[i32] }):$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (MOV32mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i32] }):$src) |
| 26883 | /* 75786 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32mi), |
| 26884 | /* 75789 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26885 | /* 75793 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 26886 | /* 75796 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26887 | /* 75801 */ GIR_RootConstrainSelectedInstOperands, |
| 26888 | /* 75802 */ // GIR_Coverage, 22509, |
| 26889 | /* 75802 */ GIR_EraseRootFromParent_Done, |
| 26890 | /* 75803 */ // Label 1667: @75803 |
| 26891 | /* 75803 */ GIM_Try, /*On fail goto*//*Label 1668*/ GIMT_Encode4(75866), // Rule ID 52 // |
| 26892 | /* 75808 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 26893 | /* 75811 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26894 | /* 75814 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26895 | /* 75818 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26896 | /* 75822 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 26897 | /* 75826 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26898 | /* 75830 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26899 | /* 75835 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26900 | /* 75839 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26901 | /* 75841 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26902 | /* 75848 */ // (st (bswap:{ *:[i32] } GR32:{ *:[i32] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE32mr addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src1) |
| 26903 | /* 75848 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE32mr), |
| 26904 | /* 75851 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26905 | /* 75855 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 26906 | /* 75859 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26907 | /* 75864 */ GIR_RootConstrainSelectedInstOperands, |
| 26908 | /* 75865 */ // GIR_Coverage, 52, |
| 26909 | /* 75865 */ GIR_EraseRootFromParent_Done, |
| 26910 | /* 75866 */ // Label 1668: @75866 |
| 26911 | /* 75866 */ GIM_Try, /*On fail goto*//*Label 1669*/ GIMT_Encode4(75929), // Rule ID 58 // |
| 26912 | /* 75871 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 26913 | /* 75874 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26914 | /* 75877 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26915 | /* 75881 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26916 | /* 75885 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 26917 | /* 75889 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26918 | /* 75893 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26919 | /* 75898 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26920 | /* 75902 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26921 | /* 75904 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26922 | /* 75911 */ // (st (bswap:{ *:[i32] } GR32:{ *:[i32] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE32mr_EVEX addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src1) |
| 26923 | /* 75911 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE32mr_EVEX), |
| 26924 | /* 75914 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26925 | /* 75918 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 26926 | /* 75922 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26927 | /* 75927 */ GIR_RootConstrainSelectedInstOperands, |
| 26928 | /* 75928 */ // GIR_Coverage, 58, |
| 26929 | /* 75928 */ GIR_EraseRootFromParent_Done, |
| 26930 | /* 75929 */ // Label 1669: @75929 |
| 26931 | /* 75929 */ GIM_Try, /*On fail goto*//*Label 1670*/ GIMT_Encode4(75974), // Rule ID 22513 // |
| 26932 | /* 75934 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26933 | /* 75937 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26934 | /* 75944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26935 | /* 75948 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26936 | /* 75952 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26937 | /* 75959 */ // (atomic_store GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (MOV32mr addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26938 | /* 75959 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32mr), |
| 26939 | /* 75962 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26940 | /* 75966 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 26941 | /* 75968 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 26942 | /* 75972 */ GIR_RootConstrainSelectedInstOperands, |
| 26943 | /* 75973 */ // GIR_Coverage, 22513, |
| 26944 | /* 75973 */ GIR_EraseRootFromParent_Done, |
| 26945 | /* 75974 */ // Label 1670: @75974 |
| 26946 | /* 75974 */ GIM_Try, /*On fail goto*//*Label 1671*/ GIMT_Encode4(76016), // Rule ID 34 // |
| 26947 | /* 75979 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26948 | /* 75982 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26949 | /* 75986 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26950 | /* 75990 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26951 | /* 75994 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26952 | /* 76001 */ // (st GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV32mr addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26953 | /* 76001 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32mr), |
| 26954 | /* 76004 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26955 | /* 76008 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 26956 | /* 76010 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 26957 | /* 76014 */ GIR_RootConstrainSelectedInstOperands, |
| 26958 | /* 76015 */ // GIR_Coverage, 34, |
| 26959 | /* 76015 */ GIR_EraseRootFromParent_Done, |
| 26960 | /* 76016 */ // Label 1671: @76016 |
| 26961 | /* 76016 */ GIM_Try, /*On fail goto*//*Label 1672*/ GIMT_Encode4(76064), // Rule ID 1095 // |
| 26962 | /* 76021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 26963 | /* 76024 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26964 | /* 76027 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26965 | /* 76031 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 26966 | /* 76035 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26967 | /* 76039 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26968 | /* 76046 */ // (st RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ST_Fp32m:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP32:{ *:[f32] }:$src) |
| 26969 | /* 76046 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_Fp32m), |
| 26970 | /* 76049 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 26971 | /* 76053 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 26972 | /* 76055 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 26973 | /* 76058 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 26974 | /* 76062 */ GIR_RootConstrainSelectedInstOperands, |
| 26975 | /* 76063 */ // GIR_Coverage, 1095, |
| 26976 | /* 76063 */ GIR_EraseRootFromParent_Done, |
| 26977 | /* 76064 */ // Label 1672: @76064 |
| 26978 | /* 76064 */ GIM_Try, /*On fail goto*//*Label 1673*/ GIMT_Encode4(76109), // Rule ID 1688 // |
| 26979 | /* 76069 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 26980 | /* 76072 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26981 | /* 76075 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26982 | /* 76079 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 26983 | /* 76083 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26984 | /* 76087 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26985 | /* 76094 */ // (st FR32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVSSmr addr:{ *:[iPTR] }:$dst, FR32:{ *:[f32] }:$src) |
| 26986 | /* 76094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSmr), |
| 26987 | /* 76097 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26988 | /* 76101 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 26989 | /* 76103 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 26990 | /* 76107 */ GIR_RootConstrainSelectedInstOperands, |
| 26991 | /* 76108 */ // GIR_Coverage, 1688, |
| 26992 | /* 76108 */ GIR_EraseRootFromParent_Done, |
| 26993 | /* 76109 */ // Label 1673: @76109 |
| 26994 | /* 76109 */ GIM_Try, /*On fail goto*//*Label 1674*/ GIMT_Encode4(76154), // Rule ID 1690 // |
| 26995 | /* 76114 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 26996 | /* 76117 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26997 | /* 76120 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26998 | /* 76124 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 26999 | /* 76128 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 27000 | /* 76132 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27001 | /* 76139 */ // (st FR32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVSSmr addr:{ *:[iPTR] }:$dst, FR32:{ *:[f32] }:$src) |
| 27002 | /* 76139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSSmr), |
| 27003 | /* 76142 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27004 | /* 76146 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 27005 | /* 76148 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 27006 | /* 76152 */ GIR_RootConstrainSelectedInstOperands, |
| 27007 | /* 76153 */ // GIR_Coverage, 1690, |
| 27008 | /* 76153 */ GIR_EraseRootFromParent_Done, |
| 27009 | /* 76154 */ // Label 1674: @76154 |
| 27010 | /* 76154 */ GIM_Try, /*On fail goto*//*Label 1675*/ GIMT_Encode4(76199), // Rule ID 4610 // |
| 27011 | /* 76159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 27012 | /* 76162 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27013 | /* 76165 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27014 | /* 76169 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 27015 | /* 76173 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 27016 | /* 76177 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27017 | /* 76184 */ // (st FR32X:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVSSZmr addr:{ *:[iPTR] }:$dst, FR32X:{ *:[f32] }:$src) |
| 27018 | /* 76184 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSZmr), |
| 27019 | /* 76187 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27020 | /* 76191 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 27021 | /* 76193 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 27022 | /* 76197 */ GIR_RootConstrainSelectedInstOperands, |
| 27023 | /* 76198 */ // GIR_Coverage, 4610, |
| 27024 | /* 76198 */ GIR_EraseRootFromParent_Done, |
| 27025 | /* 76199 */ // Label 1675: @76199 |
| 27026 | /* 76199 */ GIM_Reject, |
| 27027 | /* 76200 */ // Label 1478: @76200 |
| 27028 | /* 76200 */ GIM_Try, /*On fail goto*//*Label 1676*/ GIMT_Encode4(76296), // Rule ID 22494 // |
| 27029 | /* 76205 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 27030 | /* 76208 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27031 | /* 76211 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27032 | /* 76218 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27033 | /* 76222 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27034 | /* 76226 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27035 | /* 76230 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27036 | /* 76234 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27037 | /* 76238 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27038 | /* 76242 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27039 | /* 76245 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27040 | /* 76249 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27041 | /* 76256 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27042 | /* 76260 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 27043 | /* 76264 */ // MIs[0] dst |
| 27044 | /* 76264 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27045 | /* 76269 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27046 | /* 76271 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27047 | /* 76278 */ // (atomic_store (add:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, 1:{ *:[i64] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (INC64m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 27048 | /* 76278 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC64m), |
| 27049 | /* 76281 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27050 | /* 76285 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27051 | /* 76288 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27052 | /* 76294 */ GIR_RootConstrainSelectedInstOperands, |
| 27053 | /* 76295 */ // GIR_Coverage, 22494, |
| 27054 | /* 76295 */ GIR_EraseRootFromParent_Done, |
| 27055 | /* 76296 */ // Label 1676: @76296 |
| 27056 | /* 76296 */ GIM_Try, /*On fail goto*//*Label 1677*/ GIMT_Encode4(76392), // Rule ID 22498 // |
| 27057 | /* 76301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 27058 | /* 76304 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27059 | /* 76307 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27060 | /* 76314 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27061 | /* 76318 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27062 | /* 76322 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27063 | /* 76326 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27064 | /* 76330 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27065 | /* 76334 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27066 | /* 76338 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27067 | /* 76341 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27068 | /* 76345 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27069 | /* 76352 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27070 | /* 76356 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 27071 | /* 76360 */ // MIs[0] dst |
| 27072 | /* 76360 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27073 | /* 76365 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27074 | /* 76367 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27075 | /* 76374 */ // (atomic_store (add:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, -1:{ *:[i64] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (DEC64m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 27076 | /* 76374 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC64m), |
| 27077 | /* 76377 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27078 | /* 76381 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27079 | /* 76384 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27080 | /* 76390 */ GIR_RootConstrainSelectedInstOperands, |
| 27081 | /* 76391 */ // GIR_Coverage, 22498, |
| 27082 | /* 76391 */ GIR_EraseRootFromParent_Done, |
| 27083 | /* 76392 */ // Label 1677: @76392 |
| 27084 | /* 76392 */ GIM_Try, /*On fail goto*//*Label 1678*/ GIMT_Encode4(76485), // Rule ID 22502 // |
| 27085 | /* 76397 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27086 | /* 76400 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27087 | /* 76407 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27088 | /* 76411 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 27089 | /* 76415 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27090 | /* 76419 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27091 | /* 76423 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 27092 | /* 76427 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27093 | /* 76431 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27094 | /* 76435 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27095 | /* 76438 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27096 | /* 76442 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27097 | /* 76449 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27098 | /* 76453 */ // MIs[0] dst |
| 27099 | /* 76453 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27100 | /* 76458 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27101 | /* 76460 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27102 | /* 76467 */ // (atomic_store (sub:{ *:[i64] } 0:{ *:[i64] }, (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (NEG64m:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 27103 | /* 76467 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG64m), |
| 27104 | /* 76470 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27105 | /* 76474 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27106 | /* 76477 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27107 | /* 76483 */ GIR_RootConstrainSelectedInstOperands, |
| 27108 | /* 76484 */ // GIR_Coverage, 22502, |
| 27109 | /* 76484 */ GIR_EraseRootFromParent_Done, |
| 27110 | /* 76485 */ // Label 1678: @76485 |
| 27111 | /* 76485 */ GIM_Try, /*On fail goto*//*Label 1679*/ GIMT_Encode4(76575), // Rule ID 22506 // |
| 27112 | /* 76490 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27113 | /* 76493 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27114 | /* 76500 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27115 | /* 76504 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 27116 | /* 76508 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27117 | /* 76512 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27118 | /* 76516 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27119 | /* 76520 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27120 | /* 76524 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27121 | /* 76527 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27122 | /* 76531 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27123 | /* 76538 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27124 | /* 76542 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 27125 | /* 76546 */ // MIs[0] dst |
| 27126 | /* 76546 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27127 | /* 76551 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27128 | /* 76553 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27129 | /* 76560 */ // (atomic_store (xor:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, -1:{ *:[i64] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (NOT64m addr:{ *:[iPTR] }:$dst) |
| 27130 | /* 76560 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT64m), |
| 27131 | /* 76563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27132 | /* 76567 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27133 | /* 76573 */ GIR_RootConstrainSelectedInstOperands, |
| 27134 | /* 76574 */ // GIR_Coverage, 22506, |
| 27135 | /* 76574 */ GIR_EraseRootFromParent_Done, |
| 27136 | /* 76575 */ // Label 1679: @76575 |
| 27137 | /* 76575 */ GIM_Try, /*On fail goto*//*Label 1680*/ GIMT_Encode4(76661), // Rule ID 231 // |
| 27138 | /* 76580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode_UseIncDec), |
| 27139 | /* 76583 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27140 | /* 76586 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27141 | /* 76590 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27142 | /* 76594 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27143 | /* 76598 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27144 | /* 76602 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27145 | /* 76606 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27146 | /* 76610 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27147 | /* 76614 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27148 | /* 76617 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27149 | /* 76621 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27150 | /* 76625 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 27151 | /* 76629 */ // MIs[0] src1 |
| 27152 | /* 76629 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27153 | /* 76634 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27154 | /* 76636 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27155 | /* 76643 */ // (st (add:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, 1:{ *:[i64] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (INC64m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 27156 | /* 76643 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC64m), |
| 27157 | /* 76646 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27158 | /* 76650 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27159 | /* 76653 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27160 | /* 76659 */ GIR_RootConstrainSelectedInstOperands, |
| 27161 | /* 76660 */ // GIR_Coverage, 231, |
| 27162 | /* 76660 */ GIR_EraseRootFromParent_Done, |
| 27163 | /* 76661 */ // Label 1680: @76661 |
| 27164 | /* 76661 */ GIM_Try, /*On fail goto*//*Label 1681*/ GIMT_Encode4(76747), // Rule ID 232 // |
| 27165 | /* 76666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode_UseIncDec), |
| 27166 | /* 76669 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27167 | /* 76672 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27168 | /* 76676 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27169 | /* 76680 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27170 | /* 76684 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27171 | /* 76688 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27172 | /* 76692 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27173 | /* 76696 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27174 | /* 76700 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27175 | /* 76703 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27176 | /* 76707 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27177 | /* 76711 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 27178 | /* 76715 */ // MIs[0] src1 |
| 27179 | /* 76715 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27180 | /* 76720 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27181 | /* 76722 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27182 | /* 76729 */ // (st (add:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:{ *:[i64] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (DEC64m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 27183 | /* 76729 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC64m), |
| 27184 | /* 76732 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27185 | /* 76736 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27186 | /* 76739 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27187 | /* 76745 */ GIR_RootConstrainSelectedInstOperands, |
| 27188 | /* 76746 */ // GIR_Coverage, 232, |
| 27189 | /* 76746 */ GIR_EraseRootFromParent_Done, |
| 27190 | /* 76747 */ // Label 1681: @76747 |
| 27191 | /* 76747 */ GIM_Try, /*On fail goto*//*Label 1682*/ GIMT_Encode4(76840), // Rule ID 22616 // |
| 27192 | /* 76752 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27193 | /* 76755 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27194 | /* 76759 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27195 | /* 76763 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27196 | /* 76767 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27197 | /* 76771 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27198 | /* 76775 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27199 | /* 76779 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27200 | /* 76783 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27201 | /* 76786 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27202 | /* 76790 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27203 | /* 76794 */ GIM_CheckConstantInt, /*MI*/1, /*Op*/2, GIMT_Encode8(128), |
| 27204 | /* 76805 */ // MIs[0] dst |
| 27205 | /* 76805 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27206 | /* 76810 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27207 | /* 76812 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27208 | /* 76819 */ // (st (add:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, 128:{ *:[i64] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB64mi32:{ *:[i32] } addr:{ *:[iPTR] }:$dst, -128:{ *:[i64] }) |
| 27209 | /* 76819 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mi32), |
| 27210 | /* 76822 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27211 | /* 76826 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/uint8_t(-128), |
| 27212 | /* 76829 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27213 | /* 76832 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27214 | /* 76838 */ GIR_RootConstrainSelectedInstOperands, |
| 27215 | /* 76839 */ // GIR_Coverage, 22616, |
| 27216 | /* 76839 */ GIR_EraseRootFromParent_Done, |
| 27217 | /* 76840 */ // Label 1682: @76840 |
| 27218 | /* 76840 */ GIM_Try, /*On fail goto*//*Label 1683*/ GIMT_Encode4(76940), // Rule ID 22624 // |
| 27219 | /* 76845 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27220 | /* 76848 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27221 | /* 76852 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27222 | /* 76856 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27223 | /* 76860 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27224 | /* 76864 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27225 | /* 76868 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27226 | /* 76872 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27227 | /* 76876 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27228 | /* 76879 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27229 | /* 76883 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27230 | /* 76887 */ GIM_CheckConstantInt, /*MI*/1, /*Op*/2, GIMT_Encode8(2147483648), |
| 27231 | /* 76898 */ // MIs[0] dst |
| 27232 | /* 76898 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27233 | /* 76903 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27234 | /* 76905 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27235 | /* 76912 */ // (st (add:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, 2147483648:{ *:[i64] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB64mi32:{ *:[i32] } addr:{ *:[iPTR] }:$dst, -2147483648:{ *:[i64] }) |
| 27236 | /* 76912 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mi32), |
| 27237 | /* 76915 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27238 | /* 76919 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(-2147483648), |
| 27239 | /* 76929 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27240 | /* 76932 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27241 | /* 76938 */ GIR_RootConstrainSelectedInstOperands, |
| 27242 | /* 76939 */ // GIR_Coverage, 22624, |
| 27243 | /* 76939 */ GIR_EraseRootFromParent_Done, |
| 27244 | /* 76940 */ // Label 1683: @76940 |
| 27245 | /* 76940 */ GIM_Try, /*On fail goto*//*Label 1684*/ GIMT_Encode4(77026), // Rule ID 17615 // |
| 27246 | /* 76945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27247 | /* 76948 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27248 | /* 76951 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27249 | /* 76955 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27250 | /* 76959 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 27251 | /* 76963 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27252 | /* 76967 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27253 | /* 76971 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27254 | /* 76975 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27255 | /* 76979 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27256 | /* 76982 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27257 | /* 76986 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27258 | /* 76990 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 63, |
| 27259 | /* 76994 */ // MIs[0] dst |
| 27260 | /* 76994 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27261 | /* 76999 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27262 | /* 77001 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27263 | /* 77008 */ // (st (rotl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, 63:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR64m1:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 27264 | /* 77008 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64m1), |
| 27265 | /* 77011 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27266 | /* 77015 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27267 | /* 77018 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27268 | /* 77024 */ GIR_RootConstrainSelectedInstOperands, |
| 27269 | /* 77025 */ // GIR_Coverage, 17615, |
| 27270 | /* 77025 */ GIR_EraseRootFromParent_Done, |
| 27271 | /* 77026 */ // Label 1684: @77026 |
| 27272 | /* 77026 */ GIM_Try, /*On fail goto*//*Label 1685*/ GIMT_Encode4(77112), // Rule ID 17619 // |
| 27273 | /* 77031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27274 | /* 77034 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27275 | /* 77037 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27276 | /* 77041 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27277 | /* 77045 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 27278 | /* 77049 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27279 | /* 77053 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27280 | /* 77057 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27281 | /* 77061 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27282 | /* 77065 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27283 | /* 77068 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27284 | /* 77072 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27285 | /* 77076 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 63, |
| 27286 | /* 77080 */ // MIs[0] dst |
| 27287 | /* 77080 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27288 | /* 77085 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27289 | /* 77087 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27290 | /* 77094 */ // (st (rotr:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, 63:{ *:[i8] }), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL64m1:{ *:[i32] } addr:{ *:[iPTR] }:$dst) |
| 27291 | /* 77094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64m1), |
| 27292 | /* 77097 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27293 | /* 77101 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27294 | /* 77104 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27295 | /* 77110 */ GIR_RootConstrainSelectedInstOperands, |
| 27296 | /* 77111 */ // GIR_Coverage, 17619, |
| 27297 | /* 77111 */ GIR_EraseRootFromParent_Done, |
| 27298 | /* 77112 */ // Label 1685: @77112 |
| 27299 | /* 77112 */ GIM_Try, /*On fail goto*//*Label 1686*/ GIMT_Encode4(77198), // Rule ID 264 // |
| 27300 | /* 77117 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27301 | /* 77120 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27302 | /* 77123 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27303 | /* 77127 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27304 | /* 77131 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 27305 | /* 77135 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27306 | /* 77139 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27307 | /* 77143 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 27308 | /* 77147 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27309 | /* 77151 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27310 | /* 77155 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27311 | /* 77158 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27312 | /* 77162 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27313 | /* 77166 */ // MIs[0] src1 |
| 27314 | /* 77166 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27315 | /* 77171 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27316 | /* 77173 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27317 | /* 77180 */ // (st (sub:{ *:[i64] } 0:{ *:[i64] }, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (NEG64m:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 27318 | /* 77180 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG64m), |
| 27319 | /* 77183 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27320 | /* 77187 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27321 | /* 77190 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27322 | /* 77196 */ GIR_RootConstrainSelectedInstOperands, |
| 27323 | /* 77197 */ // GIR_Coverage, 264, |
| 27324 | /* 77197 */ GIR_EraseRootFromParent_Done, |
| 27325 | /* 77198 */ // Label 1686: @77198 |
| 27326 | /* 77198 */ GIM_Try, /*On fail goto*//*Label 1687*/ GIMT_Encode4(77281), // Rule ID 272 // |
| 27327 | /* 77203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27328 | /* 77206 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27329 | /* 77209 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27330 | /* 77213 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27331 | /* 77217 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 27332 | /* 77221 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27333 | /* 77225 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27334 | /* 77229 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27335 | /* 77233 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27336 | /* 77237 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27337 | /* 77240 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27338 | /* 77244 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27339 | /* 77248 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, uint8_t(-1), |
| 27340 | /* 77252 */ // MIs[0] src1 |
| 27341 | /* 77252 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27342 | /* 77257 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27343 | /* 77259 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27344 | /* 77266 */ // (st (xor:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:{ *:[i64] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (NOT64m addr:{ *:[iPTR] }:$src1) |
| 27345 | /* 77266 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT64m), |
| 27346 | /* 77269 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27347 | /* 77273 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27348 | /* 77279 */ GIR_RootConstrainSelectedInstOperands, |
| 27349 | /* 77280 */ // GIR_Coverage, 272, |
| 27350 | /* 77280 */ GIR_EraseRootFromParent_Done, |
| 27351 | /* 77281 */ // Label 1687: @77281 |
| 27352 | /* 77281 */ GIM_Try, /*On fail goto*//*Label 1688*/ GIMT_Encode4(77386), // Rule ID 22430 // |
| 27353 | /* 77286 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27354 | /* 77289 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27355 | /* 77296 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27356 | /* 77300 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27357 | /* 77304 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27358 | /* 77308 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27359 | /* 77312 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27360 | /* 77316 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27361 | /* 77320 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27362 | /* 77323 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27363 | /* 77327 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27364 | /* 77334 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27365 | /* 77338 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27366 | /* 77342 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27367 | /* 77346 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 27368 | /* 77350 */ // MIs[3] Operand 1 |
| 27369 | /* 77350 */ // No operand predicates |
| 27370 | /* 77350 */ // MIs[0] dst |
| 27371 | /* 77350 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27372 | /* 77355 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27373 | /* 77357 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27374 | /* 77364 */ // (atomic_store (add:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (ADD64mi32:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src) |
| 27375 | /* 77364 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64mi32), |
| 27376 | /* 77367 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27377 | /* 77371 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 27378 | /* 77374 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27379 | /* 77377 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27380 | /* 77384 */ GIR_RootConstrainSelectedInstOperands, |
| 27381 | /* 77385 */ // GIR_Coverage, 22430, |
| 27382 | /* 77385 */ GIR_EraseRootFromParent_Done, |
| 27383 | /* 77386 */ // Label 1688: @77386 |
| 27384 | /* 77386 */ GIM_Try, /*On fail goto*//*Label 1689*/ GIMT_Encode4(77491), // Rule ID 22438 // |
| 27385 | /* 77391 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27386 | /* 77394 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27387 | /* 77401 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27388 | /* 77405 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 27389 | /* 77409 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27390 | /* 77413 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27391 | /* 77417 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27392 | /* 77421 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27393 | /* 77425 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27394 | /* 77428 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27395 | /* 77432 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27396 | /* 77439 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27397 | /* 77443 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27398 | /* 77447 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27399 | /* 77451 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 27400 | /* 77455 */ // MIs[3] Operand 1 |
| 27401 | /* 77455 */ // No operand predicates |
| 27402 | /* 77455 */ // MIs[0] dst |
| 27403 | /* 77455 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27404 | /* 77460 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27405 | /* 77462 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27406 | /* 77469 */ // (atomic_store (and:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (AND64mi32:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src) |
| 27407 | /* 77469 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64mi32), |
| 27408 | /* 77472 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27409 | /* 77476 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 27410 | /* 77479 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27411 | /* 77482 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27412 | /* 77489 */ GIR_RootConstrainSelectedInstOperands, |
| 27413 | /* 77490 */ // GIR_Coverage, 22438, |
| 27414 | /* 77490 */ GIR_EraseRootFromParent_Done, |
| 27415 | /* 77491 */ // Label 1689: @77491 |
| 27416 | /* 77491 */ GIM_Try, /*On fail goto*//*Label 1690*/ GIMT_Encode4(77596), // Rule ID 22446 // |
| 27417 | /* 77496 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27418 | /* 77499 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27419 | /* 77506 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27420 | /* 77510 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 27421 | /* 77514 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27422 | /* 77518 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27423 | /* 77522 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27424 | /* 77526 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27425 | /* 77530 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27426 | /* 77533 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27427 | /* 77537 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27428 | /* 77544 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27429 | /* 77548 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27430 | /* 77552 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27431 | /* 77556 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 27432 | /* 77560 */ // MIs[3] Operand 1 |
| 27433 | /* 77560 */ // No operand predicates |
| 27434 | /* 77560 */ // MIs[0] dst |
| 27435 | /* 77560 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27436 | /* 77565 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27437 | /* 77567 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27438 | /* 77574 */ // (atomic_store (or:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (OR64mi32:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src) |
| 27439 | /* 77574 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64mi32), |
| 27440 | /* 77577 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27441 | /* 77581 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 27442 | /* 77584 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27443 | /* 77587 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27444 | /* 77594 */ GIR_RootConstrainSelectedInstOperands, |
| 27445 | /* 77595 */ // GIR_Coverage, 22446, |
| 27446 | /* 77595 */ GIR_EraseRootFromParent_Done, |
| 27447 | /* 77596 */ // Label 1690: @77596 |
| 27448 | /* 77596 */ GIM_Try, /*On fail goto*//*Label 1691*/ GIMT_Encode4(77701), // Rule ID 22462 // |
| 27449 | /* 77601 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27450 | /* 77604 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27451 | /* 77611 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27452 | /* 77615 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 27453 | /* 77619 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27454 | /* 77623 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27455 | /* 77627 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27456 | /* 77631 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27457 | /* 77635 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27458 | /* 77638 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27459 | /* 77642 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27460 | /* 77649 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27461 | /* 77653 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27462 | /* 77657 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27463 | /* 77661 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 27464 | /* 77665 */ // MIs[3] Operand 1 |
| 27465 | /* 77665 */ // No operand predicates |
| 27466 | /* 77665 */ // MIs[0] dst |
| 27467 | /* 77665 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27468 | /* 77670 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27469 | /* 77672 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27470 | /* 77679 */ // (atomic_store (sub:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (SUB64mi32:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src) |
| 27471 | /* 77679 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mi32), |
| 27472 | /* 77682 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27473 | /* 77686 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 27474 | /* 77689 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27475 | /* 77692 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27476 | /* 77699 */ GIR_RootConstrainSelectedInstOperands, |
| 27477 | /* 77700 */ // GIR_Coverage, 22462, |
| 27478 | /* 77700 */ GIR_EraseRootFromParent_Done, |
| 27479 | /* 77701 */ // Label 1691: @77701 |
| 27480 | /* 77701 */ GIM_Try, /*On fail goto*//*Label 1692*/ GIMT_Encode4(77806), // Rule ID 22454 // |
| 27481 | /* 77706 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27482 | /* 77709 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27483 | /* 77716 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27484 | /* 77720 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 27485 | /* 77724 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27486 | /* 77728 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27487 | /* 77732 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27488 | /* 77736 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27489 | /* 77740 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27490 | /* 77743 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27491 | /* 77747 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27492 | /* 77754 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27493 | /* 77758 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27494 | /* 77762 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27495 | /* 77766 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 27496 | /* 77770 */ // MIs[3] Operand 1 |
| 27497 | /* 77770 */ // No operand predicates |
| 27498 | /* 77770 */ // MIs[0] dst |
| 27499 | /* 77770 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27500 | /* 77775 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27501 | /* 77777 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27502 | /* 77784 */ // (atomic_store (xor:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (XOR64mi32:{ *:[i32] } addr:{ *:[iPTR] }:$dst, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src) |
| 27503 | /* 77784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64mi32), |
| 27504 | /* 77787 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27505 | /* 77791 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 27506 | /* 77794 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27507 | /* 77797 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27508 | /* 77804 */ GIR_RootConstrainSelectedInstOperands, |
| 27509 | /* 77805 */ // GIR_Coverage, 22454, |
| 27510 | /* 77805 */ GIR_EraseRootFromParent_Done, |
| 27511 | /* 77806 */ // Label 1692: @77806 |
| 27512 | /* 77806 */ GIM_Try, /*On fail goto*//*Label 1693*/ GIMT_Encode4(77910), // Rule ID 835 // |
| 27513 | /* 77811 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27514 | /* 77814 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27515 | /* 77818 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27516 | /* 77822 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHL), |
| 27517 | /* 77826 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27518 | /* 77830 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27519 | /* 77834 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 27520 | /* 77838 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27521 | /* 77842 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27522 | /* 77846 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27523 | /* 77849 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27524 | /* 77853 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27525 | /* 77857 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27526 | /* 77862 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/3, // MIs[3] |
| 27527 | /* 77866 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27528 | /* 77870 */ // MIs[3] Operand 1 |
| 27529 | /* 77870 */ // No operand predicates |
| 27530 | /* 77870 */ // MIs[0] src1 |
| 27531 | /* 77870 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27532 | /* 77875 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27533 | /* 77877 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27534 | /* 77884 */ // (st (fshl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHLD64mri8:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 27535 | /* 77884 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64mri8), |
| 27536 | /* 77887 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27537 | /* 77891 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 27538 | /* 77895 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src3 |
| 27539 | /* 77898 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27540 | /* 77901 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27541 | /* 77908 */ GIR_RootConstrainSelectedInstOperands, |
| 27542 | /* 77909 */ // GIR_Coverage, 835, |
| 27543 | /* 77909 */ GIR_EraseRootFromParent_Done, |
| 27544 | /* 77910 */ // Label 1693: @77910 |
| 27545 | /* 77910 */ GIM_Try, /*On fail goto*//*Label 1694*/ GIMT_Encode4(78014), // Rule ID 859 // |
| 27546 | /* 77915 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27547 | /* 77918 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27548 | /* 77922 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27549 | /* 77926 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHR), |
| 27550 | /* 77930 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27551 | /* 77934 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27552 | /* 77938 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 27553 | /* 77942 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27554 | /* 77947 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27555 | /* 77951 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27556 | /* 77955 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27557 | /* 77958 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27558 | /* 77962 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27559 | /* 77966 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/3, // MIs[3] |
| 27560 | /* 77970 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27561 | /* 77974 */ // MIs[3] Operand 1 |
| 27562 | /* 77974 */ // No operand predicates |
| 27563 | /* 77974 */ // MIs[0] src1 |
| 27564 | /* 77974 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27565 | /* 77979 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27566 | /* 77981 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27567 | /* 77988 */ // (st (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src3), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHRD64mri8:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 27568 | /* 77988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64mri8), |
| 27569 | /* 77991 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27570 | /* 77995 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 27571 | /* 77999 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src3 |
| 27572 | /* 78002 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27573 | /* 78005 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27574 | /* 78012 */ GIR_RootConstrainSelectedInstOperands, |
| 27575 | /* 78013 */ // GIR_Coverage, 859, |
| 27576 | /* 78013 */ GIR_EraseRootFromParent_Done, |
| 27577 | /* 78014 */ // Label 1694: @78014 |
| 27578 | /* 78014 */ GIM_Try, /*On fail goto*//*Label 1695*/ GIMT_Encode4(78108), // Rule ID 736 // |
| 27579 | /* 78019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27580 | /* 78022 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27581 | /* 78025 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27582 | /* 78029 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27583 | /* 78033 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 27584 | /* 78037 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27585 | /* 78041 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27586 | /* 78045 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27587 | /* 78049 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27588 | /* 78053 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27589 | /* 78056 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27590 | /* 78060 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27591 | /* 78064 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27592 | /* 78068 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27593 | /* 78072 */ // MIs[3] Operand 1 |
| 27594 | /* 78072 */ // No operand predicates |
| 27595 | /* 78072 */ // MIs[0] src1 |
| 27596 | /* 78072 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27597 | /* 78077 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27598 | /* 78079 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27599 | /* 78086 */ // (st (sra:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SAR64mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 27600 | /* 78086 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64mi), |
| 27601 | /* 78089 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27602 | /* 78093 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 27603 | /* 78096 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27604 | /* 78099 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27605 | /* 78106 */ GIR_RootConstrainSelectedInstOperands, |
| 27606 | /* 78107 */ // GIR_Coverage, 736, |
| 27607 | /* 78107 */ GIR_EraseRootFromParent_Done, |
| 27608 | /* 78108 */ // Label 1695: @78108 |
| 27609 | /* 78108 */ GIM_Try, /*On fail goto*//*Label 1696*/ GIMT_Encode4(78202), // Rule ID 704 // |
| 27610 | /* 78113 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27611 | /* 78116 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27612 | /* 78119 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27613 | /* 78123 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27614 | /* 78127 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 27615 | /* 78131 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27616 | /* 78135 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27617 | /* 78139 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27618 | /* 78143 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27619 | /* 78147 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27620 | /* 78150 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27621 | /* 78154 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27622 | /* 78158 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27623 | /* 78162 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27624 | /* 78166 */ // MIs[3] Operand 1 |
| 27625 | /* 78166 */ // No operand predicates |
| 27626 | /* 78166 */ // MIs[0] src1 |
| 27627 | /* 78166 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27628 | /* 78171 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27629 | /* 78173 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27630 | /* 78180 */ // (st (srl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHR64mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 27631 | /* 78180 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64mi), |
| 27632 | /* 78183 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27633 | /* 78187 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 27634 | /* 78190 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27635 | /* 78193 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27636 | /* 78200 */ GIR_RootConstrainSelectedInstOperands, |
| 27637 | /* 78201 */ // GIR_Coverage, 704, |
| 27638 | /* 78201 */ GIR_EraseRootFromParent_Done, |
| 27639 | /* 78202 */ // Label 1696: @78202 |
| 27640 | /* 78202 */ GIM_Try, /*On fail goto*//*Label 1697*/ GIMT_Encode4(78296), // Rule ID 768 // |
| 27641 | /* 78207 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27642 | /* 78210 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27643 | /* 78213 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27644 | /* 78217 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27645 | /* 78221 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 27646 | /* 78225 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27647 | /* 78229 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27648 | /* 78233 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27649 | /* 78237 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27650 | /* 78241 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27651 | /* 78244 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27652 | /* 78248 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27653 | /* 78252 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27654 | /* 78256 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27655 | /* 78260 */ // MIs[3] Operand 1 |
| 27656 | /* 78260 */ // No operand predicates |
| 27657 | /* 78260 */ // MIs[0] src1 |
| 27658 | /* 78260 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27659 | /* 78265 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27660 | /* 78267 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27661 | /* 78274 */ // (st (rotl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL64mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 27662 | /* 78274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64mi), |
| 27663 | /* 78277 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27664 | /* 78281 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 27665 | /* 78284 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27666 | /* 78287 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27667 | /* 78294 */ GIR_RootConstrainSelectedInstOperands, |
| 27668 | /* 78295 */ // GIR_Coverage, 768, |
| 27669 | /* 78295 */ GIR_EraseRootFromParent_Done, |
| 27670 | /* 78296 */ // Label 1697: @78296 |
| 27671 | /* 78296 */ GIM_Try, /*On fail goto*//*Label 1698*/ GIMT_Encode4(78390), // Rule ID 800 // |
| 27672 | /* 78301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27673 | /* 78304 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27674 | /* 78307 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27675 | /* 78311 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27676 | /* 78315 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 27677 | /* 78319 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27678 | /* 78323 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27679 | /* 78327 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27680 | /* 78331 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27681 | /* 78335 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27682 | /* 78338 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27683 | /* 78342 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27684 | /* 78346 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27685 | /* 78350 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27686 | /* 78354 */ // MIs[3] Operand 1 |
| 27687 | /* 78354 */ // No operand predicates |
| 27688 | /* 78354 */ // MIs[0] src1 |
| 27689 | /* 78354 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27690 | /* 78359 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27691 | /* 78361 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27692 | /* 78368 */ // (st (rotr:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR64mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 27693 | /* 78368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64mi), |
| 27694 | /* 78371 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27695 | /* 78375 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 27696 | /* 78378 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27697 | /* 78381 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27698 | /* 78388 */ GIR_RootConstrainSelectedInstOperands, |
| 27699 | /* 78389 */ // GIR_Coverage, 800, |
| 27700 | /* 78389 */ GIR_EraseRootFromParent_Done, |
| 27701 | /* 78390 */ // Label 1698: @78390 |
| 27702 | /* 78390 */ GIM_Try, /*On fail goto*//*Label 1699*/ GIMT_Encode4(78484), // Rule ID 672 // |
| 27703 | /* 78395 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27704 | /* 78398 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27705 | /* 78401 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27706 | /* 78405 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27707 | /* 78409 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 27708 | /* 78413 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27709 | /* 78417 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27710 | /* 78421 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27711 | /* 78425 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27712 | /* 78429 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27713 | /* 78432 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27714 | /* 78436 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27715 | /* 78440 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27716 | /* 78444 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27717 | /* 78448 */ // MIs[3] Operand 1 |
| 27718 | /* 78448 */ // No operand predicates |
| 27719 | /* 78448 */ // MIs[0] src1 |
| 27720 | /* 78448 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27721 | /* 78453 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27722 | /* 78455 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27723 | /* 78462 */ // (st (shl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHL64mi:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 27724 | /* 78462 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64mi), |
| 27725 | /* 78465 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27726 | /* 78469 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 27727 | /* 78472 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27728 | /* 78475 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27729 | /* 78482 */ GIR_RootConstrainSelectedInstOperands, |
| 27730 | /* 78483 */ // GIR_Coverage, 672, |
| 27731 | /* 78483 */ GIR_EraseRootFromParent_Done, |
| 27732 | /* 78484 */ // Label 1699: @78484 |
| 27733 | /* 78484 */ GIM_Try, /*On fail goto*//*Label 1700*/ GIMT_Encode4(78582), // Rule ID 22434 // |
| 27734 | /* 78489 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27735 | /* 78492 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27736 | /* 78499 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27737 | /* 78503 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27738 | /* 78507 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27739 | /* 78511 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27740 | /* 78515 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27741 | /* 78519 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27742 | /* 78523 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27743 | /* 78526 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27744 | /* 78530 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27745 | /* 78537 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27746 | /* 78541 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27747 | /* 78546 */ // MIs[0] dst |
| 27748 | /* 78546 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27749 | /* 78551 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27750 | /* 78553 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27751 | /* 78560 */ // (atomic_store (add:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, GR64:{ *:[i64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (ADD64mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 27752 | /* 78560 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64mr), |
| 27753 | /* 78563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27754 | /* 78567 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 27755 | /* 78571 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27756 | /* 78574 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27757 | /* 78580 */ GIR_RootConstrainSelectedInstOperands, |
| 27758 | /* 78581 */ // GIR_Coverage, 22434, |
| 27759 | /* 78581 */ GIR_EraseRootFromParent_Done, |
| 27760 | /* 78582 */ // Label 1700: @78582 |
| 27761 | /* 78582 */ GIM_Try, /*On fail goto*//*Label 1701*/ GIMT_Encode4(78680), // Rule ID 26005 // |
| 27762 | /* 78587 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27763 | /* 78590 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27764 | /* 78597 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27765 | /* 78601 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27766 | /* 78605 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27767 | /* 78609 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27768 | /* 78613 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27769 | /* 78618 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27770 | /* 78622 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27771 | /* 78626 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27772 | /* 78629 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27773 | /* 78633 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27774 | /* 78640 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27775 | /* 78644 */ // MIs[0] dst |
| 27776 | /* 78644 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27777 | /* 78649 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27778 | /* 78651 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27779 | /* 78658 */ // (atomic_store (add:{ *:[i64] } GR64:{ *:[i64] }:$src, (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (ADD64mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 27780 | /* 78658 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64mr), |
| 27781 | /* 78661 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27782 | /* 78665 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 27783 | /* 78669 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27784 | /* 78672 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27785 | /* 78678 */ GIR_RootConstrainSelectedInstOperands, |
| 27786 | /* 78679 */ // GIR_Coverage, 26005, |
| 27787 | /* 78679 */ GIR_EraseRootFromParent_Done, |
| 27788 | /* 78680 */ // Label 1701: @78680 |
| 27789 | /* 78680 */ GIM_Try, /*On fail goto*//*Label 1702*/ GIMT_Encode4(78778), // Rule ID 22442 // |
| 27790 | /* 78685 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27791 | /* 78688 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27792 | /* 78695 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27793 | /* 78699 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 27794 | /* 78703 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27795 | /* 78707 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27796 | /* 78711 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27797 | /* 78715 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27798 | /* 78719 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27799 | /* 78722 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27800 | /* 78726 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27801 | /* 78733 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27802 | /* 78737 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27803 | /* 78742 */ // MIs[0] dst |
| 27804 | /* 78742 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27805 | /* 78747 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27806 | /* 78749 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27807 | /* 78756 */ // (atomic_store (and:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, GR64:{ *:[i64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (AND64mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 27808 | /* 78756 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64mr), |
| 27809 | /* 78759 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27810 | /* 78763 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 27811 | /* 78767 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27812 | /* 78770 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27813 | /* 78776 */ GIR_RootConstrainSelectedInstOperands, |
| 27814 | /* 78777 */ // GIR_Coverage, 22442, |
| 27815 | /* 78777 */ GIR_EraseRootFromParent_Done, |
| 27816 | /* 78778 */ // Label 1702: @78778 |
| 27817 | /* 78778 */ GIM_Try, /*On fail goto*//*Label 1703*/ GIMT_Encode4(78876), // Rule ID 26009 // |
| 27818 | /* 78783 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27819 | /* 78786 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27820 | /* 78793 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27821 | /* 78797 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 27822 | /* 78801 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27823 | /* 78805 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27824 | /* 78809 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27825 | /* 78814 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27826 | /* 78818 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27827 | /* 78822 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27828 | /* 78825 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27829 | /* 78829 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27830 | /* 78836 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27831 | /* 78840 */ // MIs[0] dst |
| 27832 | /* 78840 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27833 | /* 78845 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27834 | /* 78847 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27835 | /* 78854 */ // (atomic_store (and:{ *:[i64] } GR64:{ *:[i64] }:$src, (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (AND64mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 27836 | /* 78854 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64mr), |
| 27837 | /* 78857 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27838 | /* 78861 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 27839 | /* 78865 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27840 | /* 78868 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27841 | /* 78874 */ GIR_RootConstrainSelectedInstOperands, |
| 27842 | /* 78875 */ // GIR_Coverage, 26009, |
| 27843 | /* 78875 */ GIR_EraseRootFromParent_Done, |
| 27844 | /* 78876 */ // Label 1703: @78876 |
| 27845 | /* 78876 */ GIM_Try, /*On fail goto*//*Label 1704*/ GIMT_Encode4(78974), // Rule ID 22450 // |
| 27846 | /* 78881 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27847 | /* 78884 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27848 | /* 78891 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27849 | /* 78895 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 27850 | /* 78899 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27851 | /* 78903 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27852 | /* 78907 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27853 | /* 78911 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27854 | /* 78915 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27855 | /* 78918 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27856 | /* 78922 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27857 | /* 78929 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27858 | /* 78933 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27859 | /* 78938 */ // MIs[0] dst |
| 27860 | /* 78938 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27861 | /* 78943 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27862 | /* 78945 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27863 | /* 78952 */ // (atomic_store (or:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, GR64:{ *:[i64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (OR64mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 27864 | /* 78952 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64mr), |
| 27865 | /* 78955 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27866 | /* 78959 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 27867 | /* 78963 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27868 | /* 78966 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27869 | /* 78972 */ GIR_RootConstrainSelectedInstOperands, |
| 27870 | /* 78973 */ // GIR_Coverage, 22450, |
| 27871 | /* 78973 */ GIR_EraseRootFromParent_Done, |
| 27872 | /* 78974 */ // Label 1704: @78974 |
| 27873 | /* 78974 */ GIM_Try, /*On fail goto*//*Label 1705*/ GIMT_Encode4(79072), // Rule ID 26013 // |
| 27874 | /* 78979 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27875 | /* 78982 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27876 | /* 78989 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27877 | /* 78993 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 27878 | /* 78997 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27879 | /* 79001 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27880 | /* 79005 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27881 | /* 79010 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27882 | /* 79014 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27883 | /* 79018 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27884 | /* 79021 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27885 | /* 79025 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27886 | /* 79032 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27887 | /* 79036 */ // MIs[0] dst |
| 27888 | /* 79036 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27889 | /* 79041 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27890 | /* 79043 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27891 | /* 79050 */ // (atomic_store (or:{ *:[i64] } GR64:{ *:[i64] }:$src, (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (OR64mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 27892 | /* 79050 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64mr), |
| 27893 | /* 79053 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27894 | /* 79057 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 27895 | /* 79061 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27896 | /* 79064 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27897 | /* 79070 */ GIR_RootConstrainSelectedInstOperands, |
| 27898 | /* 79071 */ // GIR_Coverage, 26013, |
| 27899 | /* 79071 */ GIR_EraseRootFromParent_Done, |
| 27900 | /* 79072 */ // Label 1705: @79072 |
| 27901 | /* 79072 */ GIM_Try, /*On fail goto*//*Label 1706*/ GIMT_Encode4(79170), // Rule ID 22466 // |
| 27902 | /* 79077 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27903 | /* 79080 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27904 | /* 79087 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27905 | /* 79091 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 27906 | /* 79095 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27907 | /* 79099 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27908 | /* 79103 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27909 | /* 79107 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27910 | /* 79111 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27911 | /* 79114 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27912 | /* 79118 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27913 | /* 79125 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27914 | /* 79129 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27915 | /* 79134 */ // MIs[0] dst |
| 27916 | /* 79134 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27917 | /* 79139 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27918 | /* 79141 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27919 | /* 79148 */ // (atomic_store (sub:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, GR64:{ *:[i64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (SUB64mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 27920 | /* 79148 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mr), |
| 27921 | /* 79151 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27922 | /* 79155 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 27923 | /* 79159 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27924 | /* 79162 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27925 | /* 79168 */ GIR_RootConstrainSelectedInstOperands, |
| 27926 | /* 79169 */ // GIR_Coverage, 22466, |
| 27927 | /* 79169 */ GIR_EraseRootFromParent_Done, |
| 27928 | /* 79170 */ // Label 1706: @79170 |
| 27929 | /* 79170 */ GIM_Try, /*On fail goto*//*Label 1707*/ GIMT_Encode4(79268), // Rule ID 22458 // |
| 27930 | /* 79175 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27931 | /* 79178 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27932 | /* 79185 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27933 | /* 79189 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 27934 | /* 79193 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27935 | /* 79197 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27936 | /* 79201 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27937 | /* 79205 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27938 | /* 79209 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27939 | /* 79212 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27940 | /* 79216 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27941 | /* 79223 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27942 | /* 79227 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27943 | /* 79232 */ // MIs[0] dst |
| 27944 | /* 79232 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27945 | /* 79237 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27946 | /* 79239 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27947 | /* 79246 */ // (atomic_store (xor:{ *:[i64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>, GR64:{ *:[i64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (XOR64mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 27948 | /* 79246 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64mr), |
| 27949 | /* 79249 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27950 | /* 79253 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 27951 | /* 79257 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27952 | /* 79260 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27953 | /* 79266 */ GIR_RootConstrainSelectedInstOperands, |
| 27954 | /* 79267 */ // GIR_Coverage, 22458, |
| 27955 | /* 79267 */ GIR_EraseRootFromParent_Done, |
| 27956 | /* 79268 */ // Label 1707: @79268 |
| 27957 | /* 79268 */ GIM_Try, /*On fail goto*//*Label 1708*/ GIMT_Encode4(79366), // Rule ID 26017 // |
| 27958 | /* 79273 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27959 | /* 79276 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27960 | /* 79283 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27961 | /* 79287 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 27962 | /* 79291 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27963 | /* 79295 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27964 | /* 79299 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27965 | /* 79304 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27966 | /* 79308 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27967 | /* 79312 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27968 | /* 79315 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27969 | /* 79319 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27970 | /* 79326 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27971 | /* 79330 */ // MIs[0] dst |
| 27972 | /* 79330 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27973 | /* 79335 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27974 | /* 79337 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27975 | /* 79344 */ // (atomic_store (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (XOR64mr:{ *:[i32] } addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 27976 | /* 79344 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64mr), |
| 27977 | /* 79347 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27978 | /* 79351 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 27979 | /* 79355 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27980 | /* 79358 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27981 | /* 79364 */ GIR_RootConstrainSelectedInstOperands, |
| 27982 | /* 79365 */ // GIR_Coverage, 26017, |
| 27983 | /* 79365 */ GIR_EraseRootFromParent_Done, |
| 27984 | /* 79366 */ // Label 1708: @79366 |
| 27985 | /* 79366 */ GIM_Try, /*On fail goto*//*Label 1709*/ GIMT_Encode4(79477), // Rule ID 838 // |
| 27986 | /* 79371 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27987 | /* 79374 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27988 | /* 79378 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27989 | /* 79382 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHL), |
| 27990 | /* 79386 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27991 | /* 79390 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27992 | /* 79394 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 27993 | /* 79398 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27994 | /* 79402 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27995 | /* 79406 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27996 | /* 79409 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27997 | /* 79413 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27998 | /* 79417 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27999 | /* 79422 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 28000 | /* 79427 */ // MIs[0] src1 |
| 28001 | /* 79427 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28002 | /* 79432 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28003 | /* 79434 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28004 | /* 79441 */ // (st (fshl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src2, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHLD64mrCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28005 | /* 79441 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 28006 | /* 79445 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 28007 | /* 79451 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // CL |
| 28008 | /* 79455 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64mrCL), |
| 28009 | /* 79458 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28010 | /* 79462 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 28011 | /* 79466 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28012 | /* 79469 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28013 | /* 79475 */ GIR_RootConstrainSelectedInstOperands, |
| 28014 | /* 79476 */ // GIR_Coverage, 838, |
| 28015 | /* 79476 */ GIR_EraseRootFromParent_Done, |
| 28016 | /* 79477 */ // Label 1709: @79477 |
| 28017 | /* 79477 */ GIM_Try, /*On fail goto*//*Label 1710*/ GIMT_Encode4(79588), // Rule ID 862 // |
| 28018 | /* 79482 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28019 | /* 79485 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28020 | /* 79489 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28021 | /* 79493 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHR), |
| 28022 | /* 79497 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28023 | /* 79501 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28024 | /* 79505 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 28025 | /* 79509 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28026 | /* 79514 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 28027 | /* 79518 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28028 | /* 79522 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28029 | /* 79525 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28030 | /* 79529 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28031 | /* 79533 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 28032 | /* 79538 */ // MIs[0] src1 |
| 28033 | /* 79538 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28034 | /* 79543 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28035 | /* 79545 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28036 | /* 79552 */ // (st (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHRD64mrCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28037 | /* 79552 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 28038 | /* 79556 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 28039 | /* 79562 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // CL |
| 28040 | /* 79566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64mrCL), |
| 28041 | /* 79569 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28042 | /* 79573 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 28043 | /* 79577 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28044 | /* 79580 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28045 | /* 79586 */ GIR_RootConstrainSelectedInstOperands, |
| 28046 | /* 79587 */ // GIR_Coverage, 862, |
| 28047 | /* 79587 */ GIR_EraseRootFromParent_Done, |
| 28048 | /* 79588 */ // Label 1710: @79588 |
| 28049 | /* 79588 */ GIM_Try, /*On fail goto*//*Label 1711*/ GIMT_Encode4(79676), // Rule ID 412 // |
| 28050 | /* 79593 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28051 | /* 79596 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28052 | /* 79600 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28053 | /* 79604 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 28054 | /* 79608 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28055 | /* 79612 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28056 | /* 79616 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28057 | /* 79620 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28058 | /* 79624 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28059 | /* 79627 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28060 | /* 79631 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28061 | /* 79635 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28062 | /* 79640 */ // MIs[0] src1 |
| 28063 | /* 79640 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28064 | /* 79645 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28065 | /* 79647 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28066 | /* 79654 */ // (st (add:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD64mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28067 | /* 79654 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64mr), |
| 28068 | /* 79657 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28069 | /* 79661 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 28070 | /* 79665 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28071 | /* 79668 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28072 | /* 79674 */ GIR_RootConstrainSelectedInstOperands, |
| 28073 | /* 79675 */ // GIR_Coverage, 412, |
| 28074 | /* 79675 */ GIR_EraseRootFromParent_Done, |
| 28075 | /* 79676 */ // Label 1711: @79676 |
| 28076 | /* 79676 */ GIM_Try, /*On fail goto*//*Label 1712*/ GIMT_Encode4(79764), // Rule ID 23225 // |
| 28077 | /* 79681 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28078 | /* 79684 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28079 | /* 79688 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28080 | /* 79692 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 28081 | /* 79696 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28082 | /* 79700 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28083 | /* 79704 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28084 | /* 79709 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 28085 | /* 79713 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28086 | /* 79717 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28087 | /* 79720 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28088 | /* 79724 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28089 | /* 79728 */ // MIs[0] src1 |
| 28090 | /* 79728 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28091 | /* 79733 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28092 | /* 79735 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28093 | /* 79742 */ // (st (add:{ *:[i64] } GR64:{ *:[i64] }:$src2, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ADD64mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28094 | /* 79742 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64mr), |
| 28095 | /* 79745 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28096 | /* 79749 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 28097 | /* 79753 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28098 | /* 79756 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28099 | /* 79762 */ GIR_RootConstrainSelectedInstOperands, |
| 28100 | /* 79763 */ // GIR_Coverage, 23225, |
| 28101 | /* 79763 */ GIR_EraseRootFromParent_Done, |
| 28102 | /* 79764 */ // Label 1712: @79764 |
| 28103 | /* 79764 */ GIM_Try, /*On fail goto*//*Label 1713*/ GIMT_Encode4(79852), // Rule ID 304 // |
| 28104 | /* 79769 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28105 | /* 79772 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28106 | /* 79776 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28107 | /* 79780 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 28108 | /* 79784 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28109 | /* 79788 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28110 | /* 79792 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28111 | /* 79796 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28112 | /* 79800 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28113 | /* 79803 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28114 | /* 79807 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28115 | /* 79811 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28116 | /* 79816 */ // MIs[0] src1 |
| 28117 | /* 79816 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28118 | /* 79821 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28119 | /* 79823 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28120 | /* 79830 */ // (st (and:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND64mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28121 | /* 79830 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64mr), |
| 28122 | /* 79833 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28123 | /* 79837 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 28124 | /* 79841 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28125 | /* 79844 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28126 | /* 79850 */ GIR_RootConstrainSelectedInstOperands, |
| 28127 | /* 79851 */ // GIR_Coverage, 304, |
| 28128 | /* 79851 */ GIR_EraseRootFromParent_Done, |
| 28129 | /* 79852 */ // Label 1713: @79852 |
| 28130 | /* 79852 */ GIM_Try, /*On fail goto*//*Label 1714*/ GIMT_Encode4(79940), // Rule ID 23189 // |
| 28131 | /* 79857 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28132 | /* 79860 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28133 | /* 79864 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28134 | /* 79868 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 28135 | /* 79872 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28136 | /* 79876 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28137 | /* 79880 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28138 | /* 79885 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 28139 | /* 79889 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28140 | /* 79893 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28141 | /* 79896 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28142 | /* 79900 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28143 | /* 79904 */ // MIs[0] src1 |
| 28144 | /* 79904 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28145 | /* 79909 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28146 | /* 79911 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28147 | /* 79918 */ // (st (and:{ *:[i64] } GR64:{ *:[i64] }:$src2, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (AND64mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28148 | /* 79918 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64mr), |
| 28149 | /* 79921 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28150 | /* 79925 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 28151 | /* 79929 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28152 | /* 79932 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28153 | /* 79938 */ GIR_RootConstrainSelectedInstOperands, |
| 28154 | /* 79939 */ // GIR_Coverage, 23189, |
| 28155 | /* 79939 */ GIR_EraseRootFromParent_Done, |
| 28156 | /* 79940 */ // Label 1714: @79940 |
| 28157 | /* 79940 */ GIM_Try, /*On fail goto*//*Label 1715*/ GIMT_Encode4(80041), // Rule ID 752 // |
| 28158 | /* 79945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 28159 | /* 79948 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28160 | /* 79951 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28161 | /* 79955 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28162 | /* 79959 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 28163 | /* 79963 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28164 | /* 79967 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 28165 | /* 79971 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28166 | /* 79975 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28167 | /* 79979 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28168 | /* 79982 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28169 | /* 79986 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28170 | /* 79990 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 28171 | /* 79995 */ // MIs[0] src1 |
| 28172 | /* 79995 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28173 | /* 80000 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28174 | /* 80002 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28175 | /* 80009 */ // (st (sra:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SAR64mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 28176 | /* 80009 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 28177 | /* 80013 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 28178 | /* 80019 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 28179 | /* 80023 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64mCL), |
| 28180 | /* 80026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28181 | /* 80030 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28182 | /* 80033 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28183 | /* 80039 */ GIR_RootConstrainSelectedInstOperands, |
| 28184 | /* 80040 */ // GIR_Coverage, 752, |
| 28185 | /* 80040 */ GIR_EraseRootFromParent_Done, |
| 28186 | /* 80041 */ // Label 1715: @80041 |
| 28187 | /* 80041 */ GIM_Try, /*On fail goto*//*Label 1716*/ GIMT_Encode4(80142), // Rule ID 720 // |
| 28188 | /* 80046 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 28189 | /* 80049 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28190 | /* 80052 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28191 | /* 80056 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28192 | /* 80060 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 28193 | /* 80064 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28194 | /* 80068 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 28195 | /* 80072 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28196 | /* 80076 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28197 | /* 80080 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28198 | /* 80083 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28199 | /* 80087 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28200 | /* 80091 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 28201 | /* 80096 */ // MIs[0] src1 |
| 28202 | /* 80096 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28203 | /* 80101 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28204 | /* 80103 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28205 | /* 80110 */ // (st (srl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHR64mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 28206 | /* 80110 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 28207 | /* 80114 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 28208 | /* 80120 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 28209 | /* 80124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64mCL), |
| 28210 | /* 80127 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28211 | /* 80131 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28212 | /* 80134 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28213 | /* 80140 */ GIR_RootConstrainSelectedInstOperands, |
| 28214 | /* 80141 */ // GIR_Coverage, 720, |
| 28215 | /* 80141 */ GIR_EraseRootFromParent_Done, |
| 28216 | /* 80142 */ // Label 1716: @80142 |
| 28217 | /* 80142 */ GIM_Try, /*On fail goto*//*Label 1717*/ GIMT_Encode4(80230), // Rule ID 340 // |
| 28218 | /* 80147 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28219 | /* 80150 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28220 | /* 80154 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28221 | /* 80158 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 28222 | /* 80162 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28223 | /* 80166 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28224 | /* 80170 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28225 | /* 80174 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28226 | /* 80178 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28227 | /* 80181 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28228 | /* 80185 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28229 | /* 80189 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28230 | /* 80194 */ // MIs[0] src1 |
| 28231 | /* 80194 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28232 | /* 80199 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28233 | /* 80201 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28234 | /* 80208 */ // (st (or:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR64mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28235 | /* 80208 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64mr), |
| 28236 | /* 80211 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28237 | /* 80215 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 28238 | /* 80219 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28239 | /* 80222 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28240 | /* 80228 */ GIR_RootConstrainSelectedInstOperands, |
| 28241 | /* 80229 */ // GIR_Coverage, 340, |
| 28242 | /* 80229 */ GIR_EraseRootFromParent_Done, |
| 28243 | /* 80230 */ // Label 1717: @80230 |
| 28244 | /* 80230 */ GIM_Try, /*On fail goto*//*Label 1718*/ GIMT_Encode4(80318), // Rule ID 23201 // |
| 28245 | /* 80235 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28246 | /* 80238 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28247 | /* 80242 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28248 | /* 80246 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 28249 | /* 80250 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28250 | /* 80254 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28251 | /* 80258 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28252 | /* 80263 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 28253 | /* 80267 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28254 | /* 80271 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28255 | /* 80274 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28256 | /* 80278 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28257 | /* 80282 */ // MIs[0] src1 |
| 28258 | /* 80282 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28259 | /* 80287 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28260 | /* 80289 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28261 | /* 80296 */ // (st (or:{ *:[i64] } GR64:{ *:[i64] }:$src2, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (OR64mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28262 | /* 80296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64mr), |
| 28263 | /* 80299 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28264 | /* 80303 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 28265 | /* 80307 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28266 | /* 80310 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28267 | /* 80316 */ GIR_RootConstrainSelectedInstOperands, |
| 28268 | /* 80317 */ // GIR_Coverage, 23201, |
| 28269 | /* 80317 */ GIR_EraseRootFromParent_Done, |
| 28270 | /* 80318 */ // Label 1718: @80318 |
| 28271 | /* 80318 */ GIM_Try, /*On fail goto*//*Label 1719*/ GIMT_Encode4(80419), // Rule ID 784 // |
| 28272 | /* 80323 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 28273 | /* 80326 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28274 | /* 80329 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28275 | /* 80333 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28276 | /* 80337 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 28277 | /* 80341 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28278 | /* 80345 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 28279 | /* 80349 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28280 | /* 80353 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28281 | /* 80357 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28282 | /* 80360 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28283 | /* 80364 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28284 | /* 80368 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 28285 | /* 80373 */ // MIs[0] src1 |
| 28286 | /* 80373 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28287 | /* 80378 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28288 | /* 80380 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28289 | /* 80387 */ // (st (rotl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROL64mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 28290 | /* 80387 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 28291 | /* 80391 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 28292 | /* 80397 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 28293 | /* 80401 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64mCL), |
| 28294 | /* 80404 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28295 | /* 80408 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28296 | /* 80411 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28297 | /* 80417 */ GIR_RootConstrainSelectedInstOperands, |
| 28298 | /* 80418 */ // GIR_Coverage, 784, |
| 28299 | /* 80418 */ GIR_EraseRootFromParent_Done, |
| 28300 | /* 80419 */ // Label 1719: @80419 |
| 28301 | /* 80419 */ GIM_Try, /*On fail goto*//*Label 1720*/ GIMT_Encode4(80520), // Rule ID 816 // |
| 28302 | /* 80424 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 28303 | /* 80427 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28304 | /* 80430 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28305 | /* 80434 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28306 | /* 80438 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 28307 | /* 80442 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28308 | /* 80446 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 28309 | /* 80450 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28310 | /* 80454 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28311 | /* 80458 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28312 | /* 80461 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28313 | /* 80465 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28314 | /* 80469 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 28315 | /* 80474 */ // MIs[0] src1 |
| 28316 | /* 80474 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28317 | /* 80479 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28318 | /* 80481 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28319 | /* 80488 */ // (st (rotr:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ROR64mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 28320 | /* 80488 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 28321 | /* 80492 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 28322 | /* 80498 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 28323 | /* 80502 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64mCL), |
| 28324 | /* 80505 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28325 | /* 80509 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28326 | /* 80512 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28327 | /* 80518 */ GIR_RootConstrainSelectedInstOperands, |
| 28328 | /* 80519 */ // GIR_Coverage, 816, |
| 28329 | /* 80519 */ GIR_EraseRootFromParent_Done, |
| 28330 | /* 80520 */ // Label 1720: @80520 |
| 28331 | /* 80520 */ GIM_Try, /*On fail goto*//*Label 1721*/ GIMT_Encode4(80621), // Rule ID 688 // |
| 28332 | /* 80525 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 28333 | /* 80528 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28334 | /* 80531 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28335 | /* 80535 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28336 | /* 80539 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 28337 | /* 80543 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28338 | /* 80547 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 28339 | /* 80551 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28340 | /* 80555 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28341 | /* 80559 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28342 | /* 80562 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28343 | /* 80566 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28344 | /* 80570 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 28345 | /* 80575 */ // MIs[0] src1 |
| 28346 | /* 80575 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28347 | /* 80580 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28348 | /* 80582 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28349 | /* 80589 */ // (st (shl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SHL64mCL:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 28350 | /* 80589 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 28351 | /* 80593 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 28352 | /* 80599 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 28353 | /* 80603 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64mCL), |
| 28354 | /* 80606 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28355 | /* 80610 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28356 | /* 80613 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28357 | /* 80619 */ GIR_RootConstrainSelectedInstOperands, |
| 28358 | /* 80620 */ // GIR_Coverage, 688, |
| 28359 | /* 80620 */ GIR_EraseRootFromParent_Done, |
| 28360 | /* 80621 */ // Label 1721: @80621 |
| 28361 | /* 80621 */ GIM_Try, /*On fail goto*//*Label 1722*/ GIMT_Encode4(80709), // Rule ID 448 // |
| 28362 | /* 80626 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28363 | /* 80629 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28364 | /* 80633 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28365 | /* 80637 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 28366 | /* 80641 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28367 | /* 80645 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28368 | /* 80649 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28369 | /* 80653 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28370 | /* 80657 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28371 | /* 80660 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28372 | /* 80664 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28373 | /* 80668 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28374 | /* 80673 */ // MIs[0] src1 |
| 28375 | /* 80673 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28376 | /* 80678 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28377 | /* 80680 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28378 | /* 80687 */ // (st (sub:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (SUB64mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28379 | /* 80687 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mr), |
| 28380 | /* 80690 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28381 | /* 80694 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 28382 | /* 80698 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28383 | /* 80701 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28384 | /* 80707 */ GIR_RootConstrainSelectedInstOperands, |
| 28385 | /* 80708 */ // GIR_Coverage, 448, |
| 28386 | /* 80708 */ GIR_EraseRootFromParent_Done, |
| 28387 | /* 80709 */ // Label 1722: @80709 |
| 28388 | /* 80709 */ GIM_Try, /*On fail goto*//*Label 1723*/ GIMT_Encode4(80797), // Rule ID 376 // |
| 28389 | /* 80714 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28390 | /* 80717 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28391 | /* 80721 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28392 | /* 80725 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 28393 | /* 80729 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28394 | /* 80733 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28395 | /* 80737 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28396 | /* 80741 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28397 | /* 80745 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28398 | /* 80748 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28399 | /* 80752 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28400 | /* 80756 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28401 | /* 80761 */ // MIs[0] src1 |
| 28402 | /* 80761 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28403 | /* 80766 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28404 | /* 80768 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28405 | /* 80775 */ // (st (xor:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src2), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR64mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28406 | /* 80775 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64mr), |
| 28407 | /* 80778 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28408 | /* 80782 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 28409 | /* 80786 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28410 | /* 80789 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28411 | /* 80795 */ GIR_RootConstrainSelectedInstOperands, |
| 28412 | /* 80796 */ // GIR_Coverage, 376, |
| 28413 | /* 80796 */ GIR_EraseRootFromParent_Done, |
| 28414 | /* 80797 */ // Label 1723: @80797 |
| 28415 | /* 80797 */ GIM_Try, /*On fail goto*//*Label 1724*/ GIMT_Encode4(80885), // Rule ID 23213 // |
| 28416 | /* 80802 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28417 | /* 80805 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28418 | /* 80809 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28419 | /* 80813 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 28420 | /* 80817 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28421 | /* 80821 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28422 | /* 80825 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28423 | /* 80830 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 28424 | /* 80834 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28425 | /* 80838 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28426 | /* 80841 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28427 | /* 80845 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28428 | /* 80849 */ // MIs[0] src1 |
| 28429 | /* 80849 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28430 | /* 80854 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28431 | /* 80856 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28432 | /* 80863 */ // (st (xor:{ *:[i64] } GR64:{ *:[i64] }:$src2, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (XOR64mr:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 28433 | /* 80863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64mr), |
| 28434 | /* 80866 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28435 | /* 80870 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 28436 | /* 80874 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28437 | /* 80877 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28438 | /* 80883 */ GIR_RootConstrainSelectedInstOperands, |
| 28439 | /* 80884 */ // GIR_Coverage, 23213, |
| 28440 | /* 80884 */ GIR_EraseRootFromParent_Done, |
| 28441 | /* 80885 */ // Label 1724: @80885 |
| 28442 | /* 80885 */ GIM_Try, /*On fail goto*//*Label 1725*/ GIMT_Encode4(80942), // Rule ID 22510 // |
| 28443 | /* 80890 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 28444 | /* 80893 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28445 | /* 80900 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28446 | /* 80904 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 28447 | /* 80908 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 28448 | /* 80912 */ // MIs[1] Operand 1 |
| 28449 | /* 80912 */ // No operand predicates |
| 28450 | /* 80912 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28451 | /* 80916 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28452 | /* 80918 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28453 | /* 80925 */ // (atomic_store (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (MOV64mi32 addr:{ *:[iPTR] }:$dst, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src) |
| 28454 | /* 80925 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64mi32), |
| 28455 | /* 80928 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28456 | /* 80932 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 28457 | /* 80935 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28458 | /* 80940 */ GIR_RootConstrainSelectedInstOperands, |
| 28459 | /* 80941 */ // GIR_Coverage, 22510, |
| 28460 | /* 80941 */ GIR_EraseRootFromParent_Done, |
| 28461 | /* 80942 */ // Label 1725: @80942 |
| 28462 | /* 80942 */ GIM_Try, /*On fail goto*//*Label 1726*/ GIMT_Encode4(81008), // Rule ID 22522 // |
| 28463 | /* 80947 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 28464 | /* 80950 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 28465 | /* 80953 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28466 | /* 80960 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28467 | /* 80964 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 28468 | /* 80968 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28469 | /* 80972 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 28470 | /* 80977 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28471 | /* 80981 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28472 | /* 80983 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28473 | /* 80990 */ // (atomic_store (bitconvert:{ *:[i64] } FR64:{ *:[f64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (MOVSDmr addr:{ *:[iPTR] }:$dst, FR64:{ *:[f64] }:$src) |
| 28474 | /* 80990 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSDmr), |
| 28475 | /* 80993 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28476 | /* 80997 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 28477 | /* 81001 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28478 | /* 81006 */ GIR_RootConstrainSelectedInstOperands, |
| 28479 | /* 81007 */ // GIR_Coverage, 22522, |
| 28480 | /* 81007 */ GIR_EraseRootFromParent_Done, |
| 28481 | /* 81008 */ // Label 1726: @81008 |
| 28482 | /* 81008 */ GIM_Try, /*On fail goto*//*Label 1727*/ GIMT_Encode4(81074), // Rule ID 22523 // |
| 28483 | /* 81013 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 28484 | /* 81016 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 28485 | /* 81019 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28486 | /* 81026 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28487 | /* 81030 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 28488 | /* 81034 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28489 | /* 81038 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 28490 | /* 81043 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28491 | /* 81047 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28492 | /* 81049 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28493 | /* 81056 */ // (atomic_store (bitconvert:{ *:[i64] } FR64:{ *:[f64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (VMOVSDmr addr:{ *:[iPTR] }:$dst, FR64:{ *:[f64] }:$src) |
| 28494 | /* 81056 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDmr), |
| 28495 | /* 81059 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28496 | /* 81063 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 28497 | /* 81067 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28498 | /* 81072 */ GIR_RootConstrainSelectedInstOperands, |
| 28499 | /* 81073 */ // GIR_Coverage, 22523, |
| 28500 | /* 81073 */ GIR_EraseRootFromParent_Done, |
| 28501 | /* 81074 */ // Label 1727: @81074 |
| 28502 | /* 81074 */ GIM_Try, /*On fail goto*//*Label 1728*/ GIMT_Encode4(81140), // Rule ID 22524 // |
| 28503 | /* 81079 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 28504 | /* 81082 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 28505 | /* 81085 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28506 | /* 81092 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28507 | /* 81096 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 28508 | /* 81100 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28509 | /* 81104 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 28510 | /* 81109 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28511 | /* 81113 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28512 | /* 81115 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28513 | /* 81122 */ // (atomic_store (bitconvert:{ *:[i64] } FR64:{ *:[f64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (VMOVSDmr addr:{ *:[iPTR] }:$dst, FR64:{ *:[f64] }:$src) |
| 28514 | /* 81122 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDmr), |
| 28515 | /* 81125 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28516 | /* 81129 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 28517 | /* 81133 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28518 | /* 81138 */ GIR_RootConstrainSelectedInstOperands, |
| 28519 | /* 81139 */ // GIR_Coverage, 22524, |
| 28520 | /* 81139 */ GIR_EraseRootFromParent_Done, |
| 28521 | /* 81140 */ // Label 1728: @81140 |
| 28522 | /* 81140 */ GIM_Try, /*On fail goto*//*Label 1729*/ GIMT_Encode4(81203), // Rule ID 54 // |
| 28523 | /* 81145 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 28524 | /* 81148 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28525 | /* 81151 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28526 | /* 81155 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28527 | /* 81159 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 28528 | /* 81163 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28529 | /* 81167 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28530 | /* 81172 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28531 | /* 81176 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28532 | /* 81178 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28533 | /* 81185 */ // (st (bswap:{ *:[i64] } GR64:{ *:[i64] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE64mr addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src1) |
| 28534 | /* 81185 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE64mr), |
| 28535 | /* 81188 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28536 | /* 81192 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 28537 | /* 81196 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28538 | /* 81201 */ GIR_RootConstrainSelectedInstOperands, |
| 28539 | /* 81202 */ // GIR_Coverage, 54, |
| 28540 | /* 81202 */ GIR_EraseRootFromParent_Done, |
| 28541 | /* 81203 */ // Label 1729: @81203 |
| 28542 | /* 81203 */ GIM_Try, /*On fail goto*//*Label 1730*/ GIMT_Encode4(81266), // Rule ID 60 // |
| 28543 | /* 81208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 28544 | /* 81211 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28545 | /* 81214 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28546 | /* 81218 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28547 | /* 81222 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 28548 | /* 81226 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28549 | /* 81230 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28550 | /* 81235 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28551 | /* 81239 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28552 | /* 81241 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28553 | /* 81248 */ // (st (bswap:{ *:[i64] } GR64:{ *:[i64] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE64mr_EVEX addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src1) |
| 28554 | /* 81248 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE64mr_EVEX), |
| 28555 | /* 81251 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28556 | /* 81255 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 28557 | /* 81259 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28558 | /* 81264 */ GIR_RootConstrainSelectedInstOperands, |
| 28559 | /* 81265 */ // GIR_Coverage, 60, |
| 28560 | /* 81265 */ GIR_EraseRootFromParent_Done, |
| 28561 | /* 81266 */ // Label 1730: @81266 |
| 28562 | /* 81266 */ GIM_Try, /*On fail goto*//*Label 1731*/ GIMT_Encode4(81311), // Rule ID 22514 // |
| 28563 | /* 81271 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 28564 | /* 81274 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28565 | /* 81281 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28566 | /* 81285 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28567 | /* 81289 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28568 | /* 81296 */ // (atomic_store GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (MOV64mr addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 28569 | /* 81296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64mr), |
| 28570 | /* 81299 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28571 | /* 81303 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28572 | /* 81305 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28573 | /* 81309 */ GIR_RootConstrainSelectedInstOperands, |
| 28574 | /* 81310 */ // GIR_Coverage, 22514, |
| 28575 | /* 81310 */ GIR_EraseRootFromParent_Done, |
| 28576 | /* 81311 */ // Label 1731: @81311 |
| 28577 | /* 81311 */ GIM_Try, /*On fail goto*//*Label 1732*/ GIMT_Encode4(81353), // Rule ID 35 // |
| 28578 | /* 81316 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28579 | /* 81319 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28580 | /* 81323 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28581 | /* 81327 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28582 | /* 81331 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28583 | /* 81338 */ // (st GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV64mr addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 28584 | /* 81338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64mr), |
| 28585 | /* 81341 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28586 | /* 81345 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28587 | /* 81347 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28588 | /* 81351 */ GIR_RootConstrainSelectedInstOperands, |
| 28589 | /* 81352 */ // GIR_Coverage, 35, |
| 28590 | /* 81352 */ GIR_EraseRootFromParent_Done, |
| 28591 | /* 81353 */ // Label 1732: @81353 |
| 28592 | /* 81353 */ GIM_Try, /*On fail goto*//*Label 1733*/ GIMT_Encode4(81408), // Rule ID 1096 // |
| 28593 | /* 81358 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 28594 | /* 81361 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28595 | /* 81364 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28596 | /* 81368 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 28597 | /* 81375 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 28598 | /* 81379 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28599 | /* 81383 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28600 | /* 81390 */ // (st RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstoref32>> => (ST_Fp64m32:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP64:{ *:[f64] }:$src) |
| 28601 | /* 81390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_Fp64m32), |
| 28602 | /* 81393 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 28603 | /* 81397 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28604 | /* 81399 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 28605 | /* 81402 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28606 | /* 81406 */ GIR_RootConstrainSelectedInstOperands, |
| 28607 | /* 81407 */ // GIR_Coverage, 1096, |
| 28608 | /* 81407 */ GIR_EraseRootFromParent_Done, |
| 28609 | /* 81408 */ // Label 1733: @81408 |
| 28610 | /* 81408 */ GIM_Try, /*On fail goto*//*Label 1734*/ GIMT_Encode4(81456), // Rule ID 1097 // |
| 28611 | /* 81413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 28612 | /* 81416 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28613 | /* 81419 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28614 | /* 81423 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 28615 | /* 81427 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28616 | /* 81431 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28617 | /* 81438 */ // (st RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ST_Fp64m:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP64:{ *:[f64] }:$src) |
| 28618 | /* 81438 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_Fp64m), |
| 28619 | /* 81441 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 28620 | /* 81445 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28621 | /* 81447 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 28622 | /* 81450 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28623 | /* 81454 */ GIR_RootConstrainSelectedInstOperands, |
| 28624 | /* 81455 */ // GIR_Coverage, 1097, |
| 28625 | /* 81455 */ GIR_EraseRootFromParent_Done, |
| 28626 | /* 81456 */ // Label 1734: @81456 |
| 28627 | /* 81456 */ GIM_Try, /*On fail goto*//*Label 1735*/ GIMT_Encode4(81501), // Rule ID 1692 // |
| 28628 | /* 81461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 28629 | /* 81464 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28630 | /* 81467 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28631 | /* 81471 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 28632 | /* 81475 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28633 | /* 81479 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28634 | /* 81486 */ // (st FR64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVSDmr addr:{ *:[iPTR] }:$dst, FR64:{ *:[f64] }:$src) |
| 28635 | /* 81486 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDmr), |
| 28636 | /* 81489 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28637 | /* 81493 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28638 | /* 81495 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28639 | /* 81499 */ GIR_RootConstrainSelectedInstOperands, |
| 28640 | /* 81500 */ // GIR_Coverage, 1692, |
| 28641 | /* 81500 */ GIR_EraseRootFromParent_Done, |
| 28642 | /* 81501 */ // Label 1735: @81501 |
| 28643 | /* 81501 */ GIM_Try, /*On fail goto*//*Label 1736*/ GIMT_Encode4(81546), // Rule ID 1694 // |
| 28644 | /* 81506 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 28645 | /* 81509 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28646 | /* 81512 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28647 | /* 81516 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 28648 | /* 81520 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28649 | /* 81524 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28650 | /* 81531 */ // (st FR64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVSDmr addr:{ *:[iPTR] }:$dst, FR64:{ *:[f64] }:$src) |
| 28651 | /* 81531 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSDmr), |
| 28652 | /* 81534 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28653 | /* 81538 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28654 | /* 81540 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28655 | /* 81544 */ GIR_RootConstrainSelectedInstOperands, |
| 28656 | /* 81545 */ // GIR_Coverage, 1694, |
| 28657 | /* 81545 */ GIR_EraseRootFromParent_Done, |
| 28658 | /* 81546 */ // Label 1736: @81546 |
| 28659 | /* 81546 */ GIM_Try, /*On fail goto*//*Label 1737*/ GIMT_Encode4(81591), // Rule ID 4616 // |
| 28660 | /* 81551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 28661 | /* 81554 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28662 | /* 81557 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28663 | /* 81561 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 28664 | /* 81565 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28665 | /* 81569 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28666 | /* 81576 */ // (st FR64X:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVSDZmr addr:{ *:[iPTR] }:$dst, FR64X:{ *:[f64] }:$src) |
| 28667 | /* 81576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDZmr), |
| 28668 | /* 81579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28669 | /* 81583 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28670 | /* 81585 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28671 | /* 81589 */ GIR_RootConstrainSelectedInstOperands, |
| 28672 | /* 81590 */ // GIR_Coverage, 4616, |
| 28673 | /* 81590 */ GIR_EraseRootFromParent_Done, |
| 28674 | /* 81591 */ // Label 1737: @81591 |
| 28675 | /* 81591 */ GIM_Reject, |
| 28676 | /* 81592 */ // Label 1479: @81592 |
| 28677 | /* 81592 */ GIM_Try, /*On fail goto*//*Label 1738*/ GIMT_Encode4(81750), |
| 28678 | /* 81597 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28679 | /* 81600 */ GIM_Try, /*On fail goto*//*Label 1739*/ GIMT_Encode4(81652), // Rule ID 1098 // |
| 28680 | /* 81605 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 28681 | /* 81608 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28682 | /* 81612 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 28683 | /* 81619 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 28684 | /* 81623 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28685 | /* 81627 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28686 | /* 81634 */ // (st RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstoref32>> => (ST_Fp80m32:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP80:{ *:[f80] }:$src) |
| 28687 | /* 81634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_Fp80m32), |
| 28688 | /* 81637 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 28689 | /* 81641 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28690 | /* 81643 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 28691 | /* 81646 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28692 | /* 81650 */ GIR_RootConstrainSelectedInstOperands, |
| 28693 | /* 81651 */ // GIR_Coverage, 1098, |
| 28694 | /* 81651 */ GIR_EraseRootFromParent_Done, |
| 28695 | /* 81652 */ // Label 1739: @81652 |
| 28696 | /* 81652 */ GIM_Try, /*On fail goto*//*Label 1740*/ GIMT_Encode4(81704), // Rule ID 1099 // |
| 28697 | /* 81657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 28698 | /* 81660 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28699 | /* 81664 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28700 | /* 81671 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 28701 | /* 81675 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28702 | /* 81679 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28703 | /* 81686 */ // (st RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstoref64>> => (ST_Fp80m64:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP80:{ *:[f80] }:$src) |
| 28704 | /* 81686 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_Fp80m64), |
| 28705 | /* 81689 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 28706 | /* 81693 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28707 | /* 81695 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 28708 | /* 81698 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28709 | /* 81702 */ GIR_RootConstrainSelectedInstOperands, |
| 28710 | /* 81703 */ // GIR_Coverage, 1099, |
| 28711 | /* 81703 */ GIR_EraseRootFromParent_Done, |
| 28712 | /* 81704 */ // Label 1740: @81704 |
| 28713 | /* 81704 */ GIM_Try, /*On fail goto*//*Label 1741*/ GIMT_Encode4(81749), // Rule ID 1100 // |
| 28714 | /* 81709 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 28715 | /* 81712 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28716 | /* 81716 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 28717 | /* 81720 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28718 | /* 81724 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28719 | /* 81731 */ // (st RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ST_FpP80m:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP80:{ *:[f80] }:$src) |
| 28720 | /* 81731 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_FpP80m), |
| 28721 | /* 81734 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 28722 | /* 81738 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28723 | /* 81740 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 28724 | /* 81743 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28725 | /* 81747 */ GIR_RootConstrainSelectedInstOperands, |
| 28726 | /* 81748 */ // GIR_Coverage, 1100, |
| 28727 | /* 81748 */ GIR_EraseRootFromParent_Done, |
| 28728 | /* 81749 */ // Label 1741: @81749 |
| 28729 | /* 81749 */ GIM_Reject, |
| 28730 | /* 81750 */ // Label 1738: @81750 |
| 28731 | /* 81750 */ GIM_Reject, |
| 28732 | /* 81751 */ // Label 1480: @81751 |
| 28733 | /* 81751 */ GIM_Try, /*On fail goto*//*Label 1742*/ GIMT_Encode4(82004), |
| 28734 | /* 81756 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28735 | /* 81759 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28736 | /* 81763 */ GIM_Try, /*On fail goto*//*Label 1743*/ GIMT_Encode4(81805), // Rule ID 23142 // |
| 28737 | /* 81768 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoAVX), |
| 28738 | /* 81771 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28739 | /* 81775 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28740 | /* 81779 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28741 | /* 81783 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28742 | /* 81790 */ // (st VR128:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[f128] }:$src) |
| 28743 | /* 81790 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 28744 | /* 81793 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28745 | /* 81797 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28746 | /* 81799 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28747 | /* 81803 */ GIR_RootConstrainSelectedInstOperands, |
| 28748 | /* 81804 */ // GIR_Coverage, 23142, |
| 28749 | /* 81804 */ GIR_EraseRootFromParent_Done, |
| 28750 | /* 81805 */ // Label 1743: @81805 |
| 28751 | /* 81805 */ GIM_Try, /*On fail goto*//*Label 1744*/ GIMT_Encode4(81843), // Rule ID 23143 // |
| 28752 | /* 81810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoAVX), |
| 28753 | /* 81813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28754 | /* 81817 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28755 | /* 81821 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28756 | /* 81828 */ // (st VR128:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[f128] }:$src) |
| 28757 | /* 81828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 28758 | /* 81831 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28759 | /* 81835 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28760 | /* 81837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28761 | /* 81841 */ GIR_RootConstrainSelectedInstOperands, |
| 28762 | /* 81842 */ // GIR_Coverage, 23143, |
| 28763 | /* 81842 */ GIR_EraseRootFromParent_Done, |
| 28764 | /* 81843 */ // Label 1744: @81843 |
| 28765 | /* 81843 */ GIM_Try, /*On fail goto*//*Label 1745*/ GIMT_Encode4(81885), // Rule ID 23146 // |
| 28766 | /* 81848 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28767 | /* 81851 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28768 | /* 81855 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28769 | /* 81859 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28770 | /* 81863 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28771 | /* 81870 */ // (st VR128:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[f128] }:$src) |
| 28772 | /* 81870 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSmr), |
| 28773 | /* 81873 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28774 | /* 81877 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28775 | /* 81879 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28776 | /* 81883 */ GIR_RootConstrainSelectedInstOperands, |
| 28777 | /* 81884 */ // GIR_Coverage, 23146, |
| 28778 | /* 81884 */ GIR_EraseRootFromParent_Done, |
| 28779 | /* 81885 */ // Label 1745: @81885 |
| 28780 | /* 81885 */ GIM_Try, /*On fail goto*//*Label 1746*/ GIMT_Encode4(81923), // Rule ID 23147 // |
| 28781 | /* 81890 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28782 | /* 81893 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28783 | /* 81897 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28784 | /* 81901 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28785 | /* 81908 */ // (st VR128:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[f128] }:$src) |
| 28786 | /* 81908 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSmr), |
| 28787 | /* 81911 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28788 | /* 81915 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28789 | /* 81917 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28790 | /* 81921 */ GIR_RootConstrainSelectedInstOperands, |
| 28791 | /* 81922 */ // GIR_Coverage, 23147, |
| 28792 | /* 81922 */ GIR_EraseRootFromParent_Done, |
| 28793 | /* 81923 */ // Label 1746: @81923 |
| 28794 | /* 81923 */ GIM_Try, /*On fail goto*//*Label 1747*/ GIMT_Encode4(81965), // Rule ID 23150 // |
| 28795 | /* 81928 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 28796 | /* 81931 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28797 | /* 81935 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28798 | /* 81939 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28799 | /* 81943 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28800 | /* 81950 */ // (st VR128X:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[f128] }:$src) |
| 28801 | /* 81950 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128mr), |
| 28802 | /* 81953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28803 | /* 81957 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28804 | /* 81959 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28805 | /* 81963 */ GIR_RootConstrainSelectedInstOperands, |
| 28806 | /* 81964 */ // GIR_Coverage, 23150, |
| 28807 | /* 81964 */ GIR_EraseRootFromParent_Done, |
| 28808 | /* 81965 */ // Label 1747: @81965 |
| 28809 | /* 81965 */ GIM_Try, /*On fail goto*//*Label 1748*/ GIMT_Encode4(82003), // Rule ID 23151 // |
| 28810 | /* 81970 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 28811 | /* 81973 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28812 | /* 81977 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28813 | /* 81981 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28814 | /* 81988 */ // (st VR128X:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[f128] }:$src) |
| 28815 | /* 81988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128mr), |
| 28816 | /* 81991 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28817 | /* 81995 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28818 | /* 81997 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28819 | /* 82001 */ GIR_RootConstrainSelectedInstOperands, |
| 28820 | /* 82002 */ // GIR_Coverage, 23151, |
| 28821 | /* 82002 */ GIR_EraseRootFromParent_Done, |
| 28822 | /* 82003 */ // Label 1748: @82003 |
| 28823 | /* 82003 */ GIM_Reject, |
| 28824 | /* 82004 */ // Label 1742: @82004 |
| 28825 | /* 82004 */ GIM_Reject, |
| 28826 | /* 82005 */ // Label 1481: @82005 |
| 28827 | /* 82005 */ GIM_Try, /*On fail goto*//*Label 1749*/ GIMT_Encode4(82498), |
| 28828 | /* 82010 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28829 | /* 82013 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28830 | /* 82017 */ GIM_Try, /*On fail goto*//*Label 1750*/ GIMT_Encode4(82059), // Rule ID 1716 // |
| 28831 | /* 82022 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28832 | /* 82025 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28833 | /* 82029 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28834 | /* 82033 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28835 | /* 82037 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28836 | /* 82044 */ // (st VR128:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2f64] }:$src) |
| 28837 | /* 82044 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDmr), |
| 28838 | /* 82047 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28839 | /* 82051 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28840 | /* 82053 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28841 | /* 82057 */ GIR_RootConstrainSelectedInstOperands, |
| 28842 | /* 82058 */ // GIR_Coverage, 1716, |
| 28843 | /* 82058 */ GIR_EraseRootFromParent_Done, |
| 28844 | /* 82059 */ // Label 1750: @82059 |
| 28845 | /* 82059 */ GIM_Try, /*On fail goto*//*Label 1751*/ GIMT_Encode4(82097), // Rule ID 1718 // |
| 28846 | /* 82064 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28847 | /* 82067 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28848 | /* 82071 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28849 | /* 82075 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28850 | /* 82082 */ // (st VR128:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2f64] }:$src) |
| 28851 | /* 82082 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDmr), |
| 28852 | /* 82085 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28853 | /* 82089 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28854 | /* 82091 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28855 | /* 82095 */ GIR_RootConstrainSelectedInstOperands, |
| 28856 | /* 82096 */ // GIR_Coverage, 1718, |
| 28857 | /* 82096 */ GIR_EraseRootFromParent_Done, |
| 28858 | /* 82097 */ // Label 1751: @82097 |
| 28859 | /* 82097 */ GIM_Try, /*On fail goto*//*Label 1752*/ GIMT_Encode4(82139), // Rule ID 1724 // |
| 28860 | /* 82102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 28861 | /* 82105 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28862 | /* 82109 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28863 | /* 82113 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28864 | /* 82117 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28865 | /* 82124 */ // (st VR128:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2f64] }:$src) |
| 28866 | /* 82124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPDmr), |
| 28867 | /* 82127 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28868 | /* 82131 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28869 | /* 82133 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28870 | /* 82137 */ GIR_RootConstrainSelectedInstOperands, |
| 28871 | /* 82138 */ // GIR_Coverage, 1724, |
| 28872 | /* 82138 */ GIR_EraseRootFromParent_Done, |
| 28873 | /* 82139 */ // Label 1752: @82139 |
| 28874 | /* 82139 */ GIM_Try, /*On fail goto*//*Label 1753*/ GIMT_Encode4(82177), // Rule ID 1726 // |
| 28875 | /* 82144 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 28876 | /* 82147 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28877 | /* 82151 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28878 | /* 82155 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28879 | /* 82162 */ // (st VR128:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2f64] }:$src) |
| 28880 | /* 82162 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPDmr), |
| 28881 | /* 82165 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28882 | /* 82169 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28883 | /* 82171 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28884 | /* 82175 */ GIR_RootConstrainSelectedInstOperands, |
| 28885 | /* 82176 */ // GIR_Coverage, 1726, |
| 28886 | /* 82176 */ GIR_EraseRootFromParent_Done, |
| 28887 | /* 82177 */ // Label 1753: @82177 |
| 28888 | /* 82177 */ GIM_Try, /*On fail goto*//*Label 1754*/ GIMT_Encode4(82219), // Rule ID 2520 // |
| 28889 | /* 82182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28890 | /* 82185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28891 | /* 82189 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28892 | /* 82193 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28893 | /* 82197 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28894 | /* 82204 */ // (st VR128:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQAmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src) |
| 28895 | /* 82204 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQAmr), |
| 28896 | /* 82207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28897 | /* 82211 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28898 | /* 82213 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28899 | /* 82217 */ GIR_RootConstrainSelectedInstOperands, |
| 28900 | /* 82218 */ // GIR_Coverage, 2520, |
| 28901 | /* 82218 */ GIR_EraseRootFromParent_Done, |
| 28902 | /* 82219 */ // Label 1754: @82219 |
| 28903 | /* 82219 */ GIM_Try, /*On fail goto*//*Label 1755*/ GIMT_Encode4(82257), // Rule ID 2521 // |
| 28904 | /* 82224 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28905 | /* 82227 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28906 | /* 82231 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28907 | /* 82235 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28908 | /* 82242 */ // (st VR128:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQUmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src) |
| 28909 | /* 82242 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUmr), |
| 28910 | /* 82245 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28911 | /* 82249 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28912 | /* 82251 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28913 | /* 82255 */ GIR_RootConstrainSelectedInstOperands, |
| 28914 | /* 82256 */ // GIR_Coverage, 2521, |
| 28915 | /* 82256 */ GIR_EraseRootFromParent_Done, |
| 28916 | /* 82257 */ // Label 1755: @82257 |
| 28917 | /* 82257 */ GIM_Try, /*On fail goto*//*Label 1756*/ GIMT_Encode4(82299), // Rule ID 4496 // |
| 28918 | /* 82262 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28919 | /* 82265 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28920 | /* 82269 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28921 | /* 82273 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28922 | /* 82277 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28923 | /* 82284 */ // (st VR128X:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPDZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v2f64] }:$src) |
| 28924 | /* 82284 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ128mr), |
| 28925 | /* 82287 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28926 | /* 82291 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28927 | /* 82293 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28928 | /* 82297 */ GIR_RootConstrainSelectedInstOperands, |
| 28929 | /* 82298 */ // GIR_Coverage, 4496, |
| 28930 | /* 82298 */ GIR_EraseRootFromParent_Done, |
| 28931 | /* 82299 */ // Label 1756: @82299 |
| 28932 | /* 82299 */ GIM_Try, /*On fail goto*//*Label 1757*/ GIMT_Encode4(82337), // Rule ID 4520 // |
| 28933 | /* 82304 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28934 | /* 82307 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28935 | /* 82311 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28936 | /* 82315 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28937 | /* 82322 */ // (st VR128X:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPDZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v2f64] }:$src) |
| 28938 | /* 82322 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZ128mr), |
| 28939 | /* 82325 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28940 | /* 82329 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28941 | /* 82331 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28942 | /* 82335 */ GIR_RootConstrainSelectedInstOperands, |
| 28943 | /* 82336 */ // GIR_Coverage, 4520, |
| 28944 | /* 82336 */ GIR_EraseRootFromParent_Done, |
| 28945 | /* 82337 */ // Label 1757: @82337 |
| 28946 | /* 82337 */ GIM_Try, /*On fail goto*//*Label 1758*/ GIMT_Encode4(82379), // Rule ID 4550 // |
| 28947 | /* 82342 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28948 | /* 82345 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28949 | /* 82349 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28950 | /* 82353 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28951 | /* 82357 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28952 | /* 82364 */ // (st VR128X:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v2i64] }:$src) |
| 28953 | /* 82364 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128mr), |
| 28954 | /* 82367 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28955 | /* 82371 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28956 | /* 82373 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28957 | /* 82377 */ GIR_RootConstrainSelectedInstOperands, |
| 28958 | /* 82378 */ // GIR_Coverage, 4550, |
| 28959 | /* 82378 */ GIR_EraseRootFromParent_Done, |
| 28960 | /* 82379 */ // Label 1758: @82379 |
| 28961 | /* 82379 */ GIM_Try, /*On fail goto*//*Label 1759*/ GIMT_Encode4(82417), // Rule ID 4592 // |
| 28962 | /* 82384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28963 | /* 82387 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28964 | /* 82391 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28965 | /* 82395 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28966 | /* 82402 */ // (st VR128X:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v2i64] }:$src) |
| 28967 | /* 82402 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128mr), |
| 28968 | /* 82405 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28969 | /* 82409 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28970 | /* 82411 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28971 | /* 82415 */ GIR_RootConstrainSelectedInstOperands, |
| 28972 | /* 82416 */ // GIR_Coverage, 4592, |
| 28973 | /* 82416 */ GIR_EraseRootFromParent_Done, |
| 28974 | /* 82417 */ // Label 1759: @82417 |
| 28975 | /* 82417 */ GIM_Try, /*On fail goto*//*Label 1760*/ GIMT_Encode4(82459), // Rule ID 17947 // |
| 28976 | /* 82422 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 28977 | /* 82425 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28978 | /* 82429 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28979 | /* 82433 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28980 | /* 82437 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28981 | /* 82444 */ // (st VR128:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src) |
| 28982 | /* 82444 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 28983 | /* 82447 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28984 | /* 82451 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28985 | /* 82453 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28986 | /* 82457 */ GIR_RootConstrainSelectedInstOperands, |
| 28987 | /* 82458 */ // GIR_Coverage, 17947, |
| 28988 | /* 82458 */ GIR_EraseRootFromParent_Done, |
| 28989 | /* 82459 */ // Label 1760: @82459 |
| 28990 | /* 82459 */ GIM_Try, /*On fail goto*//*Label 1761*/ GIMT_Encode4(82497), // Rule ID 17951 // |
| 28991 | /* 82464 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 28992 | /* 82467 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28993 | /* 82471 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28994 | /* 82475 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28995 | /* 82482 */ // (st VR128:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src) |
| 28996 | /* 82482 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 28997 | /* 82485 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28998 | /* 82489 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28999 | /* 82491 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29000 | /* 82495 */ GIR_RootConstrainSelectedInstOperands, |
| 29001 | /* 82496 */ // GIR_Coverage, 17951, |
| 29002 | /* 82496 */ GIR_EraseRootFromParent_Done, |
| 29003 | /* 82497 */ // Label 1761: @82497 |
| 29004 | /* 82497 */ GIM_Reject, |
| 29005 | /* 82498 */ // Label 1749: @82498 |
| 29006 | /* 82498 */ GIM_Reject, |
| 29007 | /* 82499 */ // Label 1482: @82499 |
| 29008 | /* 82499 */ GIM_Try, /*On fail goto*//*Label 1762*/ GIMT_Encode4(82992), |
| 29009 | /* 82504 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29010 | /* 82507 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29011 | /* 82511 */ GIM_Try, /*On fail goto*//*Label 1763*/ GIMT_Encode4(82553), // Rule ID 1715 // |
| 29012 | /* 82516 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29013 | /* 82519 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29014 | /* 82523 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29015 | /* 82527 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29016 | /* 82531 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29017 | /* 82538 */ // (st VR128:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4f32] }:$src) |
| 29018 | /* 82538 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSmr), |
| 29019 | /* 82541 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29020 | /* 82545 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29021 | /* 82547 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29022 | /* 82551 */ GIR_RootConstrainSelectedInstOperands, |
| 29023 | /* 82552 */ // GIR_Coverage, 1715, |
| 29024 | /* 82552 */ GIR_EraseRootFromParent_Done, |
| 29025 | /* 82553 */ // Label 1763: @82553 |
| 29026 | /* 82553 */ GIM_Try, /*On fail goto*//*Label 1764*/ GIMT_Encode4(82591), // Rule ID 1717 // |
| 29027 | /* 82558 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29028 | /* 82561 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29029 | /* 82565 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29030 | /* 82569 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29031 | /* 82576 */ // (st VR128:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4f32] }:$src) |
| 29032 | /* 82576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSmr), |
| 29033 | /* 82579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29034 | /* 82583 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29035 | /* 82585 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29036 | /* 82589 */ GIR_RootConstrainSelectedInstOperands, |
| 29037 | /* 82590 */ // GIR_Coverage, 1717, |
| 29038 | /* 82590 */ GIR_EraseRootFromParent_Done, |
| 29039 | /* 82591 */ // Label 1764: @82591 |
| 29040 | /* 82591 */ GIM_Try, /*On fail goto*//*Label 1765*/ GIMT_Encode4(82633), // Rule ID 1723 // |
| 29041 | /* 82596 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29042 | /* 82599 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29043 | /* 82603 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29044 | /* 82607 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29045 | /* 82611 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29046 | /* 82618 */ // (st VR128:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4f32] }:$src) |
| 29047 | /* 82618 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 29048 | /* 82621 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29049 | /* 82625 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29050 | /* 82627 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29051 | /* 82631 */ GIR_RootConstrainSelectedInstOperands, |
| 29052 | /* 82632 */ // GIR_Coverage, 1723, |
| 29053 | /* 82632 */ GIR_EraseRootFromParent_Done, |
| 29054 | /* 82633 */ // Label 1765: @82633 |
| 29055 | /* 82633 */ GIM_Try, /*On fail goto*//*Label 1766*/ GIMT_Encode4(82671), // Rule ID 1725 // |
| 29056 | /* 82638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29057 | /* 82641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29058 | /* 82645 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29059 | /* 82649 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29060 | /* 82656 */ // (st VR128:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4f32] }:$src) |
| 29061 | /* 82656 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 29062 | /* 82659 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29063 | /* 82663 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29064 | /* 82665 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29065 | /* 82669 */ GIR_RootConstrainSelectedInstOperands, |
| 29066 | /* 82670 */ // GIR_Coverage, 1725, |
| 29067 | /* 82670 */ GIR_EraseRootFromParent_Done, |
| 29068 | /* 82671 */ // Label 1766: @82671 |
| 29069 | /* 82671 */ GIM_Try, /*On fail goto*//*Label 1767*/ GIMT_Encode4(82713), // Rule ID 4478 // |
| 29070 | /* 82676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 29071 | /* 82679 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29072 | /* 82683 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29073 | /* 82687 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29074 | /* 82691 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29075 | /* 82698 */ // (st VR128X:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v4f32] }:$src) |
| 29076 | /* 82698 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128mr), |
| 29077 | /* 82701 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29078 | /* 82705 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29079 | /* 82707 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29080 | /* 82711 */ GIR_RootConstrainSelectedInstOperands, |
| 29081 | /* 82712 */ // GIR_Coverage, 4478, |
| 29082 | /* 82712 */ GIR_EraseRootFromParent_Done, |
| 29083 | /* 82713 */ // Label 1767: @82713 |
| 29084 | /* 82713 */ GIM_Try, /*On fail goto*//*Label 1768*/ GIMT_Encode4(82751), // Rule ID 4508 // |
| 29085 | /* 82718 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 29086 | /* 82721 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29087 | /* 82725 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29088 | /* 82729 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29089 | /* 82736 */ // (st VR128X:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v4f32] }:$src) |
| 29090 | /* 82736 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128mr), |
| 29091 | /* 82739 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29092 | /* 82743 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29093 | /* 82745 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29094 | /* 82749 */ GIR_RootConstrainSelectedInstOperands, |
| 29095 | /* 82750 */ // GIR_Coverage, 4508, |
| 29096 | /* 82750 */ GIR_EraseRootFromParent_Done, |
| 29097 | /* 82751 */ // Label 1768: @82751 |
| 29098 | /* 82751 */ GIM_Try, /*On fail goto*//*Label 1769*/ GIMT_Encode4(82793), // Rule ID 17948 // |
| 29099 | /* 82756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29100 | /* 82759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29101 | /* 82763 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29102 | /* 82767 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29103 | /* 82771 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29104 | /* 82778 */ // (st VR128:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src) |
| 29105 | /* 82778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 29106 | /* 82781 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29107 | /* 82785 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29108 | /* 82787 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29109 | /* 82791 */ GIR_RootConstrainSelectedInstOperands, |
| 29110 | /* 82792 */ // GIR_Coverage, 17948, |
| 29111 | /* 82792 */ GIR_EraseRootFromParent_Done, |
| 29112 | /* 82793 */ // Label 1769: @82793 |
| 29113 | /* 82793 */ GIM_Try, /*On fail goto*//*Label 1770*/ GIMT_Encode4(82831), // Rule ID 17952 // |
| 29114 | /* 82798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29115 | /* 82801 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29116 | /* 82805 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29117 | /* 82809 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29118 | /* 82816 */ // (st VR128:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src) |
| 29119 | /* 82816 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 29120 | /* 82819 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29121 | /* 82823 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29122 | /* 82825 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29123 | /* 82829 */ GIR_RootConstrainSelectedInstOperands, |
| 29124 | /* 82830 */ // GIR_Coverage, 17952, |
| 29125 | /* 82830 */ GIR_EraseRootFromParent_Done, |
| 29126 | /* 82831 */ // Label 1770: @82831 |
| 29127 | /* 82831 */ GIM_Try, /*On fail goto*//*Label 1771*/ GIMT_Encode4(82873), // Rule ID 18327 // |
| 29128 | /* 82836 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29129 | /* 82839 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29130 | /* 82843 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29131 | /* 82847 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29132 | /* 82851 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29133 | /* 82858 */ // (st VR128:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQAmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src) |
| 29134 | /* 82858 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQAmr), |
| 29135 | /* 82861 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29136 | /* 82865 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29137 | /* 82867 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29138 | /* 82871 */ GIR_RootConstrainSelectedInstOperands, |
| 29139 | /* 82872 */ // GIR_Coverage, 18327, |
| 29140 | /* 82872 */ GIR_EraseRootFromParent_Done, |
| 29141 | /* 82873 */ // Label 1771: @82873 |
| 29142 | /* 82873 */ GIM_Try, /*On fail goto*//*Label 1772*/ GIMT_Encode4(82911), // Rule ID 18331 // |
| 29143 | /* 82878 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29144 | /* 82881 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29145 | /* 82885 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29146 | /* 82889 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29147 | /* 82896 */ // (st VR128:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQUmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src) |
| 29148 | /* 82896 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUmr), |
| 29149 | /* 82899 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29150 | /* 82903 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29151 | /* 82905 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29152 | /* 82909 */ GIR_RootConstrainSelectedInstOperands, |
| 29153 | /* 82910 */ // GIR_Coverage, 18331, |
| 29154 | /* 82910 */ GIR_EraseRootFromParent_Done, |
| 29155 | /* 82911 */ // Label 1772: @82911 |
| 29156 | /* 82911 */ GIM_Try, /*On fail goto*//*Label 1773*/ GIMT_Encode4(82953), // Rule ID 19820 // |
| 29157 | /* 82916 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29158 | /* 82919 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29159 | /* 82923 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29160 | /* 82927 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29161 | /* 82931 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29162 | /* 82938 */ // (st VR128X:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v4i32] }:$src) |
| 29163 | /* 82938 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128mr), |
| 29164 | /* 82941 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29165 | /* 82945 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29166 | /* 82947 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29167 | /* 82951 */ GIR_RootConstrainSelectedInstOperands, |
| 29168 | /* 82952 */ // GIR_Coverage, 19820, |
| 29169 | /* 82952 */ GIR_EraseRootFromParent_Done, |
| 29170 | /* 82953 */ // Label 1773: @82953 |
| 29171 | /* 82953 */ GIM_Try, /*On fail goto*//*Label 1774*/ GIMT_Encode4(82991), // Rule ID 19824 // |
| 29172 | /* 82958 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29173 | /* 82961 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29174 | /* 82965 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29175 | /* 82969 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29176 | /* 82976 */ // (st VR128X:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v4i32] }:$src) |
| 29177 | /* 82976 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128mr), |
| 29178 | /* 82979 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29179 | /* 82983 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29180 | /* 82985 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29181 | /* 82989 */ GIR_RootConstrainSelectedInstOperands, |
| 29182 | /* 82990 */ // GIR_Coverage, 19824, |
| 29183 | /* 82990 */ GIR_EraseRootFromParent_Done, |
| 29184 | /* 82991 */ // Label 1774: @82991 |
| 29185 | /* 82991 */ GIM_Reject, |
| 29186 | /* 82992 */ // Label 1762: @82992 |
| 29187 | /* 82992 */ GIM_Reject, |
| 29188 | /* 82993 */ // Label 1483: @82993 |
| 29189 | /* 82993 */ GIM_Try, /*On fail goto*//*Label 1775*/ GIMT_Encode4(83326), |
| 29190 | /* 82998 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29191 | /* 83001 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29192 | /* 83005 */ GIM_Try, /*On fail goto*//*Label 1776*/ GIMT_Encode4(83047), // Rule ID 1720 // |
| 29193 | /* 83010 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29194 | /* 83013 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29195 | /* 83017 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29196 | /* 83021 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29197 | /* 83025 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29198 | /* 83032 */ // (st VR256:{ *:[v4f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPDYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4f64] }:$src) |
| 29199 | /* 83032 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDYmr), |
| 29200 | /* 83035 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29201 | /* 83039 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29202 | /* 83041 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29203 | /* 83045 */ GIR_RootConstrainSelectedInstOperands, |
| 29204 | /* 83046 */ // GIR_Coverage, 1720, |
| 29205 | /* 83046 */ GIR_EraseRootFromParent_Done, |
| 29206 | /* 83047 */ // Label 1776: @83047 |
| 29207 | /* 83047 */ GIM_Try, /*On fail goto*//*Label 1777*/ GIMT_Encode4(83085), // Rule ID 1722 // |
| 29208 | /* 83052 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29209 | /* 83055 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29210 | /* 83059 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29211 | /* 83063 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29212 | /* 83070 */ // (st VR256:{ *:[v4f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPDYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4f64] }:$src) |
| 29213 | /* 83070 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDYmr), |
| 29214 | /* 83073 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29215 | /* 83077 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29216 | /* 83079 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29217 | /* 83083 */ GIR_RootConstrainSelectedInstOperands, |
| 29218 | /* 83084 */ // GIR_Coverage, 1722, |
| 29219 | /* 83084 */ GIR_EraseRootFromParent_Done, |
| 29220 | /* 83085 */ // Label 1777: @83085 |
| 29221 | /* 83085 */ GIM_Try, /*On fail goto*//*Label 1778*/ GIMT_Encode4(83127), // Rule ID 4495 // |
| 29222 | /* 83090 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 29223 | /* 83093 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29224 | /* 83097 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29225 | /* 83101 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29226 | /* 83105 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29227 | /* 83112 */ // (st VR256X:{ *:[v4f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPDZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v4f64] }:$src) |
| 29228 | /* 83112 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ256mr), |
| 29229 | /* 83115 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29230 | /* 83119 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29231 | /* 83121 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29232 | /* 83125 */ GIR_RootConstrainSelectedInstOperands, |
| 29233 | /* 83126 */ // GIR_Coverage, 4495, |
| 29234 | /* 83126 */ GIR_EraseRootFromParent_Done, |
| 29235 | /* 83127 */ // Label 1778: @83127 |
| 29236 | /* 83127 */ GIM_Try, /*On fail goto*//*Label 1779*/ GIMT_Encode4(83165), // Rule ID 4519 // |
| 29237 | /* 83132 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 29238 | /* 83135 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29239 | /* 83139 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29240 | /* 83143 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29241 | /* 83150 */ // (st VR256X:{ *:[v4f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPDZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v4f64] }:$src) |
| 29242 | /* 83150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZ256mr), |
| 29243 | /* 83153 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29244 | /* 83157 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29245 | /* 83159 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29246 | /* 83163 */ GIR_RootConstrainSelectedInstOperands, |
| 29247 | /* 83164 */ // GIR_Coverage, 4519, |
| 29248 | /* 83164 */ GIR_EraseRootFromParent_Done, |
| 29249 | /* 83165 */ // Label 1779: @83165 |
| 29250 | /* 83165 */ GIM_Try, /*On fail goto*//*Label 1780*/ GIMT_Encode4(83207), // Rule ID 4549 // |
| 29251 | /* 83170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 29252 | /* 83173 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29253 | /* 83177 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29254 | /* 83181 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29255 | /* 83185 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29256 | /* 83192 */ // (st VR256X:{ *:[v4i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v4i64] }:$src) |
| 29257 | /* 83192 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256mr), |
| 29258 | /* 83195 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29259 | /* 83199 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29260 | /* 83201 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29261 | /* 83205 */ GIR_RootConstrainSelectedInstOperands, |
| 29262 | /* 83206 */ // GIR_Coverage, 4549, |
| 29263 | /* 83206 */ GIR_EraseRootFromParent_Done, |
| 29264 | /* 83207 */ // Label 1780: @83207 |
| 29265 | /* 83207 */ GIM_Try, /*On fail goto*//*Label 1781*/ GIMT_Encode4(83245), // Rule ID 4591 // |
| 29266 | /* 83212 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 29267 | /* 83215 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29268 | /* 83219 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29269 | /* 83223 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29270 | /* 83230 */ // (st VR256X:{ *:[v4i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v4i64] }:$src) |
| 29271 | /* 83230 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256mr), |
| 29272 | /* 83233 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29273 | /* 83237 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29274 | /* 83239 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29275 | /* 83243 */ GIR_RootConstrainSelectedInstOperands, |
| 29276 | /* 83244 */ // GIR_Coverage, 4591, |
| 29277 | /* 83244 */ GIR_EraseRootFromParent_Done, |
| 29278 | /* 83245 */ // Label 1781: @83245 |
| 29279 | /* 83245 */ GIM_Try, /*On fail goto*//*Label 1782*/ GIMT_Encode4(83287), // Rule ID 17923 // |
| 29280 | /* 83250 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29281 | /* 83253 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29282 | /* 83257 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29283 | /* 83261 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29284 | /* 83265 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29285 | /* 83272 */ // (st VR256:{ *:[v4i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src) |
| 29286 | /* 83272 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 29287 | /* 83275 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29288 | /* 83279 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29289 | /* 83281 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29290 | /* 83285 */ GIR_RootConstrainSelectedInstOperands, |
| 29291 | /* 83286 */ // GIR_Coverage, 17923, |
| 29292 | /* 83286 */ GIR_EraseRootFromParent_Done, |
| 29293 | /* 83287 */ // Label 1782: @83287 |
| 29294 | /* 83287 */ GIM_Try, /*On fail goto*//*Label 1783*/ GIMT_Encode4(83325), // Rule ID 17927 // |
| 29295 | /* 83292 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29296 | /* 83295 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29297 | /* 83299 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29298 | /* 83303 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29299 | /* 83310 */ // (st VR256:{ *:[v4i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src) |
| 29300 | /* 83310 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 29301 | /* 83313 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29302 | /* 83317 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29303 | /* 83319 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29304 | /* 83323 */ GIR_RootConstrainSelectedInstOperands, |
| 29305 | /* 83324 */ // GIR_Coverage, 17927, |
| 29306 | /* 83324 */ GIR_EraseRootFromParent_Done, |
| 29307 | /* 83325 */ // Label 1783: @83325 |
| 29308 | /* 83325 */ GIM_Reject, |
| 29309 | /* 83326 */ // Label 1775: @83326 |
| 29310 | /* 83326 */ GIM_Reject, |
| 29311 | /* 83327 */ // Label 1484: @83327 |
| 29312 | /* 83327 */ GIM_Try, /*On fail goto*//*Label 1784*/ GIMT_Encode4(83408), |
| 29313 | /* 83332 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29314 | /* 83335 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29315 | /* 83339 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 29316 | /* 83343 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29317 | /* 83347 */ GIM_Try, /*On fail goto*//*Label 1785*/ GIMT_Encode4(83377), // Rule ID 4396 // |
| 29318 | /* 83352 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoEGPR), |
| 29319 | /* 83355 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29320 | /* 83362 */ // (st VK8:{ *:[v8i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVBmk addr:{ *:[iPTR] }:$dst, VK8:{ *:[v8i1] }:$src) |
| 29321 | /* 83362 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVBmk), |
| 29322 | /* 83365 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29323 | /* 83369 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29324 | /* 83371 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29325 | /* 83375 */ GIR_RootConstrainSelectedInstOperands, |
| 29326 | /* 83376 */ // GIR_Coverage, 4396, |
| 29327 | /* 83376 */ GIR_EraseRootFromParent_Done, |
| 29328 | /* 83377 */ // Label 1785: @83377 |
| 29329 | /* 83377 */ GIM_Try, /*On fail goto*//*Label 1786*/ GIMT_Encode4(83407), // Rule ID 4398 // |
| 29330 | /* 83382 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasEGPR_In64BitMode), |
| 29331 | /* 83385 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29332 | /* 83392 */ // (st VK8:{ *:[v8i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVBmk_EVEX addr:{ *:[iPTR] }:$dst, VK8:{ *:[v8i1] }:$src) |
| 29333 | /* 83392 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVBmk_EVEX), |
| 29334 | /* 83395 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29335 | /* 83399 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29336 | /* 83401 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29337 | /* 83405 */ GIR_RootConstrainSelectedInstOperands, |
| 29338 | /* 83406 */ // GIR_Coverage, 4398, |
| 29339 | /* 83406 */ GIR_EraseRootFromParent_Done, |
| 29340 | /* 83407 */ // Label 1786: @83407 |
| 29341 | /* 83407 */ GIM_Reject, |
| 29342 | /* 83408 */ // Label 1784: @83408 |
| 29343 | /* 83408 */ GIM_Reject, |
| 29344 | /* 83409 */ // Label 1485: @83409 |
| 29345 | /* 83409 */ GIM_Try, /*On fail goto*//*Label 1787*/ GIMT_Encode4(83982), |
| 29346 | /* 83414 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29347 | /* 83417 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29348 | /* 83421 */ GIM_Try, /*On fail goto*//*Label 1788*/ GIMT_Encode4(83463), // Rule ID 17933 // |
| 29349 | /* 83426 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29350 | /* 83429 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29351 | /* 83433 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29352 | /* 83437 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29353 | /* 83441 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29354 | /* 83448 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29355 | /* 83448 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSmr), |
| 29356 | /* 83451 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29357 | /* 83455 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29358 | /* 83457 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29359 | /* 83461 */ GIR_RootConstrainSelectedInstOperands, |
| 29360 | /* 83462 */ // GIR_Coverage, 17933, |
| 29361 | /* 83462 */ GIR_EraseRootFromParent_Done, |
| 29362 | /* 83463 */ // Label 1788: @83463 |
| 29363 | /* 83463 */ GIM_Try, /*On fail goto*//*Label 1789*/ GIMT_Encode4(83501), // Rule ID 17934 // |
| 29364 | /* 83468 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29365 | /* 83471 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29366 | /* 83475 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29367 | /* 83479 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29368 | /* 83486 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29369 | /* 83486 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSmr), |
| 29370 | /* 83489 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29371 | /* 83493 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29372 | /* 83495 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29373 | /* 83499 */ GIR_RootConstrainSelectedInstOperands, |
| 29374 | /* 83500 */ // GIR_Coverage, 17934, |
| 29375 | /* 83500 */ GIR_EraseRootFromParent_Done, |
| 29376 | /* 83501 */ // Label 1789: @83501 |
| 29377 | /* 83501 */ GIM_Try, /*On fail goto*//*Label 1790*/ GIMT_Encode4(83543), // Rule ID 17949 // |
| 29378 | /* 83506 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29379 | /* 83509 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29380 | /* 83513 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29381 | /* 83517 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29382 | /* 83521 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29383 | /* 83528 */ // (st VR128:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8i16] }:$src) |
| 29384 | /* 83528 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 29385 | /* 83531 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29386 | /* 83535 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29387 | /* 83537 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29388 | /* 83541 */ GIR_RootConstrainSelectedInstOperands, |
| 29389 | /* 83542 */ // GIR_Coverage, 17949, |
| 29390 | /* 83542 */ GIR_EraseRootFromParent_Done, |
| 29391 | /* 83543 */ // Label 1790: @83543 |
| 29392 | /* 83543 */ GIM_Try, /*On fail goto*//*Label 1791*/ GIMT_Encode4(83581), // Rule ID 17953 // |
| 29393 | /* 83548 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29394 | /* 83551 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29395 | /* 83555 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29396 | /* 83559 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29397 | /* 83566 */ // (st VR128:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8i16] }:$src) |
| 29398 | /* 83566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 29399 | /* 83569 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29400 | /* 83573 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29401 | /* 83575 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29402 | /* 83579 */ GIR_RootConstrainSelectedInstOperands, |
| 29403 | /* 83580 */ // GIR_Coverage, 17953, |
| 29404 | /* 83580 */ GIR_EraseRootFromParent_Done, |
| 29405 | /* 83581 */ // Label 1791: @83581 |
| 29406 | /* 83581 */ GIM_Try, /*On fail goto*//*Label 1792*/ GIMT_Encode4(83623), // Rule ID 17957 // |
| 29407 | /* 83586 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 29408 | /* 83589 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29409 | /* 83593 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29410 | /* 83597 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29411 | /* 83601 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29412 | /* 83608 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29413 | /* 83608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 29414 | /* 83611 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29415 | /* 83615 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29416 | /* 83617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29417 | /* 83621 */ GIR_RootConstrainSelectedInstOperands, |
| 29418 | /* 83622 */ // GIR_Coverage, 17957, |
| 29419 | /* 83622 */ GIR_EraseRootFromParent_Done, |
| 29420 | /* 83623 */ // Label 1792: @83623 |
| 29421 | /* 83623 */ GIM_Try, /*On fail goto*//*Label 1793*/ GIMT_Encode4(83661), // Rule ID 17958 // |
| 29422 | /* 83628 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 29423 | /* 83631 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29424 | /* 83635 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29425 | /* 83639 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29426 | /* 83646 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29427 | /* 83646 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 29428 | /* 83649 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29429 | /* 83653 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29430 | /* 83655 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29431 | /* 83659 */ GIR_RootConstrainSelectedInstOperands, |
| 29432 | /* 83660 */ // GIR_Coverage, 17958, |
| 29433 | /* 83660 */ GIR_EraseRootFromParent_Done, |
| 29434 | /* 83661 */ // Label 1793: @83661 |
| 29435 | /* 83661 */ GIM_Try, /*On fail goto*//*Label 1794*/ GIMT_Encode4(83703), // Rule ID 18328 // |
| 29436 | /* 83666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29437 | /* 83669 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29438 | /* 83673 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29439 | /* 83677 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29440 | /* 83681 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29441 | /* 83688 */ // (st VR128:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQAmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8i16] }:$src) |
| 29442 | /* 83688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQAmr), |
| 29443 | /* 83691 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29444 | /* 83695 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29445 | /* 83697 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29446 | /* 83701 */ GIR_RootConstrainSelectedInstOperands, |
| 29447 | /* 83702 */ // GIR_Coverage, 18328, |
| 29448 | /* 83702 */ GIR_EraseRootFromParent_Done, |
| 29449 | /* 83703 */ // Label 1794: @83703 |
| 29450 | /* 83703 */ GIM_Try, /*On fail goto*//*Label 1795*/ GIMT_Encode4(83745), // Rule ID 18329 // |
| 29451 | /* 83708 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29452 | /* 83711 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29453 | /* 83715 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29454 | /* 83719 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29455 | /* 83723 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29456 | /* 83730 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQAmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29457 | /* 83730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQAmr), |
| 29458 | /* 83733 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29459 | /* 83737 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29460 | /* 83739 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29461 | /* 83743 */ GIR_RootConstrainSelectedInstOperands, |
| 29462 | /* 83744 */ // GIR_Coverage, 18329, |
| 29463 | /* 83744 */ GIR_EraseRootFromParent_Done, |
| 29464 | /* 83745 */ // Label 1795: @83745 |
| 29465 | /* 83745 */ GIM_Try, /*On fail goto*//*Label 1796*/ GIMT_Encode4(83783), // Rule ID 18332 // |
| 29466 | /* 83750 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29467 | /* 83753 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29468 | /* 83757 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29469 | /* 83761 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29470 | /* 83768 */ // (st VR128:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQUmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8i16] }:$src) |
| 29471 | /* 83768 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUmr), |
| 29472 | /* 83771 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29473 | /* 83775 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29474 | /* 83777 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29475 | /* 83781 */ GIR_RootConstrainSelectedInstOperands, |
| 29476 | /* 83782 */ // GIR_Coverage, 18332, |
| 29477 | /* 83782 */ GIR_EraseRootFromParent_Done, |
| 29478 | /* 83783 */ // Label 1796: @83783 |
| 29479 | /* 83783 */ GIM_Try, /*On fail goto*//*Label 1797*/ GIMT_Encode4(83821), // Rule ID 18333 // |
| 29480 | /* 83788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29481 | /* 83791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29482 | /* 83795 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29483 | /* 83799 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29484 | /* 83806 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQUmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29485 | /* 83806 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUmr), |
| 29486 | /* 83809 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29487 | /* 83813 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29488 | /* 83815 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29489 | /* 83819 */ GIR_RootConstrainSelectedInstOperands, |
| 29490 | /* 83820 */ // GIR_Coverage, 18333, |
| 29491 | /* 83820 */ GIR_EraseRootFromParent_Done, |
| 29492 | /* 83821 */ // Label 1797: @83821 |
| 29493 | /* 83821 */ GIM_Try, /*On fail goto*//*Label 1798*/ GIMT_Encode4(83863), // Rule ID 19821 // |
| 29494 | /* 83826 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29495 | /* 83829 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29496 | /* 83833 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29497 | /* 83837 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29498 | /* 83841 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29499 | /* 83848 */ // (st VR128X:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v8i16] }:$src) |
| 29500 | /* 83848 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128mr), |
| 29501 | /* 83851 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29502 | /* 83855 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29503 | /* 83857 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29504 | /* 83861 */ GIR_RootConstrainSelectedInstOperands, |
| 29505 | /* 83862 */ // GIR_Coverage, 19821, |
| 29506 | /* 83862 */ GIR_EraseRootFromParent_Done, |
| 29507 | /* 83863 */ // Label 1798: @83863 |
| 29508 | /* 83863 */ GIM_Try, /*On fail goto*//*Label 1799*/ GIMT_Encode4(83905), // Rule ID 19822 // |
| 29509 | /* 83868 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29510 | /* 83871 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29511 | /* 83875 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29512 | /* 83879 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29513 | /* 83883 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29514 | /* 83890 */ // (st VR128X:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v8f16] }:$src) |
| 29515 | /* 83890 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128mr), |
| 29516 | /* 83893 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29517 | /* 83897 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29518 | /* 83899 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29519 | /* 83903 */ GIR_RootConstrainSelectedInstOperands, |
| 29520 | /* 83904 */ // GIR_Coverage, 19822, |
| 29521 | /* 83904 */ GIR_EraseRootFromParent_Done, |
| 29522 | /* 83905 */ // Label 1799: @83905 |
| 29523 | /* 83905 */ GIM_Try, /*On fail goto*//*Label 1800*/ GIMT_Encode4(83943), // Rule ID 19825 // |
| 29524 | /* 83910 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29525 | /* 83913 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29526 | /* 83917 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29527 | /* 83921 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29528 | /* 83928 */ // (st VR128X:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v8i16] }:$src) |
| 29529 | /* 83928 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128mr), |
| 29530 | /* 83931 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29531 | /* 83935 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29532 | /* 83937 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29533 | /* 83941 */ GIR_RootConstrainSelectedInstOperands, |
| 29534 | /* 83942 */ // GIR_Coverage, 19825, |
| 29535 | /* 83942 */ GIR_EraseRootFromParent_Done, |
| 29536 | /* 83943 */ // Label 1800: @83943 |
| 29537 | /* 83943 */ GIM_Try, /*On fail goto*//*Label 1801*/ GIMT_Encode4(83981), // Rule ID 19826 // |
| 29538 | /* 83948 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29539 | /* 83951 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29540 | /* 83955 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29541 | /* 83959 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29542 | /* 83966 */ // (st VR128X:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v8f16] }:$src) |
| 29543 | /* 83966 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128mr), |
| 29544 | /* 83969 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29545 | /* 83973 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29546 | /* 83975 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29547 | /* 83979 */ GIR_RootConstrainSelectedInstOperands, |
| 29548 | /* 83980 */ // GIR_Coverage, 19826, |
| 29549 | /* 83980 */ GIR_EraseRootFromParent_Done, |
| 29550 | /* 83981 */ // Label 1801: @83981 |
| 29551 | /* 83981 */ GIM_Reject, |
| 29552 | /* 83982 */ // Label 1787: @83982 |
| 29553 | /* 83982 */ GIM_Reject, |
| 29554 | /* 83983 */ // Label 1486: @83983 |
| 29555 | /* 83983 */ GIM_Try, /*On fail goto*//*Label 1802*/ GIMT_Encode4(84316), |
| 29556 | /* 83988 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29557 | /* 83991 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29558 | /* 83995 */ GIM_Try, /*On fail goto*//*Label 1803*/ GIMT_Encode4(84037), // Rule ID 1719 // |
| 29559 | /* 84000 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29560 | /* 84003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29561 | /* 84007 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29562 | /* 84011 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29563 | /* 84015 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29564 | /* 84022 */ // (st VR256:{ *:[v8f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8f32] }:$src) |
| 29565 | /* 84022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 29566 | /* 84025 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29567 | /* 84029 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29568 | /* 84031 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29569 | /* 84035 */ GIR_RootConstrainSelectedInstOperands, |
| 29570 | /* 84036 */ // GIR_Coverage, 1719, |
| 29571 | /* 84036 */ GIR_EraseRootFromParent_Done, |
| 29572 | /* 84037 */ // Label 1803: @84037 |
| 29573 | /* 84037 */ GIM_Try, /*On fail goto*//*Label 1804*/ GIMT_Encode4(84075), // Rule ID 1721 // |
| 29574 | /* 84042 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29575 | /* 84045 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29576 | /* 84049 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29577 | /* 84053 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29578 | /* 84060 */ // (st VR256:{ *:[v8f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8f32] }:$src) |
| 29579 | /* 84060 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 29580 | /* 84063 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29581 | /* 84067 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29582 | /* 84069 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29583 | /* 84073 */ GIR_RootConstrainSelectedInstOperands, |
| 29584 | /* 84074 */ // GIR_Coverage, 1721, |
| 29585 | /* 84074 */ GIR_EraseRootFromParent_Done, |
| 29586 | /* 84075 */ // Label 1804: @84075 |
| 29587 | /* 84075 */ GIM_Try, /*On fail goto*//*Label 1805*/ GIMT_Encode4(84117), // Rule ID 4477 // |
| 29588 | /* 84080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 29589 | /* 84083 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29590 | /* 84087 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29591 | /* 84091 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29592 | /* 84095 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29593 | /* 84102 */ // (st VR256X:{ *:[v8f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v8f32] }:$src) |
| 29594 | /* 84102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256mr), |
| 29595 | /* 84105 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29596 | /* 84109 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29597 | /* 84111 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29598 | /* 84115 */ GIR_RootConstrainSelectedInstOperands, |
| 29599 | /* 84116 */ // GIR_Coverage, 4477, |
| 29600 | /* 84116 */ GIR_EraseRootFromParent_Done, |
| 29601 | /* 84117 */ // Label 1805: @84117 |
| 29602 | /* 84117 */ GIM_Try, /*On fail goto*//*Label 1806*/ GIMT_Encode4(84155), // Rule ID 4507 // |
| 29603 | /* 84122 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 29604 | /* 84125 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29605 | /* 84129 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29606 | /* 84133 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29607 | /* 84140 */ // (st VR256X:{ *:[v8f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v8f32] }:$src) |
| 29608 | /* 84140 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ256mr), |
| 29609 | /* 84143 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29610 | /* 84147 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29611 | /* 84149 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29612 | /* 84153 */ GIR_RootConstrainSelectedInstOperands, |
| 29613 | /* 84154 */ // GIR_Coverage, 4507, |
| 29614 | /* 84154 */ GIR_EraseRootFromParent_Done, |
| 29615 | /* 84155 */ // Label 1806: @84155 |
| 29616 | /* 84155 */ GIM_Try, /*On fail goto*//*Label 1807*/ GIMT_Encode4(84197), // Rule ID 17924 // |
| 29617 | /* 84160 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29618 | /* 84163 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29619 | /* 84167 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29620 | /* 84171 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29621 | /* 84175 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29622 | /* 84182 */ // (st VR256:{ *:[v8i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src) |
| 29623 | /* 84182 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 29624 | /* 84185 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29625 | /* 84189 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29626 | /* 84191 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29627 | /* 84195 */ GIR_RootConstrainSelectedInstOperands, |
| 29628 | /* 84196 */ // GIR_Coverage, 17924, |
| 29629 | /* 84196 */ GIR_EraseRootFromParent_Done, |
| 29630 | /* 84197 */ // Label 1807: @84197 |
| 29631 | /* 84197 */ GIM_Try, /*On fail goto*//*Label 1808*/ GIMT_Encode4(84235), // Rule ID 17928 // |
| 29632 | /* 84202 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29633 | /* 84205 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29634 | /* 84209 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29635 | /* 84213 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29636 | /* 84220 */ // (st VR256:{ *:[v8i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src) |
| 29637 | /* 84220 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 29638 | /* 84223 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29639 | /* 84227 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29640 | /* 84229 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29641 | /* 84233 */ GIR_RootConstrainSelectedInstOperands, |
| 29642 | /* 84234 */ // GIR_Coverage, 17928, |
| 29643 | /* 84234 */ GIR_EraseRootFromParent_Done, |
| 29644 | /* 84235 */ // Label 1808: @84235 |
| 29645 | /* 84235 */ GIM_Try, /*On fail goto*//*Label 1809*/ GIMT_Encode4(84277), // Rule ID 19836 // |
| 29646 | /* 84240 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29647 | /* 84243 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29648 | /* 84247 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29649 | /* 84251 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29650 | /* 84255 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29651 | /* 84262 */ // (st VR256X:{ *:[v8i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v8i32] }:$src) |
| 29652 | /* 84262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256mr), |
| 29653 | /* 84265 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29654 | /* 84269 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29655 | /* 84271 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29656 | /* 84275 */ GIR_RootConstrainSelectedInstOperands, |
| 29657 | /* 84276 */ // GIR_Coverage, 19836, |
| 29658 | /* 84276 */ GIR_EraseRootFromParent_Done, |
| 29659 | /* 84277 */ // Label 1809: @84277 |
| 29660 | /* 84277 */ GIM_Try, /*On fail goto*//*Label 1810*/ GIMT_Encode4(84315), // Rule ID 19840 // |
| 29661 | /* 84282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29662 | /* 84285 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29663 | /* 84289 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29664 | /* 84293 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29665 | /* 84300 */ // (st VR256X:{ *:[v8i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v8i32] }:$src) |
| 29666 | /* 84300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256mr), |
| 29667 | /* 84303 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29668 | /* 84307 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29669 | /* 84309 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29670 | /* 84313 */ GIR_RootConstrainSelectedInstOperands, |
| 29671 | /* 84314 */ // GIR_Coverage, 19840, |
| 29672 | /* 84314 */ GIR_EraseRootFromParent_Done, |
| 29673 | /* 84315 */ // Label 1810: @84315 |
| 29674 | /* 84315 */ GIM_Reject, |
| 29675 | /* 84316 */ // Label 1802: @84316 |
| 29676 | /* 84316 */ GIM_Reject, |
| 29677 | /* 84317 */ // Label 1487: @84317 |
| 29678 | /* 84317 */ GIM_Try, /*On fail goto*//*Label 1811*/ GIMT_Encode4(84490), |
| 29679 | /* 84322 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29680 | /* 84325 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29681 | /* 84329 */ GIM_Try, /*On fail goto*//*Label 1812*/ GIMT_Encode4(84371), // Rule ID 4494 // |
| 29682 | /* 84334 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29683 | /* 84337 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29684 | /* 84341 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29685 | /* 84345 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29686 | /* 84349 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29687 | /* 84356 */ // (st VR512:{ *:[v8f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPDZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v8f64] }:$src) |
| 29688 | /* 84356 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZmr), |
| 29689 | /* 84359 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29690 | /* 84363 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29691 | /* 84365 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29692 | /* 84369 */ GIR_RootConstrainSelectedInstOperands, |
| 29693 | /* 84370 */ // GIR_Coverage, 4494, |
| 29694 | /* 84370 */ GIR_EraseRootFromParent_Done, |
| 29695 | /* 84371 */ // Label 1812: @84371 |
| 29696 | /* 84371 */ GIM_Try, /*On fail goto*//*Label 1813*/ GIMT_Encode4(84409), // Rule ID 4518 // |
| 29697 | /* 84376 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29698 | /* 84379 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29699 | /* 84383 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29700 | /* 84387 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29701 | /* 84394 */ // (st VR512:{ *:[v8f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPDZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v8f64] }:$src) |
| 29702 | /* 84394 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZmr), |
| 29703 | /* 84397 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29704 | /* 84401 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29705 | /* 84403 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29706 | /* 84407 */ GIR_RootConstrainSelectedInstOperands, |
| 29707 | /* 84408 */ // GIR_Coverage, 4518, |
| 29708 | /* 84408 */ GIR_EraseRootFromParent_Done, |
| 29709 | /* 84409 */ // Label 1813: @84409 |
| 29710 | /* 84409 */ GIM_Try, /*On fail goto*//*Label 1814*/ GIMT_Encode4(84451), // Rule ID 4548 // |
| 29711 | /* 84414 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29712 | /* 84417 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29713 | /* 84421 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29714 | /* 84425 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29715 | /* 84429 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29716 | /* 84436 */ // (st VR512:{ *:[v8i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v8i64] }:$src) |
| 29717 | /* 84436 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zmr), |
| 29718 | /* 84439 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29719 | /* 84443 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29720 | /* 84445 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29721 | /* 84449 */ GIR_RootConstrainSelectedInstOperands, |
| 29722 | /* 84450 */ // GIR_Coverage, 4548, |
| 29723 | /* 84450 */ GIR_EraseRootFromParent_Done, |
| 29724 | /* 84451 */ // Label 1814: @84451 |
| 29725 | /* 84451 */ GIM_Try, /*On fail goto*//*Label 1815*/ GIMT_Encode4(84489), // Rule ID 4590 // |
| 29726 | /* 84456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29727 | /* 84459 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29728 | /* 84463 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29729 | /* 84467 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29730 | /* 84474 */ // (st VR512:{ *:[v8i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v8i64] }:$src) |
| 29731 | /* 84474 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zmr), |
| 29732 | /* 84477 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29733 | /* 84481 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29734 | /* 84483 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29735 | /* 84487 */ GIR_RootConstrainSelectedInstOperands, |
| 29736 | /* 84488 */ // GIR_Coverage, 4590, |
| 29737 | /* 84488 */ GIR_EraseRootFromParent_Done, |
| 29738 | /* 84489 */ // Label 1815: @84489 |
| 29739 | /* 84489 */ GIM_Reject, |
| 29740 | /* 84490 */ // Label 1811: @84490 |
| 29741 | /* 84490 */ GIM_Reject, |
| 29742 | /* 84491 */ // Label 1488: @84491 |
| 29743 | /* 84491 */ GIM_Try, /*On fail goto*//*Label 1816*/ GIMT_Encode4(84572), |
| 29744 | /* 84496 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29745 | /* 84499 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29746 | /* 84503 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 29747 | /* 84507 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29748 | /* 84511 */ GIM_Try, /*On fail goto*//*Label 1817*/ GIMT_Encode4(84541), // Rule ID 4400 // |
| 29749 | /* 84516 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoEGPR), |
| 29750 | /* 84519 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29751 | /* 84526 */ // (st VK16:{ *:[v16i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVWmk addr:{ *:[iPTR] }:$dst, VK16:{ *:[v16i1] }:$src) |
| 29752 | /* 84526 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWmk), |
| 29753 | /* 84529 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29754 | /* 84533 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29755 | /* 84535 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29756 | /* 84539 */ GIR_RootConstrainSelectedInstOperands, |
| 29757 | /* 84540 */ // GIR_Coverage, 4400, |
| 29758 | /* 84540 */ GIR_EraseRootFromParent_Done, |
| 29759 | /* 84541 */ // Label 1817: @84541 |
| 29760 | /* 84541 */ GIM_Try, /*On fail goto*//*Label 1818*/ GIMT_Encode4(84571), // Rule ID 4402 // |
| 29761 | /* 84546 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEGPR_In64BitMode), |
| 29762 | /* 84549 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29763 | /* 84556 */ // (st VK16:{ *:[v16i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVWmk_EVEX addr:{ *:[iPTR] }:$dst, VK16:{ *:[v16i1] }:$src) |
| 29764 | /* 84556 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWmk_EVEX), |
| 29765 | /* 84559 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29766 | /* 84563 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29767 | /* 84565 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29768 | /* 84569 */ GIR_RootConstrainSelectedInstOperands, |
| 29769 | /* 84570 */ // GIR_Coverage, 4402, |
| 29770 | /* 84570 */ GIR_EraseRootFromParent_Done, |
| 29771 | /* 84571 */ // Label 1818: @84571 |
| 29772 | /* 84571 */ GIM_Reject, |
| 29773 | /* 84572 */ // Label 1816: @84572 |
| 29774 | /* 84572 */ GIM_Reject, |
| 29775 | /* 84573 */ // Label 1489: @84573 |
| 29776 | /* 84573 */ GIM_Try, /*On fail goto*//*Label 1819*/ GIMT_Encode4(84826), |
| 29777 | /* 84578 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29778 | /* 84581 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29779 | /* 84585 */ GIM_Try, /*On fail goto*//*Label 1820*/ GIMT_Encode4(84627), // Rule ID 17950 // |
| 29780 | /* 84590 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29781 | /* 84593 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29782 | /* 84597 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29783 | /* 84601 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29784 | /* 84605 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29785 | /* 84612 */ // (st VR128:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v16i8] }:$src) |
| 29786 | /* 84612 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 29787 | /* 84615 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29788 | /* 84619 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29789 | /* 84621 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29790 | /* 84625 */ GIR_RootConstrainSelectedInstOperands, |
| 29791 | /* 84626 */ // GIR_Coverage, 17950, |
| 29792 | /* 84626 */ GIR_EraseRootFromParent_Done, |
| 29793 | /* 84627 */ // Label 1820: @84627 |
| 29794 | /* 84627 */ GIM_Try, /*On fail goto*//*Label 1821*/ GIMT_Encode4(84665), // Rule ID 17954 // |
| 29795 | /* 84632 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29796 | /* 84635 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29797 | /* 84639 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29798 | /* 84643 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29799 | /* 84650 */ // (st VR128:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v16i8] }:$src) |
| 29800 | /* 84650 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 29801 | /* 84653 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29802 | /* 84657 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29803 | /* 84659 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29804 | /* 84663 */ GIR_RootConstrainSelectedInstOperands, |
| 29805 | /* 84664 */ // GIR_Coverage, 17954, |
| 29806 | /* 84664 */ GIR_EraseRootFromParent_Done, |
| 29807 | /* 84665 */ // Label 1821: @84665 |
| 29808 | /* 84665 */ GIM_Try, /*On fail goto*//*Label 1822*/ GIMT_Encode4(84707), // Rule ID 18330 // |
| 29809 | /* 84670 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29810 | /* 84673 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29811 | /* 84677 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29812 | /* 84681 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29813 | /* 84685 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29814 | /* 84692 */ // (st VR128:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQAmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v16i8] }:$src) |
| 29815 | /* 84692 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQAmr), |
| 29816 | /* 84695 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29817 | /* 84699 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29818 | /* 84701 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29819 | /* 84705 */ GIR_RootConstrainSelectedInstOperands, |
| 29820 | /* 84706 */ // GIR_Coverage, 18330, |
| 29821 | /* 84706 */ GIR_EraseRootFromParent_Done, |
| 29822 | /* 84707 */ // Label 1822: @84707 |
| 29823 | /* 84707 */ GIM_Try, /*On fail goto*//*Label 1823*/ GIMT_Encode4(84745), // Rule ID 18334 // |
| 29824 | /* 84712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29825 | /* 84715 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29826 | /* 84719 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29827 | /* 84723 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29828 | /* 84730 */ // (st VR128:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQUmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v16i8] }:$src) |
| 29829 | /* 84730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUmr), |
| 29830 | /* 84733 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29831 | /* 84737 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29832 | /* 84739 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29833 | /* 84743 */ GIR_RootConstrainSelectedInstOperands, |
| 29834 | /* 84744 */ // GIR_Coverage, 18334, |
| 29835 | /* 84744 */ GIR_EraseRootFromParent_Done, |
| 29836 | /* 84745 */ // Label 1823: @84745 |
| 29837 | /* 84745 */ GIM_Try, /*On fail goto*//*Label 1824*/ GIMT_Encode4(84787), // Rule ID 19823 // |
| 29838 | /* 84750 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29839 | /* 84753 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29840 | /* 84757 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29841 | /* 84761 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29842 | /* 84765 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29843 | /* 84772 */ // (st VR128X:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v16i8] }:$src) |
| 29844 | /* 84772 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128mr), |
| 29845 | /* 84775 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29846 | /* 84779 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29847 | /* 84781 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29848 | /* 84785 */ GIR_RootConstrainSelectedInstOperands, |
| 29849 | /* 84786 */ // GIR_Coverage, 19823, |
| 29850 | /* 84786 */ GIR_EraseRootFromParent_Done, |
| 29851 | /* 84787 */ // Label 1824: @84787 |
| 29852 | /* 84787 */ GIM_Try, /*On fail goto*//*Label 1825*/ GIMT_Encode4(84825), // Rule ID 19827 // |
| 29853 | /* 84792 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29854 | /* 84795 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29855 | /* 84799 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29856 | /* 84803 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29857 | /* 84810 */ // (st VR128X:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v16i8] }:$src) |
| 29858 | /* 84810 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128mr), |
| 29859 | /* 84813 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29860 | /* 84817 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29861 | /* 84819 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29862 | /* 84823 */ GIR_RootConstrainSelectedInstOperands, |
| 29863 | /* 84824 */ // GIR_Coverage, 19827, |
| 29864 | /* 84824 */ GIR_EraseRootFromParent_Done, |
| 29865 | /* 84825 */ // Label 1825: @84825 |
| 29866 | /* 84825 */ GIM_Reject, |
| 29867 | /* 84826 */ // Label 1819: @84826 |
| 29868 | /* 84826 */ GIM_Reject, |
| 29869 | /* 84827 */ // Label 1490: @84827 |
| 29870 | /* 84827 */ GIM_Try, /*On fail goto*//*Label 1826*/ GIMT_Encode4(85160), |
| 29871 | /* 84832 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29872 | /* 84835 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29873 | /* 84839 */ GIM_Try, /*On fail goto*//*Label 1827*/ GIMT_Encode4(84881), // Rule ID 17925 // |
| 29874 | /* 84844 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29875 | /* 84847 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29876 | /* 84851 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29877 | /* 84855 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29878 | /* 84859 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29879 | /* 84866 */ // (st VR256:{ *:[v16i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v16i16] }:$src) |
| 29880 | /* 84866 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 29881 | /* 84869 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29882 | /* 84873 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29883 | /* 84875 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29884 | /* 84879 */ GIR_RootConstrainSelectedInstOperands, |
| 29885 | /* 84880 */ // GIR_Coverage, 17925, |
| 29886 | /* 84880 */ GIR_EraseRootFromParent_Done, |
| 29887 | /* 84881 */ // Label 1827: @84881 |
| 29888 | /* 84881 */ GIM_Try, /*On fail goto*//*Label 1828*/ GIMT_Encode4(84919), // Rule ID 17929 // |
| 29889 | /* 84886 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29890 | /* 84889 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29891 | /* 84893 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29892 | /* 84897 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29893 | /* 84904 */ // (st VR256:{ *:[v16i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v16i16] }:$src) |
| 29894 | /* 84904 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 29895 | /* 84907 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29896 | /* 84911 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29897 | /* 84913 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29898 | /* 84917 */ GIR_RootConstrainSelectedInstOperands, |
| 29899 | /* 84918 */ // GIR_Coverage, 17929, |
| 29900 | /* 84918 */ GIR_EraseRootFromParent_Done, |
| 29901 | /* 84919 */ // Label 1828: @84919 |
| 29902 | /* 84919 */ GIM_Try, /*On fail goto*//*Label 1829*/ GIMT_Encode4(84961), // Rule ID 17937 // |
| 29903 | /* 84924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29904 | /* 84927 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29905 | /* 84931 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29906 | /* 84935 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29907 | /* 84939 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29908 | /* 84946 */ // (st VR256:{ *:[v16f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v16f16] }:$src) |
| 29909 | /* 84946 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 29910 | /* 84949 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29911 | /* 84953 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29912 | /* 84955 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29913 | /* 84959 */ GIR_RootConstrainSelectedInstOperands, |
| 29914 | /* 84960 */ // GIR_Coverage, 17937, |
| 29915 | /* 84960 */ GIR_EraseRootFromParent_Done, |
| 29916 | /* 84961 */ // Label 1829: @84961 |
| 29917 | /* 84961 */ GIM_Try, /*On fail goto*//*Label 1830*/ GIMT_Encode4(84999), // Rule ID 17938 // |
| 29918 | /* 84966 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29919 | /* 84969 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29920 | /* 84973 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29921 | /* 84977 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29922 | /* 84984 */ // (st VR256:{ *:[v16f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v16f16] }:$src) |
| 29923 | /* 84984 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 29924 | /* 84987 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29925 | /* 84991 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29926 | /* 84993 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29927 | /* 84997 */ GIR_RootConstrainSelectedInstOperands, |
| 29928 | /* 84998 */ // GIR_Coverage, 17938, |
| 29929 | /* 84998 */ GIR_EraseRootFromParent_Done, |
| 29930 | /* 84999 */ // Label 1830: @84999 |
| 29931 | /* 84999 */ GIM_Try, /*On fail goto*//*Label 1831*/ GIMT_Encode4(85041), // Rule ID 19837 // |
| 29932 | /* 85004 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29933 | /* 85007 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29934 | /* 85011 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29935 | /* 85015 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29936 | /* 85019 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29937 | /* 85026 */ // (st VR256X:{ *:[v16i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v16i16] }:$src) |
| 29938 | /* 85026 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256mr), |
| 29939 | /* 85029 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29940 | /* 85033 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29941 | /* 85035 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29942 | /* 85039 */ GIR_RootConstrainSelectedInstOperands, |
| 29943 | /* 85040 */ // GIR_Coverage, 19837, |
| 29944 | /* 85040 */ GIR_EraseRootFromParent_Done, |
| 29945 | /* 85041 */ // Label 1831: @85041 |
| 29946 | /* 85041 */ GIM_Try, /*On fail goto*//*Label 1832*/ GIMT_Encode4(85083), // Rule ID 19838 // |
| 29947 | /* 85046 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29948 | /* 85049 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29949 | /* 85053 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29950 | /* 85057 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29951 | /* 85061 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29952 | /* 85068 */ // (st VR256X:{ *:[v16f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v16f16] }:$src) |
| 29953 | /* 85068 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256mr), |
| 29954 | /* 85071 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29955 | /* 85075 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29956 | /* 85077 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29957 | /* 85081 */ GIR_RootConstrainSelectedInstOperands, |
| 29958 | /* 85082 */ // GIR_Coverage, 19838, |
| 29959 | /* 85082 */ GIR_EraseRootFromParent_Done, |
| 29960 | /* 85083 */ // Label 1832: @85083 |
| 29961 | /* 85083 */ GIM_Try, /*On fail goto*//*Label 1833*/ GIMT_Encode4(85121), // Rule ID 19841 // |
| 29962 | /* 85088 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29963 | /* 85091 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29964 | /* 85095 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29965 | /* 85099 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29966 | /* 85106 */ // (st VR256X:{ *:[v16i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v16i16] }:$src) |
| 29967 | /* 85106 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256mr), |
| 29968 | /* 85109 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29969 | /* 85113 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29970 | /* 85115 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29971 | /* 85119 */ GIR_RootConstrainSelectedInstOperands, |
| 29972 | /* 85120 */ // GIR_Coverage, 19841, |
| 29973 | /* 85120 */ GIR_EraseRootFromParent_Done, |
| 29974 | /* 85121 */ // Label 1833: @85121 |
| 29975 | /* 85121 */ GIM_Try, /*On fail goto*//*Label 1834*/ GIMT_Encode4(85159), // Rule ID 19842 // |
| 29976 | /* 85126 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29977 | /* 85129 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29978 | /* 85133 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29979 | /* 85137 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29980 | /* 85144 */ // (st VR256X:{ *:[v16f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v16f16] }:$src) |
| 29981 | /* 85144 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ256mr), |
| 29982 | /* 85147 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29983 | /* 85151 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29984 | /* 85153 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29985 | /* 85157 */ GIR_RootConstrainSelectedInstOperands, |
| 29986 | /* 85158 */ // GIR_Coverage, 19842, |
| 29987 | /* 85158 */ GIR_EraseRootFromParent_Done, |
| 29988 | /* 85159 */ // Label 1834: @85159 |
| 29989 | /* 85159 */ GIM_Reject, |
| 29990 | /* 85160 */ // Label 1826: @85160 |
| 29991 | /* 85160 */ GIM_Reject, |
| 29992 | /* 85161 */ // Label 1491: @85161 |
| 29993 | /* 85161 */ GIM_Try, /*On fail goto*//*Label 1835*/ GIMT_Encode4(85334), |
| 29994 | /* 85166 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29995 | /* 85169 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29996 | /* 85173 */ GIM_Try, /*On fail goto*//*Label 1836*/ GIMT_Encode4(85215), // Rule ID 4476 // |
| 29997 | /* 85178 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29998 | /* 85181 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29999 | /* 85185 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30000 | /* 85189 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 30001 | /* 85193 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30002 | /* 85200 */ // (st VR512:{ *:[v16f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v16f32] }:$src) |
| 30003 | /* 85200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZmr), |
| 30004 | /* 85203 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30005 | /* 85207 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30006 | /* 85209 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30007 | /* 85213 */ GIR_RootConstrainSelectedInstOperands, |
| 30008 | /* 85214 */ // GIR_Coverage, 4476, |
| 30009 | /* 85214 */ GIR_EraseRootFromParent_Done, |
| 30010 | /* 85215 */ // Label 1836: @85215 |
| 30011 | /* 85215 */ GIM_Try, /*On fail goto*//*Label 1837*/ GIMT_Encode4(85253), // Rule ID 4506 // |
| 30012 | /* 85220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 30013 | /* 85223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 30014 | /* 85227 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30015 | /* 85231 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30016 | /* 85238 */ // (st VR512:{ *:[v16f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v16f32] }:$src) |
| 30017 | /* 85238 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZmr), |
| 30018 | /* 85241 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30019 | /* 85245 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30020 | /* 85247 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30021 | /* 85251 */ GIR_RootConstrainSelectedInstOperands, |
| 30022 | /* 85252 */ // GIR_Coverage, 4506, |
| 30023 | /* 85252 */ GIR_EraseRootFromParent_Done, |
| 30024 | /* 85253 */ // Label 1837: @85253 |
| 30025 | /* 85253 */ GIM_Try, /*On fail goto*//*Label 1838*/ GIMT_Encode4(85295), // Rule ID 19804 // |
| 30026 | /* 85258 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 30027 | /* 85261 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 30028 | /* 85265 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30029 | /* 85269 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 30030 | /* 85273 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30031 | /* 85280 */ // (st VR512:{ *:[v16i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v16i32] }:$src) |
| 30032 | /* 85280 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zmr), |
| 30033 | /* 85283 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30034 | /* 85287 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30035 | /* 85289 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30036 | /* 85293 */ GIR_RootConstrainSelectedInstOperands, |
| 30037 | /* 85294 */ // GIR_Coverage, 19804, |
| 30038 | /* 85294 */ GIR_EraseRootFromParent_Done, |
| 30039 | /* 85295 */ // Label 1838: @85295 |
| 30040 | /* 85295 */ GIM_Try, /*On fail goto*//*Label 1839*/ GIMT_Encode4(85333), // Rule ID 19808 // |
| 30041 | /* 85300 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 30042 | /* 85303 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 30043 | /* 85307 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30044 | /* 85311 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30045 | /* 85318 */ // (st VR512:{ *:[v16i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v16i32] }:$src) |
| 30046 | /* 85318 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zmr), |
| 30047 | /* 85321 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30048 | /* 85325 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30049 | /* 85327 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30050 | /* 85331 */ GIR_RootConstrainSelectedInstOperands, |
| 30051 | /* 85332 */ // GIR_Coverage, 19808, |
| 30052 | /* 85332 */ GIR_EraseRootFromParent_Done, |
| 30053 | /* 85333 */ // Label 1839: @85333 |
| 30054 | /* 85333 */ GIM_Reject, |
| 30055 | /* 85334 */ // Label 1835: @85334 |
| 30056 | /* 85334 */ GIM_Reject, |
| 30057 | /* 85335 */ // Label 1492: @85335 |
| 30058 | /* 85335 */ GIM_Try, /*On fail goto*//*Label 1840*/ GIMT_Encode4(85416), |
| 30059 | /* 85340 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30060 | /* 85343 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 30061 | /* 85347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 30062 | /* 85351 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30063 | /* 85355 */ GIM_Try, /*On fail goto*//*Label 1841*/ GIMT_Encode4(85385), // Rule ID 4404 // |
| 30064 | /* 85360 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoEGPR), |
| 30065 | /* 85363 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30066 | /* 85370 */ // (st VK32:{ *:[v32i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVDmk addr:{ *:[iPTR] }:$dst, VK32:{ *:[v32i1] }:$src) |
| 30067 | /* 85370 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVDmk), |
| 30068 | /* 85373 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30069 | /* 85377 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30070 | /* 85379 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30071 | /* 85383 */ GIR_RootConstrainSelectedInstOperands, |
| 30072 | /* 85384 */ // GIR_Coverage, 4404, |
| 30073 | /* 85384 */ GIR_EraseRootFromParent_Done, |
| 30074 | /* 85385 */ // Label 1841: @85385 |
| 30075 | /* 85385 */ GIM_Try, /*On fail goto*//*Label 1842*/ GIMT_Encode4(85415), // Rule ID 4408 // |
| 30076 | /* 85390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEGPR_In64BitMode), |
| 30077 | /* 85393 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30078 | /* 85400 */ // (st VK32:{ *:[v32i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVDmk_EVEX addr:{ *:[iPTR] }:$dst, VK32:{ *:[v32i1] }:$src) |
| 30079 | /* 85400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVDmk_EVEX), |
| 30080 | /* 85403 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30081 | /* 85407 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30082 | /* 85409 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30083 | /* 85413 */ GIR_RootConstrainSelectedInstOperands, |
| 30084 | /* 85414 */ // GIR_Coverage, 4408, |
| 30085 | /* 85414 */ GIR_EraseRootFromParent_Done, |
| 30086 | /* 85415 */ // Label 1842: @85415 |
| 30087 | /* 85415 */ GIM_Reject, |
| 30088 | /* 85416 */ // Label 1840: @85416 |
| 30089 | /* 85416 */ GIM_Reject, |
| 30090 | /* 85417 */ // Label 1493: @85417 |
| 30091 | /* 85417 */ GIM_Try, /*On fail goto*//*Label 1843*/ GIMT_Encode4(85590), |
| 30092 | /* 85422 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30093 | /* 85425 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 30094 | /* 85429 */ GIM_Try, /*On fail goto*//*Label 1844*/ GIMT_Encode4(85471), // Rule ID 17926 // |
| 30095 | /* 85434 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 30096 | /* 85437 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 30097 | /* 85441 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30098 | /* 85445 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 30099 | /* 85449 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30100 | /* 85456 */ // (st VR256:{ *:[v32i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v32i8] }:$src) |
| 30101 | /* 85456 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 30102 | /* 85459 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30103 | /* 85463 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30104 | /* 85465 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30105 | /* 85469 */ GIR_RootConstrainSelectedInstOperands, |
| 30106 | /* 85470 */ // GIR_Coverage, 17926, |
| 30107 | /* 85470 */ GIR_EraseRootFromParent_Done, |
| 30108 | /* 85471 */ // Label 1844: @85471 |
| 30109 | /* 85471 */ GIM_Try, /*On fail goto*//*Label 1845*/ GIMT_Encode4(85509), // Rule ID 17930 // |
| 30110 | /* 85476 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 30111 | /* 85479 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 30112 | /* 85483 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30113 | /* 85487 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30114 | /* 85494 */ // (st VR256:{ *:[v32i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v32i8] }:$src) |
| 30115 | /* 85494 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 30116 | /* 85497 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30117 | /* 85501 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30118 | /* 85503 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30119 | /* 85507 */ GIR_RootConstrainSelectedInstOperands, |
| 30120 | /* 85508 */ // GIR_Coverage, 17930, |
| 30121 | /* 85508 */ GIR_EraseRootFromParent_Done, |
| 30122 | /* 85509 */ // Label 1845: @85509 |
| 30123 | /* 85509 */ GIM_Try, /*On fail goto*//*Label 1846*/ GIMT_Encode4(85551), // Rule ID 19839 // |
| 30124 | /* 85514 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 30125 | /* 85517 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 30126 | /* 85521 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30127 | /* 85525 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 30128 | /* 85529 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30129 | /* 85536 */ // (st VR256X:{ *:[v32i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v32i8] }:$src) |
| 30130 | /* 85536 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256mr), |
| 30131 | /* 85539 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30132 | /* 85543 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30133 | /* 85545 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30134 | /* 85549 */ GIR_RootConstrainSelectedInstOperands, |
| 30135 | /* 85550 */ // GIR_Coverage, 19839, |
| 30136 | /* 85550 */ GIR_EraseRootFromParent_Done, |
| 30137 | /* 85551 */ // Label 1846: @85551 |
| 30138 | /* 85551 */ GIM_Try, /*On fail goto*//*Label 1847*/ GIMT_Encode4(85589), // Rule ID 19843 // |
| 30139 | /* 85556 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 30140 | /* 85559 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 30141 | /* 85563 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30142 | /* 85567 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30143 | /* 85574 */ // (st VR256X:{ *:[v32i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v32i8] }:$src) |
| 30144 | /* 85574 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256mr), |
| 30145 | /* 85577 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30146 | /* 85581 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30147 | /* 85583 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30148 | /* 85587 */ GIR_RootConstrainSelectedInstOperands, |
| 30149 | /* 85588 */ // GIR_Coverage, 19843, |
| 30150 | /* 85588 */ GIR_EraseRootFromParent_Done, |
| 30151 | /* 85589 */ // Label 1847: @85589 |
| 30152 | /* 85589 */ GIM_Reject, |
| 30153 | /* 85590 */ // Label 1843: @85590 |
| 30154 | /* 85590 */ GIM_Reject, |
| 30155 | /* 85591 */ // Label 1494: @85591 |
| 30156 | /* 85591 */ GIM_Try, /*On fail goto*//*Label 1848*/ GIMT_Encode4(85764), |
| 30157 | /* 85596 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30158 | /* 85599 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 30159 | /* 85603 */ GIM_Try, /*On fail goto*//*Label 1849*/ GIMT_Encode4(85645), // Rule ID 19805 // |
| 30160 | /* 85608 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 30161 | /* 85611 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 30162 | /* 85615 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30163 | /* 85619 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 30164 | /* 85623 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30165 | /* 85630 */ // (st VR512:{ *:[v32i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v32i16] }:$src) |
| 30166 | /* 85630 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zmr), |
| 30167 | /* 85633 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30168 | /* 85637 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30169 | /* 85639 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30170 | /* 85643 */ GIR_RootConstrainSelectedInstOperands, |
| 30171 | /* 85644 */ // GIR_Coverage, 19805, |
| 30172 | /* 85644 */ GIR_EraseRootFromParent_Done, |
| 30173 | /* 85645 */ // Label 1849: @85645 |
| 30174 | /* 85645 */ GIM_Try, /*On fail goto*//*Label 1850*/ GIMT_Encode4(85687), // Rule ID 19806 // |
| 30175 | /* 85650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 30176 | /* 85653 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 30177 | /* 85657 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30178 | /* 85661 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 30179 | /* 85665 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30180 | /* 85672 */ // (st VR512:{ *:[v32f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v32f16] }:$src) |
| 30181 | /* 85672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZmr), |
| 30182 | /* 85675 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30183 | /* 85679 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30184 | /* 85681 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30185 | /* 85685 */ GIR_RootConstrainSelectedInstOperands, |
| 30186 | /* 85686 */ // GIR_Coverage, 19806, |
| 30187 | /* 85686 */ GIR_EraseRootFromParent_Done, |
| 30188 | /* 85687 */ // Label 1850: @85687 |
| 30189 | /* 85687 */ GIM_Try, /*On fail goto*//*Label 1851*/ GIMT_Encode4(85725), // Rule ID 19809 // |
| 30190 | /* 85692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 30191 | /* 85695 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 30192 | /* 85699 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30193 | /* 85703 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30194 | /* 85710 */ // (st VR512:{ *:[v32i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v32i16] }:$src) |
| 30195 | /* 85710 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zmr), |
| 30196 | /* 85713 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30197 | /* 85717 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30198 | /* 85719 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30199 | /* 85723 */ GIR_RootConstrainSelectedInstOperands, |
| 30200 | /* 85724 */ // GIR_Coverage, 19809, |
| 30201 | /* 85724 */ GIR_EraseRootFromParent_Done, |
| 30202 | /* 85725 */ // Label 1851: @85725 |
| 30203 | /* 85725 */ GIM_Try, /*On fail goto*//*Label 1852*/ GIMT_Encode4(85763), // Rule ID 19810 // |
| 30204 | /* 85730 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 30205 | /* 85733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 30206 | /* 85737 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30207 | /* 85741 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30208 | /* 85748 */ // (st VR512:{ *:[v32f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v32f16] }:$src) |
| 30209 | /* 85748 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZmr), |
| 30210 | /* 85751 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30211 | /* 85755 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30212 | /* 85757 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30213 | /* 85761 */ GIR_RootConstrainSelectedInstOperands, |
| 30214 | /* 85762 */ // GIR_Coverage, 19810, |
| 30215 | /* 85762 */ GIR_EraseRootFromParent_Done, |
| 30216 | /* 85763 */ // Label 1852: @85763 |
| 30217 | /* 85763 */ GIM_Reject, |
| 30218 | /* 85764 */ // Label 1848: @85764 |
| 30219 | /* 85764 */ GIM_Reject, |
| 30220 | /* 85765 */ // Label 1495: @85765 |
| 30221 | /* 85765 */ GIM_Try, /*On fail goto*//*Label 1853*/ GIMT_Encode4(85846), |
| 30222 | /* 85770 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30223 | /* 85773 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 30224 | /* 85777 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 30225 | /* 85781 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30226 | /* 85785 */ GIM_Try, /*On fail goto*//*Label 1854*/ GIMT_Encode4(85815), // Rule ID 4406 // |
| 30227 | /* 85790 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoEGPR), |
| 30228 | /* 85793 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30229 | /* 85800 */ // (st VK64:{ *:[v64i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVQmk addr:{ *:[iPTR] }:$dst, VK64:{ *:[v64i1] }:$src) |
| 30230 | /* 85800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVQmk), |
| 30231 | /* 85803 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30232 | /* 85807 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30233 | /* 85809 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30234 | /* 85813 */ GIR_RootConstrainSelectedInstOperands, |
| 30235 | /* 85814 */ // GIR_Coverage, 4406, |
| 30236 | /* 85814 */ GIR_EraseRootFromParent_Done, |
| 30237 | /* 85815 */ // Label 1854: @85815 |
| 30238 | /* 85815 */ GIM_Try, /*On fail goto*//*Label 1855*/ GIMT_Encode4(85845), // Rule ID 4410 // |
| 30239 | /* 85820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEGPR_In64BitMode), |
| 30240 | /* 85823 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30241 | /* 85830 */ // (st VK64:{ *:[v64i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVQmk_EVEX addr:{ *:[iPTR] }:$dst, VK64:{ *:[v64i1] }:$src) |
| 30242 | /* 85830 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVQmk_EVEX), |
| 30243 | /* 85833 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30244 | /* 85837 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30245 | /* 85839 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30246 | /* 85843 */ GIR_RootConstrainSelectedInstOperands, |
| 30247 | /* 85844 */ // GIR_Coverage, 4410, |
| 30248 | /* 85844 */ GIR_EraseRootFromParent_Done, |
| 30249 | /* 85845 */ // Label 1855: @85845 |
| 30250 | /* 85845 */ GIM_Reject, |
| 30251 | /* 85846 */ // Label 1853: @85846 |
| 30252 | /* 85846 */ GIM_Reject, |
| 30253 | /* 85847 */ // Label 1496: @85847 |
| 30254 | /* 85847 */ GIM_Try, /*On fail goto*//*Label 1856*/ GIMT_Encode4(85940), |
| 30255 | /* 85852 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30256 | /* 85855 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 30257 | /* 85859 */ GIM_Try, /*On fail goto*//*Label 1857*/ GIMT_Encode4(85901), // Rule ID 19807 // |
| 30258 | /* 85864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 30259 | /* 85867 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 30260 | /* 85871 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30261 | /* 85875 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 30262 | /* 85879 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30263 | /* 85886 */ // (st VR512:{ *:[v64i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v64i8] }:$src) |
| 30264 | /* 85886 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zmr), |
| 30265 | /* 85889 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30266 | /* 85893 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30267 | /* 85895 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30268 | /* 85899 */ GIR_RootConstrainSelectedInstOperands, |
| 30269 | /* 85900 */ // GIR_Coverage, 19807, |
| 30270 | /* 85900 */ GIR_EraseRootFromParent_Done, |
| 30271 | /* 85901 */ // Label 1857: @85901 |
| 30272 | /* 85901 */ GIM_Try, /*On fail goto*//*Label 1858*/ GIMT_Encode4(85939), // Rule ID 19811 // |
| 30273 | /* 85906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 30274 | /* 85909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 30275 | /* 85913 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30276 | /* 85917 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30277 | /* 85924 */ // (st VR512:{ *:[v64i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v64i8] }:$src) |
| 30278 | /* 85924 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zmr), |
| 30279 | /* 85927 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 30280 | /* 85931 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 30281 | /* 85933 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30282 | /* 85937 */ GIR_RootConstrainSelectedInstOperands, |
| 30283 | /* 85938 */ // GIR_Coverage, 19811, |
| 30284 | /* 85938 */ GIR_EraseRootFromParent_Done, |
| 30285 | /* 85939 */ // Label 1858: @85939 |
| 30286 | /* 85939 */ GIM_Reject, |
| 30287 | /* 85940 */ // Label 1856: @85940 |
| 30288 | /* 85940 */ GIM_Reject, |
| 30289 | /* 85941 */ // Label 1497: @85941 |
| 30290 | /* 85941 */ GIM_Reject, |
| 30291 | /* 85942 */ // Label 14: @85942 |
| 30292 | /* 85942 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 1863*/ GIMT_Encode4(86177), |
| 30293 | /* 85953 */ /*GILLT_s8*//*Label 1859*/ GIMT_Encode4(85969), |
| 30294 | /* 85957 */ /*GILLT_s16*//*Label 1860*/ GIMT_Encode4(86021), |
| 30295 | /* 85961 */ /*GILLT_s32*//*Label 1861*/ GIMT_Encode4(86073), |
| 30296 | /* 85965 */ /*GILLT_s64*//*Label 1862*/ GIMT_Encode4(86125), |
| 30297 | /* 85969 */ // Label 1859: @85969 |
| 30298 | /* 85969 */ GIM_Try, /*On fail goto*//*Label 1864*/ GIMT_Encode4(86020), // Rule ID 45 // |
| 30299 | /* 85974 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 30300 | /* 85977 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 30301 | /* 85984 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 30302 | /* 85988 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30303 | /* 85992 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 30304 | /* 85996 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30305 | /* 86003 */ // (atomic_swap:{ *:[i8] } addr:{ *:[iPTR] }:$ptr, GR8:{ *:[i8] }:$val)<<P:Predicate_atomic_swap_i8>> => (XCHG8rm:{ *:[i8] } GR8:{ *:[i8] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30306 | /* 86003 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XCHG8rm), |
| 30307 | /* 86006 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30308 | /* 86008 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30309 | /* 86010 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30310 | /* 86014 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30311 | /* 86018 */ GIR_RootConstrainSelectedInstOperands, |
| 30312 | /* 86019 */ // GIR_Coverage, 45, |
| 30313 | /* 86019 */ GIR_EraseRootFromParent_Done, |
| 30314 | /* 86020 */ // Label 1864: @86020 |
| 30315 | /* 86020 */ GIM_Reject, |
| 30316 | /* 86021 */ // Label 1860: @86021 |
| 30317 | /* 86021 */ GIM_Try, /*On fail goto*//*Label 1865*/ GIMT_Encode4(86072), // Rule ID 46 // |
| 30318 | /* 86026 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 30319 | /* 86029 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 30320 | /* 86036 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 30321 | /* 86040 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30322 | /* 86044 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 30323 | /* 86048 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30324 | /* 86055 */ // (atomic_swap:{ *:[i16] } addr:{ *:[iPTR] }:$ptr, GR16:{ *:[i16] }:$val)<<P:Predicate_atomic_swap_i16>> => (XCHG16rm:{ *:[i16] } GR16:{ *:[i16] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30325 | /* 86055 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XCHG16rm), |
| 30326 | /* 86058 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30327 | /* 86060 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30328 | /* 86062 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30329 | /* 86066 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30330 | /* 86070 */ GIR_RootConstrainSelectedInstOperands, |
| 30331 | /* 86071 */ // GIR_Coverage, 46, |
| 30332 | /* 86071 */ GIR_EraseRootFromParent_Done, |
| 30333 | /* 86072 */ // Label 1865: @86072 |
| 30334 | /* 86072 */ GIM_Reject, |
| 30335 | /* 86073 */ // Label 1861: @86073 |
| 30336 | /* 86073 */ GIM_Try, /*On fail goto*//*Label 1866*/ GIMT_Encode4(86124), // Rule ID 47 // |
| 30337 | /* 86078 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 30338 | /* 86081 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 30339 | /* 86088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 30340 | /* 86092 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30341 | /* 86096 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 30342 | /* 86100 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30343 | /* 86107 */ // (atomic_swap:{ *:[i32] } addr:{ *:[iPTR] }:$ptr, GR32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_i32>> => (XCHG32rm:{ *:[i32] } GR32:{ *:[i32] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30344 | /* 86107 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XCHG32rm), |
| 30345 | /* 86110 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30346 | /* 86112 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30347 | /* 86114 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30348 | /* 86118 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30349 | /* 86122 */ GIR_RootConstrainSelectedInstOperands, |
| 30350 | /* 86123 */ // GIR_Coverage, 47, |
| 30351 | /* 86123 */ GIR_EraseRootFromParent_Done, |
| 30352 | /* 86124 */ // Label 1866: @86124 |
| 30353 | /* 86124 */ GIM_Reject, |
| 30354 | /* 86125 */ // Label 1862: @86125 |
| 30355 | /* 86125 */ GIM_Try, /*On fail goto*//*Label 1867*/ GIMT_Encode4(86176), // Rule ID 48 // |
| 30356 | /* 86130 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 30357 | /* 86133 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 30358 | /* 86140 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 30359 | /* 86144 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30360 | /* 86148 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 30361 | /* 86152 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30362 | /* 86159 */ // (atomic_swap:{ *:[i64] } addr:{ *:[iPTR] }:$ptr, GR64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_i64>> => (XCHG64rm:{ *:[i64] } GR64:{ *:[i64] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30363 | /* 86159 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XCHG64rm), |
| 30364 | /* 86162 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30365 | /* 86164 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30366 | /* 86166 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30367 | /* 86170 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30368 | /* 86174 */ GIR_RootConstrainSelectedInstOperands, |
| 30369 | /* 86175 */ // GIR_Coverage, 48, |
| 30370 | /* 86175 */ GIR_EraseRootFromParent_Done, |
| 30371 | /* 86176 */ // Label 1867: @86176 |
| 30372 | /* 86176 */ GIM_Reject, |
| 30373 | /* 86177 */ // Label 1863: @86177 |
| 30374 | /* 86177 */ GIM_Reject, |
| 30375 | /* 86178 */ // Label 15: @86178 |
| 30376 | /* 86178 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 1872*/ GIMT_Encode4(86425), |
| 30377 | /* 86189 */ /*GILLT_s8*//*Label 1868*/ GIMT_Encode4(86205), |
| 30378 | /* 86193 */ /*GILLT_s16*//*Label 1869*/ GIMT_Encode4(86260), |
| 30379 | /* 86197 */ /*GILLT_s32*//*Label 1870*/ GIMT_Encode4(86315), |
| 30380 | /* 86201 */ /*GILLT_s64*//*Label 1871*/ GIMT_Encode4(86370), |
| 30381 | /* 86205 */ // Label 1868: @86205 |
| 30382 | /* 86205 */ GIM_Try, /*On fail goto*//*Label 1873*/ GIMT_Encode4(86259), // Rule ID 17298 // |
| 30383 | /* 86210 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 30384 | /* 86213 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 30385 | /* 86220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 30386 | /* 86224 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30387 | /* 86228 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 30388 | /* 86232 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30389 | /* 86239 */ // (atomic_load_add:{ *:[i8] } addr:{ *:[iPTR] }:$ptr, GR8:{ *:[i8] }:$val)<<P:Predicate_atomic_load_add_i8>> => (LXADD8:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30390 | /* 86239 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LXADD8), |
| 30391 | /* 86242 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30392 | /* 86244 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30393 | /* 86246 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30394 | /* 86250 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 30395 | /* 86253 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30396 | /* 86257 */ GIR_RootConstrainSelectedInstOperands, |
| 30397 | /* 86258 */ // GIR_Coverage, 17298, |
| 30398 | /* 86258 */ GIR_EraseRootFromParent_Done, |
| 30399 | /* 86259 */ // Label 1873: @86259 |
| 30400 | /* 86259 */ GIM_Reject, |
| 30401 | /* 86260 */ // Label 1869: @86260 |
| 30402 | /* 86260 */ GIM_Try, /*On fail goto*//*Label 1874*/ GIMT_Encode4(86314), // Rule ID 17299 // |
| 30403 | /* 86265 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 30404 | /* 86268 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 30405 | /* 86275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 30406 | /* 86279 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30407 | /* 86283 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 30408 | /* 86287 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30409 | /* 86294 */ // (atomic_load_add:{ *:[i16] } addr:{ *:[iPTR] }:$ptr, GR16:{ *:[i16] }:$val)<<P:Predicate_atomic_load_add_i16>> => (LXADD16:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30410 | /* 86294 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LXADD16), |
| 30411 | /* 86297 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30412 | /* 86299 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30413 | /* 86301 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30414 | /* 86305 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 30415 | /* 86308 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30416 | /* 86312 */ GIR_RootConstrainSelectedInstOperands, |
| 30417 | /* 86313 */ // GIR_Coverage, 17299, |
| 30418 | /* 86313 */ GIR_EraseRootFromParent_Done, |
| 30419 | /* 86314 */ // Label 1874: @86314 |
| 30420 | /* 86314 */ GIM_Reject, |
| 30421 | /* 86315 */ // Label 1870: @86315 |
| 30422 | /* 86315 */ GIM_Try, /*On fail goto*//*Label 1875*/ GIMT_Encode4(86369), // Rule ID 17300 // |
| 30423 | /* 86320 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 30424 | /* 86323 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 30425 | /* 86330 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 30426 | /* 86334 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30427 | /* 86338 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 30428 | /* 86342 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30429 | /* 86349 */ // (atomic_load_add:{ *:[i32] } addr:{ *:[iPTR] }:$ptr, GR32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_i32>> => (LXADD32:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30430 | /* 86349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LXADD32), |
| 30431 | /* 86352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30432 | /* 86354 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30433 | /* 86356 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30434 | /* 86360 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 30435 | /* 86363 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30436 | /* 86367 */ GIR_RootConstrainSelectedInstOperands, |
| 30437 | /* 86368 */ // GIR_Coverage, 17300, |
| 30438 | /* 86368 */ GIR_EraseRootFromParent_Done, |
| 30439 | /* 86369 */ // Label 1875: @86369 |
| 30440 | /* 86369 */ GIM_Reject, |
| 30441 | /* 86370 */ // Label 1871: @86370 |
| 30442 | /* 86370 */ GIM_Try, /*On fail goto*//*Label 1876*/ GIMT_Encode4(86424), // Rule ID 17301 // |
| 30443 | /* 86375 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 30444 | /* 86378 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 30445 | /* 86385 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 30446 | /* 86389 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30447 | /* 86393 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 30448 | /* 86397 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30449 | /* 86404 */ // (atomic_load_add:{ *:[i64] } addr:{ *:[iPTR] }:$ptr, GR64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_i64>> => (LXADD64:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30450 | /* 86404 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LXADD64), |
| 30451 | /* 86407 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30452 | /* 86409 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30453 | /* 86411 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30454 | /* 86415 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 30455 | /* 86418 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30456 | /* 86422 */ GIR_RootConstrainSelectedInstOperands, |
| 30457 | /* 86423 */ // GIR_Coverage, 17301, |
| 30458 | /* 86423 */ GIR_EraseRootFromParent_Done, |
| 30459 | /* 86424 */ // Label 1876: @86424 |
| 30460 | /* 86424 */ GIM_Reject, |
| 30461 | /* 86425 */ // Label 1872: @86425 |
| 30462 | /* 86425 */ GIM_Reject, |
| 30463 | /* 86426 */ // Label 16: @86426 |
| 30464 | /* 86426 */ GIM_Try, /*On fail goto*//*Label 1877*/ GIMT_Encode4(86581), |
| 30465 | /* 86431 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 30466 | /* 86434 */ GIM_Try, /*On fail goto*//*Label 1878*/ GIMT_Encode4(86484), // Rule ID 156 // |
| 30467 | /* 86439 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPREFETCHI_In64BitMode), |
| 30468 | /* 86442 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 30469 | /* 86445 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 30470 | /* 86448 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/0, /*SizeInBits*/0, |
| 30471 | /* 86452 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 30472 | /* 86456 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 3, |
| 30473 | /* 86460 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 30474 | /* 86464 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30475 | /* 86471 */ // (prefetch addr:{ *:[iPTR] }:$src, 0:{ *:[i32] }, 3:{ *:[i32] }, 0:{ *:[i32] }) => (PREFETCHIT0 addr:{ *:[iPTR] }:$src) |
| 30476 | /* 86471 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHIT0), |
| 30477 | /* 86474 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30478 | /* 86478 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30479 | /* 86482 */ GIR_RootConstrainSelectedInstOperands, |
| 30480 | /* 86483 */ // GIR_Coverage, 156, |
| 30481 | /* 86483 */ GIR_EraseRootFromParent_Done, |
| 30482 | /* 86484 */ // Label 1878: @86484 |
| 30483 | /* 86484 */ GIM_Try, /*On fail goto*//*Label 1879*/ GIMT_Encode4(86534), // Rule ID 157 // |
| 30484 | /* 86489 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPREFETCHI_In64BitMode), |
| 30485 | /* 86492 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 30486 | /* 86495 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 30487 | /* 86498 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/0, /*SizeInBits*/0, |
| 30488 | /* 86502 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 30489 | /* 86506 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 2, |
| 30490 | /* 86510 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 30491 | /* 86514 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30492 | /* 86521 */ // (prefetch addr:{ *:[iPTR] }:$src, 0:{ *:[i32] }, 2:{ *:[i32] }, 0:{ *:[i32] }) => (PREFETCHIT1 addr:{ *:[iPTR] }:$src) |
| 30493 | /* 86521 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHIT1), |
| 30494 | /* 86524 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30495 | /* 86528 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30496 | /* 86532 */ GIR_RootConstrainSelectedInstOperands, |
| 30497 | /* 86533 */ // GIR_Coverage, 157, |
| 30498 | /* 86533 */ GIR_EraseRootFromParent_Done, |
| 30499 | /* 86534 */ // Label 1879: @86534 |
| 30500 | /* 86534 */ GIM_Try, /*On fail goto*//*Label 1880*/ GIMT_Encode4(86580), // Rule ID 16983 // |
| 30501 | /* 86539 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPrefetchW), |
| 30502 | /* 86542 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 30503 | /* 86545 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/0, /*SizeInBits*/0, |
| 30504 | /* 86549 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 1, |
| 30505 | /* 86553 */ // MIs[0] Operand 2 |
| 30506 | /* 86553 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 30507 | /* 86556 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 1, |
| 30508 | /* 86560 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30509 | /* 86567 */ // (prefetch addr:{ *:[iPTR] }:$addr, 1:{ *:[i32] }, (timm:{ *:[i32] })<<P:Predicate_PrefetchWLevel>>, 1:{ *:[i32] }) => (PREFETCHW addr:{ *:[iPTR] }:$addr) |
| 30510 | /* 86567 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHW), |
| 30511 | /* 86570 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // addr |
| 30512 | /* 86574 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30513 | /* 86578 */ GIR_RootConstrainSelectedInstOperands, |
| 30514 | /* 86579 */ // GIR_Coverage, 16983, |
| 30515 | /* 86579 */ GIR_EraseRootFromParent_Done, |
| 30516 | /* 86580 */ // Label 1880: @86580 |
| 30517 | /* 86580 */ GIM_Reject, |
| 30518 | /* 86581 */ // Label 1877: @86581 |
| 30519 | /* 86581 */ GIM_Try, /*On fail goto*//*Label 1881*/ GIMT_Encode4(86744), |
| 30520 | /* 86586 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 30521 | /* 86589 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 30522 | /* 86592 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/0, /*SizeInBits*/0, |
| 30523 | /* 86596 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 30524 | /* 86599 */ GIM_Try, /*On fail goto*//*Label 1882*/ GIMT_Encode4(86635), // Rule ID 2505 // |
| 30525 | /* 86604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSEPrefetch), |
| 30526 | /* 86607 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 3, |
| 30527 | /* 86611 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 1, |
| 30528 | /* 86615 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30529 | /* 86622 */ // (prefetch addr:{ *:[iPTR] }:$src, (timm:{ *:[i32] }), 3:{ *:[i32] }, 1:{ *:[i32] }) => (PREFETCHT0 addr:{ *:[iPTR] }:$src) |
| 30530 | /* 86622 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHT0), |
| 30531 | /* 86625 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30532 | /* 86629 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30533 | /* 86633 */ GIR_RootConstrainSelectedInstOperands, |
| 30534 | /* 86634 */ // GIR_Coverage, 2505, |
| 30535 | /* 86634 */ GIR_EraseRootFromParent_Done, |
| 30536 | /* 86635 */ // Label 1882: @86635 |
| 30537 | /* 86635 */ GIM_Try, /*On fail goto*//*Label 1883*/ GIMT_Encode4(86671), // Rule ID 2506 // |
| 30538 | /* 86640 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSEPrefetch), |
| 30539 | /* 86643 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 2, |
| 30540 | /* 86647 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 1, |
| 30541 | /* 86651 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30542 | /* 86658 */ // (prefetch addr:{ *:[iPTR] }:$src, (timm:{ *:[i32] }), 2:{ *:[i32] }, 1:{ *:[i32] }) => (PREFETCHT1 addr:{ *:[iPTR] }:$src) |
| 30543 | /* 86658 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHT1), |
| 30544 | /* 86661 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30545 | /* 86665 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30546 | /* 86669 */ GIR_RootConstrainSelectedInstOperands, |
| 30547 | /* 86670 */ // GIR_Coverage, 2506, |
| 30548 | /* 86670 */ GIR_EraseRootFromParent_Done, |
| 30549 | /* 86671 */ // Label 1883: @86671 |
| 30550 | /* 86671 */ GIM_Try, /*On fail goto*//*Label 1884*/ GIMT_Encode4(86707), // Rule ID 2507 // |
| 30551 | /* 86676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSEPrefetch), |
| 30552 | /* 86679 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 30553 | /* 86683 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 1, |
| 30554 | /* 86687 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30555 | /* 86694 */ // (prefetch addr:{ *:[iPTR] }:$src, (timm:{ *:[i32] }), 1:{ *:[i32] }, 1:{ *:[i32] }) => (PREFETCHT2 addr:{ *:[iPTR] }:$src) |
| 30556 | /* 86694 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHT2), |
| 30557 | /* 86697 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30558 | /* 86701 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30559 | /* 86705 */ GIR_RootConstrainSelectedInstOperands, |
| 30560 | /* 86706 */ // GIR_Coverage, 2507, |
| 30561 | /* 86706 */ GIR_EraseRootFromParent_Done, |
| 30562 | /* 86707 */ // Label 1884: @86707 |
| 30563 | /* 86707 */ GIM_Try, /*On fail goto*//*Label 1885*/ GIMT_Encode4(86743), // Rule ID 2508 // |
| 30564 | /* 86712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSEPrefetch), |
| 30565 | /* 86715 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 0, |
| 30566 | /* 86719 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 1, |
| 30567 | /* 86723 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30568 | /* 86730 */ // (prefetch addr:{ *:[iPTR] }:$src, (timm:{ *:[i32] }), 0:{ *:[i32] }, 1:{ *:[i32] }) => (PREFETCHNTA addr:{ *:[iPTR] }:$src) |
| 30569 | /* 86730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHNTA), |
| 30570 | /* 86733 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30571 | /* 86737 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30572 | /* 86741 */ GIR_RootConstrainSelectedInstOperands, |
| 30573 | /* 86742 */ // GIR_Coverage, 2508, |
| 30574 | /* 86742 */ GIR_EraseRootFromParent_Done, |
| 30575 | /* 86743 */ // Label 1885: @86743 |
| 30576 | /* 86743 */ GIM_Reject, |
| 30577 | /* 86744 */ // Label 1881: @86744 |
| 30578 | /* 86744 */ GIM_Reject, |
| 30579 | /* 86745 */ // Label 17: @86745 |
| 30580 | /* 86745 */ GIM_Try, /*On fail goto*//*Label 1886*/ GIMT_Encode4(89074), |
| 30581 | /* 86750 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/3, |
| 30582 | /* 86753 */ GIM_Try, /*On fail goto*//*Label 1887*/ GIMT_Encode4(86820), // Rule ID 1530 // |
| 30583 | /* 86758 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30584 | /* 86761 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubwd), |
| 30585 | /* 86766 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30586 | /* 86769 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30587 | /* 86772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30588 | /* 86776 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30589 | /* 86780 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30590 | /* 86784 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30591 | /* 86787 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30592 | /* 86791 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30593 | /* 86795 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30594 | /* 86797 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30595 | /* 86804 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15044:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHSUBWDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 30596 | /* 86804 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBWDrm), |
| 30597 | /* 86807 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30598 | /* 86809 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30599 | /* 86813 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30600 | /* 86818 */ GIR_RootConstrainSelectedInstOperands, |
| 30601 | /* 86819 */ // GIR_Coverage, 1530, |
| 30602 | /* 86819 */ GIR_EraseRootFromParent_Done, |
| 30603 | /* 86820 */ // Label 1887: @86820 |
| 30604 | /* 86820 */ GIM_Try, /*On fail goto*//*Label 1888*/ GIMT_Encode4(86887), // Rule ID 1532 // |
| 30605 | /* 86825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30606 | /* 86828 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubdq), |
| 30607 | /* 86833 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30608 | /* 86836 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30609 | /* 86839 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30610 | /* 86843 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30611 | /* 86847 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30612 | /* 86851 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30613 | /* 86854 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30614 | /* 86858 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30615 | /* 86862 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30616 | /* 86864 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30617 | /* 86871 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15043:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHSUBDQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30618 | /* 86871 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBDQrm), |
| 30619 | /* 86874 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30620 | /* 86876 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30621 | /* 86880 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30622 | /* 86885 */ GIR_RootConstrainSelectedInstOperands, |
| 30623 | /* 86886 */ // GIR_Coverage, 1532, |
| 30624 | /* 86886 */ GIR_EraseRootFromParent_Done, |
| 30625 | /* 86887 */ // Label 1888: @86887 |
| 30626 | /* 86887 */ GIM_Try, /*On fail goto*//*Label 1889*/ GIMT_Encode4(86954), // Rule ID 1534 // |
| 30627 | /* 86892 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30628 | /* 86895 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubbw), |
| 30629 | /* 86900 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 30630 | /* 86903 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30631 | /* 86906 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30632 | /* 86910 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30633 | /* 86914 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30634 | /* 86918 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30635 | /* 86921 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30636 | /* 86925 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30637 | /* 86929 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30638 | /* 86931 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30639 | /* 86938 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15042:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHSUBBWrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 30640 | /* 86938 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBBWrm), |
| 30641 | /* 86941 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30642 | /* 86943 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30643 | /* 86947 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30644 | /* 86952 */ GIR_RootConstrainSelectedInstOperands, |
| 30645 | /* 86953 */ // GIR_Coverage, 1534, |
| 30646 | /* 86953 */ GIR_EraseRootFromParent_Done, |
| 30647 | /* 86954 */ // Label 1889: @86954 |
| 30648 | /* 86954 */ GIM_Try, /*On fail goto*//*Label 1890*/ GIMT_Encode4(87021), // Rule ID 1536 // |
| 30649 | /* 86959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30650 | /* 86962 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddwq), |
| 30651 | /* 86967 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30652 | /* 86970 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30653 | /* 86973 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30654 | /* 86977 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30655 | /* 86981 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30656 | /* 86985 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30657 | /* 86988 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30658 | /* 86992 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30659 | /* 86996 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30660 | /* 86998 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30661 | /* 87005 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15041:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDWQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30662 | /* 87005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDWQrm), |
| 30663 | /* 87008 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30664 | /* 87010 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30665 | /* 87014 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30666 | /* 87019 */ GIR_RootConstrainSelectedInstOperands, |
| 30667 | /* 87020 */ // GIR_Coverage, 1536, |
| 30668 | /* 87020 */ GIR_EraseRootFromParent_Done, |
| 30669 | /* 87021 */ // Label 1890: @87021 |
| 30670 | /* 87021 */ GIM_Try, /*On fail goto*//*Label 1891*/ GIMT_Encode4(87088), // Rule ID 1538 // |
| 30671 | /* 87026 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30672 | /* 87029 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddwd), |
| 30673 | /* 87034 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30674 | /* 87037 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30675 | /* 87040 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30676 | /* 87044 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30677 | /* 87048 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30678 | /* 87052 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30679 | /* 87055 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30680 | /* 87059 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30681 | /* 87063 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30682 | /* 87065 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30683 | /* 87072 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15040:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDWDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 30684 | /* 87072 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDWDrm), |
| 30685 | /* 87075 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30686 | /* 87077 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30687 | /* 87081 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30688 | /* 87086 */ GIR_RootConstrainSelectedInstOperands, |
| 30689 | /* 87087 */ // GIR_Coverage, 1538, |
| 30690 | /* 87087 */ GIR_EraseRootFromParent_Done, |
| 30691 | /* 87088 */ // Label 1891: @87088 |
| 30692 | /* 87088 */ GIM_Try, /*On fail goto*//*Label 1892*/ GIMT_Encode4(87155), // Rule ID 1540 // |
| 30693 | /* 87093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30694 | /* 87096 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadduwq), |
| 30695 | /* 87101 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30696 | /* 87104 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30697 | /* 87107 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30698 | /* 87111 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30699 | /* 87115 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30700 | /* 87119 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30701 | /* 87122 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30702 | /* 87126 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30703 | /* 87130 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30704 | /* 87132 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30705 | /* 87139 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15039:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUWQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30706 | /* 87139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUWQrm), |
| 30707 | /* 87142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30708 | /* 87144 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30709 | /* 87148 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30710 | /* 87153 */ GIR_RootConstrainSelectedInstOperands, |
| 30711 | /* 87154 */ // GIR_Coverage, 1540, |
| 30712 | /* 87154 */ GIR_EraseRootFromParent_Done, |
| 30713 | /* 87155 */ // Label 1892: @87155 |
| 30714 | /* 87155 */ GIM_Try, /*On fail goto*//*Label 1893*/ GIMT_Encode4(87222), // Rule ID 1542 // |
| 30715 | /* 87160 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30716 | /* 87163 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadduwd), |
| 30717 | /* 87168 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30718 | /* 87171 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30719 | /* 87174 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30720 | /* 87178 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30721 | /* 87182 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30722 | /* 87186 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30723 | /* 87189 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30724 | /* 87193 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30725 | /* 87197 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30726 | /* 87199 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30727 | /* 87206 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15038:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUWDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 30728 | /* 87206 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUWDrm), |
| 30729 | /* 87209 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30730 | /* 87211 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30731 | /* 87215 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30732 | /* 87220 */ GIR_RootConstrainSelectedInstOperands, |
| 30733 | /* 87221 */ // GIR_Coverage, 1542, |
| 30734 | /* 87221 */ GIR_EraseRootFromParent_Done, |
| 30735 | /* 87222 */ // Label 1893: @87222 |
| 30736 | /* 87222 */ GIM_Try, /*On fail goto*//*Label 1894*/ GIMT_Encode4(87289), // Rule ID 1544 // |
| 30737 | /* 87227 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30738 | /* 87230 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddudq), |
| 30739 | /* 87235 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30740 | /* 87238 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30741 | /* 87241 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30742 | /* 87245 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30743 | /* 87249 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30744 | /* 87253 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30745 | /* 87256 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30746 | /* 87260 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30747 | /* 87264 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30748 | /* 87266 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30749 | /* 87273 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15037:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUDQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30750 | /* 87273 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUDQrm), |
| 30751 | /* 87276 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30752 | /* 87278 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30753 | /* 87282 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30754 | /* 87287 */ GIR_RootConstrainSelectedInstOperands, |
| 30755 | /* 87288 */ // GIR_Coverage, 1544, |
| 30756 | /* 87288 */ GIR_EraseRootFromParent_Done, |
| 30757 | /* 87289 */ // Label 1894: @87289 |
| 30758 | /* 87289 */ GIM_Try, /*On fail goto*//*Label 1895*/ GIMT_Encode4(87356), // Rule ID 1546 // |
| 30759 | /* 87294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30760 | /* 87297 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubw), |
| 30761 | /* 87302 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 30762 | /* 87305 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30763 | /* 87308 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30764 | /* 87312 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30765 | /* 87316 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30766 | /* 87320 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30767 | /* 87323 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30768 | /* 87327 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30769 | /* 87331 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30770 | /* 87333 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30771 | /* 87340 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15036:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUBWrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 30772 | /* 87340 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBWrm), |
| 30773 | /* 87343 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30774 | /* 87345 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30775 | /* 87349 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30776 | /* 87354 */ GIR_RootConstrainSelectedInstOperands, |
| 30777 | /* 87355 */ // GIR_Coverage, 1546, |
| 30778 | /* 87355 */ GIR_EraseRootFromParent_Done, |
| 30779 | /* 87356 */ // Label 1895: @87356 |
| 30780 | /* 87356 */ GIM_Try, /*On fail goto*//*Label 1896*/ GIMT_Encode4(87423), // Rule ID 1548 // |
| 30781 | /* 87361 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30782 | /* 87364 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubq), |
| 30783 | /* 87369 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30784 | /* 87372 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30785 | /* 87375 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30786 | /* 87379 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30787 | /* 87383 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30788 | /* 87387 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30789 | /* 87390 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30790 | /* 87394 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30791 | /* 87398 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30792 | /* 87400 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30793 | /* 87407 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15035:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUBQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30794 | /* 87407 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBQrm), |
| 30795 | /* 87410 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30796 | /* 87412 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30797 | /* 87416 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30798 | /* 87421 */ GIR_RootConstrainSelectedInstOperands, |
| 30799 | /* 87422 */ // GIR_Coverage, 1548, |
| 30800 | /* 87422 */ GIR_EraseRootFromParent_Done, |
| 30801 | /* 87423 */ // Label 1896: @87423 |
| 30802 | /* 87423 */ GIM_Try, /*On fail goto*//*Label 1897*/ GIMT_Encode4(87490), // Rule ID 1550 // |
| 30803 | /* 87428 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30804 | /* 87431 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubd), |
| 30805 | /* 87436 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30806 | /* 87439 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30807 | /* 87442 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30808 | /* 87446 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30809 | /* 87450 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30810 | /* 87454 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30811 | /* 87457 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30812 | /* 87461 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30813 | /* 87465 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30814 | /* 87467 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30815 | /* 87474 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15034:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUBDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 30816 | /* 87474 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBDrm), |
| 30817 | /* 87477 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30818 | /* 87479 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30819 | /* 87483 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30820 | /* 87488 */ GIR_RootConstrainSelectedInstOperands, |
| 30821 | /* 87489 */ // GIR_Coverage, 1550, |
| 30822 | /* 87489 */ GIR_EraseRootFromParent_Done, |
| 30823 | /* 87490 */ // Label 1897: @87490 |
| 30824 | /* 87490 */ GIM_Try, /*On fail goto*//*Label 1898*/ GIMT_Encode4(87557), // Rule ID 1552 // |
| 30825 | /* 87495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30826 | /* 87498 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadddq), |
| 30827 | /* 87503 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30828 | /* 87506 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30829 | /* 87509 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30830 | /* 87513 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30831 | /* 87517 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30832 | /* 87521 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30833 | /* 87524 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30834 | /* 87528 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30835 | /* 87532 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30836 | /* 87534 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30837 | /* 87541 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15033:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDDQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30838 | /* 87541 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDDQrm), |
| 30839 | /* 87544 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30840 | /* 87546 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30841 | /* 87550 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30842 | /* 87555 */ GIR_RootConstrainSelectedInstOperands, |
| 30843 | /* 87556 */ // GIR_Coverage, 1552, |
| 30844 | /* 87556 */ GIR_EraseRootFromParent_Done, |
| 30845 | /* 87557 */ // Label 1898: @87557 |
| 30846 | /* 87557 */ GIM_Try, /*On fail goto*//*Label 1899*/ GIMT_Encode4(87624), // Rule ID 1554 // |
| 30847 | /* 87562 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30848 | /* 87565 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbw), |
| 30849 | /* 87570 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 30850 | /* 87573 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30851 | /* 87576 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30852 | /* 87580 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30853 | /* 87584 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30854 | /* 87588 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30855 | /* 87591 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30856 | /* 87595 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30857 | /* 87599 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30858 | /* 87601 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30859 | /* 87608 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15032:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDBWrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 30860 | /* 87608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBWrm), |
| 30861 | /* 87611 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30862 | /* 87613 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30863 | /* 87617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30864 | /* 87622 */ GIR_RootConstrainSelectedInstOperands, |
| 30865 | /* 87623 */ // GIR_Coverage, 1554, |
| 30866 | /* 87623 */ GIR_EraseRootFromParent_Done, |
| 30867 | /* 87624 */ // Label 1899: @87624 |
| 30868 | /* 87624 */ GIM_Try, /*On fail goto*//*Label 1900*/ GIMT_Encode4(87691), // Rule ID 1556 // |
| 30869 | /* 87629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30870 | /* 87632 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbq), |
| 30871 | /* 87637 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30872 | /* 87640 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30873 | /* 87643 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30874 | /* 87647 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30875 | /* 87651 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30876 | /* 87655 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30877 | /* 87658 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30878 | /* 87662 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30879 | /* 87666 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30880 | /* 87668 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30881 | /* 87675 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15031:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDBQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30882 | /* 87675 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBQrm), |
| 30883 | /* 87678 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30884 | /* 87680 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30885 | /* 87684 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30886 | /* 87689 */ GIR_RootConstrainSelectedInstOperands, |
| 30887 | /* 87690 */ // GIR_Coverage, 1556, |
| 30888 | /* 87690 */ GIR_EraseRootFromParent_Done, |
| 30889 | /* 87691 */ // Label 1900: @87691 |
| 30890 | /* 87691 */ GIM_Try, /*On fail goto*//*Label 1901*/ GIMT_Encode4(87758), // Rule ID 1558 // |
| 30891 | /* 87696 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30892 | /* 87699 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbd), |
| 30893 | /* 87704 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30894 | /* 87707 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30895 | /* 87710 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30896 | /* 87714 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30897 | /* 87718 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30898 | /* 87722 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30899 | /* 87725 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30900 | /* 87729 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30901 | /* 87733 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30902 | /* 87735 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30903 | /* 87742 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15030:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDBDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 30904 | /* 87742 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBDrm), |
| 30905 | /* 87745 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30906 | /* 87747 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30907 | /* 87751 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30908 | /* 87756 */ GIR_RootConstrainSelectedInstOperands, |
| 30909 | /* 87757 */ // GIR_Coverage, 1558, |
| 30910 | /* 87757 */ GIR_EraseRootFromParent_Done, |
| 30911 | /* 87758 */ // Label 1901: @87758 |
| 30912 | /* 87758 */ GIM_Try, /*On fail goto*//*Label 1902*/ GIMT_Encode4(87825), // Rule ID 1564 // |
| 30913 | /* 87763 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30914 | /* 87766 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_ps), |
| 30915 | /* 87771 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30916 | /* 87774 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30917 | /* 87777 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30918 | /* 87781 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30919 | /* 87785 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30920 | /* 87789 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30921 | /* 87792 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30922 | /* 87796 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30923 | /* 87800 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30924 | /* 87802 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30925 | /* 87809 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15022:{ *:[iPTR] }, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFRCZPSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 30926 | /* 87809 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPSrm), |
| 30927 | /* 87812 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30928 | /* 87814 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30929 | /* 87818 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30930 | /* 87823 */ GIR_RootConstrainSelectedInstOperands, |
| 30931 | /* 87824 */ // GIR_Coverage, 1564, |
| 30932 | /* 87824 */ GIR_EraseRootFromParent_Done, |
| 30933 | /* 87825 */ // Label 1902: @87825 |
| 30934 | /* 87825 */ GIM_Try, /*On fail goto*//*Label 1903*/ GIMT_Encode4(87892), // Rule ID 1566 // |
| 30935 | /* 87830 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30936 | /* 87833 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_ps_256), |
| 30937 | /* 87838 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 30938 | /* 87841 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 30939 | /* 87844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 30940 | /* 87848 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30941 | /* 87852 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30942 | /* 87856 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30943 | /* 87859 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30944 | /* 87863 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30945 | /* 87867 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30946 | /* 87869 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30947 | /* 87876 */ // (intrinsic_wo_chain:{ *:[v8f32] } 15023:{ *:[iPTR] }, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFRCZPSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 30948 | /* 87876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPSYrm), |
| 30949 | /* 87879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30950 | /* 87881 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30951 | /* 87885 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30952 | /* 87890 */ GIR_RootConstrainSelectedInstOperands, |
| 30953 | /* 87891 */ // GIR_Coverage, 1566, |
| 30954 | /* 87891 */ GIR_EraseRootFromParent_Done, |
| 30955 | /* 87892 */ // Label 1903: @87892 |
| 30956 | /* 87892 */ GIM_Try, /*On fail goto*//*Label 1904*/ GIMT_Encode4(87959), // Rule ID 1572 // |
| 30957 | /* 87897 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30958 | /* 87900 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_pd), |
| 30959 | /* 87905 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30960 | /* 87908 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 30961 | /* 87911 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30962 | /* 87915 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30963 | /* 87919 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30964 | /* 87923 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30965 | /* 87926 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30966 | /* 87930 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30967 | /* 87934 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30968 | /* 87936 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30969 | /* 87943 */ // (intrinsic_wo_chain:{ *:[v2f64] } 15020:{ *:[iPTR] }, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFRCZPDrm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 30970 | /* 87943 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPDrm), |
| 30971 | /* 87946 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30972 | /* 87948 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30973 | /* 87952 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30974 | /* 87957 */ GIR_RootConstrainSelectedInstOperands, |
| 30975 | /* 87958 */ // GIR_Coverage, 1572, |
| 30976 | /* 87958 */ GIR_EraseRootFromParent_Done, |
| 30977 | /* 87959 */ // Label 1904: @87959 |
| 30978 | /* 87959 */ GIM_Try, /*On fail goto*//*Label 1905*/ GIMT_Encode4(88026), // Rule ID 1574 // |
| 30979 | /* 87964 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30980 | /* 87967 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_pd_256), |
| 30981 | /* 87972 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 30982 | /* 87975 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 30983 | /* 87978 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 30984 | /* 87982 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30985 | /* 87986 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30986 | /* 87990 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30987 | /* 87993 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30988 | /* 87997 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30989 | /* 88001 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30990 | /* 88003 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30991 | /* 88010 */ // (intrinsic_wo_chain:{ *:[v4f64] } 15021:{ *:[iPTR] }, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFRCZPDYrm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 30992 | /* 88010 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPDYrm), |
| 30993 | /* 88013 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30994 | /* 88015 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30995 | /* 88019 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30996 | /* 88024 */ GIR_RootConstrainSelectedInstOperands, |
| 30997 | /* 88025 */ // GIR_Coverage, 1574, |
| 30998 | /* 88025 */ GIR_EraseRootFromParent_Done, |
| 30999 | /* 88026 */ // Label 1905: @88026 |
| 31000 | /* 88026 */ GIM_Try, /*On fail goto*//*Label 1906*/ GIMT_Encode4(88093), // Rule ID 3364 // |
| 31001 | /* 88031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX), |
| 31002 | /* 88034 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesimc), |
| 31003 | /* 88039 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31004 | /* 88042 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31005 | /* 88045 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31006 | /* 88049 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 31007 | /* 88053 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31008 | /* 88057 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31009 | /* 88060 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31010 | /* 88064 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31011 | /* 88068 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31012 | /* 88070 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31013 | /* 88077 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13395:{ *:[iPTR] }, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESIMCrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1) |
| 31014 | /* 88077 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESIMCrm), |
| 31015 | /* 88080 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31016 | /* 88082 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 31017 | /* 88086 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31018 | /* 88091 */ GIR_RootConstrainSelectedInstOperands, |
| 31019 | /* 88092 */ // GIR_Coverage, 3364, |
| 31020 | /* 88092 */ GIR_EraseRootFromParent_Done, |
| 31021 | /* 88093 */ // Label 1906: @88093 |
| 31022 | /* 88093 */ GIM_Try, /*On fail goto*//*Label 1907*/ GIMT_Encode4(88129), // Rule ID 1529 // |
| 31023 | /* 88098 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31024 | /* 88101 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubwd), |
| 31025 | /* 88106 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31026 | /* 88109 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 31027 | /* 88112 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31028 | /* 88116 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31029 | /* 88120 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15044:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src) => (VPHSUBWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src) |
| 31030 | /* 88120 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBWDrr), |
| 31031 | /* 88123 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31032 | /* 88125 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31033 | /* 88127 */ GIR_RootConstrainSelectedInstOperands, |
| 31034 | /* 88128 */ // GIR_Coverage, 1529, |
| 31035 | /* 88128 */ GIR_EraseRootFromParent_Done, |
| 31036 | /* 88129 */ // Label 1907: @88129 |
| 31037 | /* 88129 */ GIM_Try, /*On fail goto*//*Label 1908*/ GIMT_Encode4(88165), // Rule ID 1531 // |
| 31038 | /* 88134 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31039 | /* 88137 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubdq), |
| 31040 | /* 88142 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31041 | /* 88145 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31042 | /* 88148 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31043 | /* 88152 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31044 | /* 88156 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15043:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src) => (VPHSUBDQrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src) |
| 31045 | /* 88156 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBDQrr), |
| 31046 | /* 88159 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31047 | /* 88161 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31048 | /* 88163 */ GIR_RootConstrainSelectedInstOperands, |
| 31049 | /* 88164 */ // GIR_Coverage, 1531, |
| 31050 | /* 88164 */ GIR_EraseRootFromParent_Done, |
| 31051 | /* 88165 */ // Label 1908: @88165 |
| 31052 | /* 88165 */ GIM_Try, /*On fail goto*//*Label 1909*/ GIMT_Encode4(88201), // Rule ID 1533 // |
| 31053 | /* 88170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31054 | /* 88173 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubbw), |
| 31055 | /* 88178 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 31056 | /* 88181 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 31057 | /* 88184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31058 | /* 88188 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31059 | /* 88192 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15042:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHSUBBWrr:{ *:[v8i16] } VR128:{ *:[v16i8] }:$src) |
| 31060 | /* 88192 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBBWrr), |
| 31061 | /* 88195 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31062 | /* 88197 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31063 | /* 88199 */ GIR_RootConstrainSelectedInstOperands, |
| 31064 | /* 88200 */ // GIR_Coverage, 1533, |
| 31065 | /* 88200 */ GIR_EraseRootFromParent_Done, |
| 31066 | /* 88201 */ // Label 1909: @88201 |
| 31067 | /* 88201 */ GIM_Try, /*On fail goto*//*Label 1910*/ GIMT_Encode4(88237), // Rule ID 1535 // |
| 31068 | /* 88206 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31069 | /* 88209 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddwq), |
| 31070 | /* 88214 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31071 | /* 88217 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 31072 | /* 88220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31073 | /* 88224 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31074 | /* 88228 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15041:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src) => (VPHADDWQrr:{ *:[v2i64] } VR128:{ *:[v8i16] }:$src) |
| 31075 | /* 88228 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDWQrr), |
| 31076 | /* 88231 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31077 | /* 88233 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31078 | /* 88235 */ GIR_RootConstrainSelectedInstOperands, |
| 31079 | /* 88236 */ // GIR_Coverage, 1535, |
| 31080 | /* 88236 */ GIR_EraseRootFromParent_Done, |
| 31081 | /* 88237 */ // Label 1910: @88237 |
| 31082 | /* 88237 */ GIM_Try, /*On fail goto*//*Label 1911*/ GIMT_Encode4(88273), // Rule ID 1537 // |
| 31083 | /* 88242 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31084 | /* 88245 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddwd), |
| 31085 | /* 88250 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31086 | /* 88253 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 31087 | /* 88256 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31088 | /* 88260 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31089 | /* 88264 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15040:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src) => (VPHADDWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src) |
| 31090 | /* 88264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDWDrr), |
| 31091 | /* 88267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31092 | /* 88269 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31093 | /* 88271 */ GIR_RootConstrainSelectedInstOperands, |
| 31094 | /* 88272 */ // GIR_Coverage, 1537, |
| 31095 | /* 88272 */ GIR_EraseRootFromParent_Done, |
| 31096 | /* 88273 */ // Label 1911: @88273 |
| 31097 | /* 88273 */ GIM_Try, /*On fail goto*//*Label 1912*/ GIMT_Encode4(88309), // Rule ID 1539 // |
| 31098 | /* 88278 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31099 | /* 88281 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadduwq), |
| 31100 | /* 88286 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31101 | /* 88289 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 31102 | /* 88292 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31103 | /* 88296 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31104 | /* 88300 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15039:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src) => (VPHADDUWQrr:{ *:[v2i64] } VR128:{ *:[v8i16] }:$src) |
| 31105 | /* 88300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUWQrr), |
| 31106 | /* 88303 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31107 | /* 88305 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31108 | /* 88307 */ GIR_RootConstrainSelectedInstOperands, |
| 31109 | /* 88308 */ // GIR_Coverage, 1539, |
| 31110 | /* 88308 */ GIR_EraseRootFromParent_Done, |
| 31111 | /* 88309 */ // Label 1912: @88309 |
| 31112 | /* 88309 */ GIM_Try, /*On fail goto*//*Label 1913*/ GIMT_Encode4(88345), // Rule ID 1541 // |
| 31113 | /* 88314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31114 | /* 88317 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadduwd), |
| 31115 | /* 88322 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31116 | /* 88325 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 31117 | /* 88328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31118 | /* 88332 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31119 | /* 88336 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15038:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src) => (VPHADDUWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src) |
| 31120 | /* 88336 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUWDrr), |
| 31121 | /* 88339 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31122 | /* 88341 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31123 | /* 88343 */ GIR_RootConstrainSelectedInstOperands, |
| 31124 | /* 88344 */ // GIR_Coverage, 1541, |
| 31125 | /* 88344 */ GIR_EraseRootFromParent_Done, |
| 31126 | /* 88345 */ // Label 1913: @88345 |
| 31127 | /* 88345 */ GIM_Try, /*On fail goto*//*Label 1914*/ GIMT_Encode4(88381), // Rule ID 1543 // |
| 31128 | /* 88350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31129 | /* 88353 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddudq), |
| 31130 | /* 88358 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31131 | /* 88361 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31132 | /* 88364 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31133 | /* 88368 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31134 | /* 88372 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15037:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src) => (VPHADDUDQrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src) |
| 31135 | /* 88372 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUDQrr), |
| 31136 | /* 88375 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31137 | /* 88377 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31138 | /* 88379 */ GIR_RootConstrainSelectedInstOperands, |
| 31139 | /* 88380 */ // GIR_Coverage, 1543, |
| 31140 | /* 88380 */ GIR_EraseRootFromParent_Done, |
| 31141 | /* 88381 */ // Label 1914: @88381 |
| 31142 | /* 88381 */ GIM_Try, /*On fail goto*//*Label 1915*/ GIMT_Encode4(88417), // Rule ID 1545 // |
| 31143 | /* 88386 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31144 | /* 88389 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubw), |
| 31145 | /* 88394 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 31146 | /* 88397 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 31147 | /* 88400 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31148 | /* 88404 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31149 | /* 88408 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15036:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDUBWrr:{ *:[v8i16] } VR128:{ *:[v16i8] }:$src) |
| 31150 | /* 88408 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBWrr), |
| 31151 | /* 88411 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31152 | /* 88413 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31153 | /* 88415 */ GIR_RootConstrainSelectedInstOperands, |
| 31154 | /* 88416 */ // GIR_Coverage, 1545, |
| 31155 | /* 88416 */ GIR_EraseRootFromParent_Done, |
| 31156 | /* 88417 */ // Label 1915: @88417 |
| 31157 | /* 88417 */ GIM_Try, /*On fail goto*//*Label 1916*/ GIMT_Encode4(88453), // Rule ID 1547 // |
| 31158 | /* 88422 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31159 | /* 88425 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubq), |
| 31160 | /* 88430 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31161 | /* 88433 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 31162 | /* 88436 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31163 | /* 88440 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31164 | /* 88444 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15035:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDUBQrr:{ *:[v2i64] } VR128:{ *:[v16i8] }:$src) |
| 31165 | /* 88444 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBQrr), |
| 31166 | /* 88447 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31167 | /* 88449 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31168 | /* 88451 */ GIR_RootConstrainSelectedInstOperands, |
| 31169 | /* 88452 */ // GIR_Coverage, 1547, |
| 31170 | /* 88452 */ GIR_EraseRootFromParent_Done, |
| 31171 | /* 88453 */ // Label 1916: @88453 |
| 31172 | /* 88453 */ GIM_Try, /*On fail goto*//*Label 1917*/ GIMT_Encode4(88489), // Rule ID 1549 // |
| 31173 | /* 88458 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31174 | /* 88461 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubd), |
| 31175 | /* 88466 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31176 | /* 88469 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 31177 | /* 88472 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31178 | /* 88476 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31179 | /* 88480 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15034:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDUBDrr:{ *:[v4i32] } VR128:{ *:[v16i8] }:$src) |
| 31180 | /* 88480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBDrr), |
| 31181 | /* 88483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31182 | /* 88485 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31183 | /* 88487 */ GIR_RootConstrainSelectedInstOperands, |
| 31184 | /* 88488 */ // GIR_Coverage, 1549, |
| 31185 | /* 88488 */ GIR_EraseRootFromParent_Done, |
| 31186 | /* 88489 */ // Label 1917: @88489 |
| 31187 | /* 88489 */ GIM_Try, /*On fail goto*//*Label 1918*/ GIMT_Encode4(88525), // Rule ID 1551 // |
| 31188 | /* 88494 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31189 | /* 88497 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadddq), |
| 31190 | /* 88502 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31191 | /* 88505 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31192 | /* 88508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31193 | /* 88512 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31194 | /* 88516 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15033:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src) => (VPHADDDQrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src) |
| 31195 | /* 88516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDDQrr), |
| 31196 | /* 88519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31197 | /* 88521 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31198 | /* 88523 */ GIR_RootConstrainSelectedInstOperands, |
| 31199 | /* 88524 */ // GIR_Coverage, 1551, |
| 31200 | /* 88524 */ GIR_EraseRootFromParent_Done, |
| 31201 | /* 88525 */ // Label 1918: @88525 |
| 31202 | /* 88525 */ GIM_Try, /*On fail goto*//*Label 1919*/ GIMT_Encode4(88561), // Rule ID 1553 // |
| 31203 | /* 88530 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31204 | /* 88533 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbw), |
| 31205 | /* 88538 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 31206 | /* 88541 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 31207 | /* 88544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31208 | /* 88548 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31209 | /* 88552 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15032:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDBWrr:{ *:[v8i16] } VR128:{ *:[v16i8] }:$src) |
| 31210 | /* 88552 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBWrr), |
| 31211 | /* 88555 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31212 | /* 88557 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31213 | /* 88559 */ GIR_RootConstrainSelectedInstOperands, |
| 31214 | /* 88560 */ // GIR_Coverage, 1553, |
| 31215 | /* 88560 */ GIR_EraseRootFromParent_Done, |
| 31216 | /* 88561 */ // Label 1919: @88561 |
| 31217 | /* 88561 */ GIM_Try, /*On fail goto*//*Label 1920*/ GIMT_Encode4(88597), // Rule ID 1555 // |
| 31218 | /* 88566 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31219 | /* 88569 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbq), |
| 31220 | /* 88574 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31221 | /* 88577 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 31222 | /* 88580 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31223 | /* 88584 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31224 | /* 88588 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15031:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDBQrr:{ *:[v2i64] } VR128:{ *:[v16i8] }:$src) |
| 31225 | /* 88588 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBQrr), |
| 31226 | /* 88591 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31227 | /* 88593 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31228 | /* 88595 */ GIR_RootConstrainSelectedInstOperands, |
| 31229 | /* 88596 */ // GIR_Coverage, 1555, |
| 31230 | /* 88596 */ GIR_EraseRootFromParent_Done, |
| 31231 | /* 88597 */ // Label 1920: @88597 |
| 31232 | /* 88597 */ GIM_Try, /*On fail goto*//*Label 1921*/ GIMT_Encode4(88633), // Rule ID 1557 // |
| 31233 | /* 88602 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31234 | /* 88605 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbd), |
| 31235 | /* 88610 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31236 | /* 88613 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 31237 | /* 88616 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31238 | /* 88620 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31239 | /* 88624 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15030:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDBDrr:{ *:[v4i32] } VR128:{ *:[v16i8] }:$src) |
| 31240 | /* 88624 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBDrr), |
| 31241 | /* 88627 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31242 | /* 88629 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31243 | /* 88631 */ GIR_RootConstrainSelectedInstOperands, |
| 31244 | /* 88632 */ // GIR_Coverage, 1557, |
| 31245 | /* 88632 */ GIR_EraseRootFromParent_Done, |
| 31246 | /* 88633 */ // Label 1921: @88633 |
| 31247 | /* 88633 */ GIM_Try, /*On fail goto*//*Label 1922*/ GIMT_Encode4(88669), // Rule ID 1559 // |
| 31248 | /* 88638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31249 | /* 88641 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_ss), |
| 31250 | /* 88646 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31251 | /* 88649 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31252 | /* 88652 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31253 | /* 88656 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31254 | /* 88660 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15025:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (VFRCZSSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 31255 | /* 88660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZSSrr), |
| 31256 | /* 88663 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31257 | /* 88665 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31258 | /* 88667 */ GIR_RootConstrainSelectedInstOperands, |
| 31259 | /* 88668 */ // GIR_Coverage, 1559, |
| 31260 | /* 88668 */ GIR_EraseRootFromParent_Done, |
| 31261 | /* 88669 */ // Label 1922: @88669 |
| 31262 | /* 88669 */ GIM_Try, /*On fail goto*//*Label 1923*/ GIMT_Encode4(88705), // Rule ID 1563 // |
| 31263 | /* 88674 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31264 | /* 88677 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_ps), |
| 31265 | /* 88682 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31266 | /* 88685 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31267 | /* 88688 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31268 | /* 88692 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31269 | /* 88696 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15022:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (VFRCZPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 31270 | /* 88696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPSrr), |
| 31271 | /* 88699 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31272 | /* 88701 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31273 | /* 88703 */ GIR_RootConstrainSelectedInstOperands, |
| 31274 | /* 88704 */ // GIR_Coverage, 1563, |
| 31275 | /* 88704 */ GIR_EraseRootFromParent_Done, |
| 31276 | /* 88705 */ // Label 1923: @88705 |
| 31277 | /* 88705 */ GIM_Try, /*On fail goto*//*Label 1924*/ GIMT_Encode4(88741), // Rule ID 1565 // |
| 31278 | /* 88710 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31279 | /* 88713 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_ps_256), |
| 31280 | /* 88718 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 31281 | /* 88721 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 31282 | /* 88724 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31283 | /* 88728 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31284 | /* 88732 */ // (intrinsic_wo_chain:{ *:[v8f32] } 15023:{ *:[iPTR] }, VR256:{ *:[v8f32] }:$src) => (VFRCZPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src) |
| 31285 | /* 88732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPSYrr), |
| 31286 | /* 88735 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31287 | /* 88737 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31288 | /* 88739 */ GIR_RootConstrainSelectedInstOperands, |
| 31289 | /* 88740 */ // GIR_Coverage, 1565, |
| 31290 | /* 88740 */ GIR_EraseRootFromParent_Done, |
| 31291 | /* 88741 */ // Label 1924: @88741 |
| 31292 | /* 88741 */ GIM_Try, /*On fail goto*//*Label 1925*/ GIMT_Encode4(88777), // Rule ID 1567 // |
| 31293 | /* 88746 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31294 | /* 88749 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_sd), |
| 31295 | /* 88754 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31296 | /* 88757 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31297 | /* 88760 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31298 | /* 88764 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31299 | /* 88768 */ // (intrinsic_wo_chain:{ *:[v2f64] } 15024:{ *:[iPTR] }, VR128:{ *:[v2f64] }:$src) => (VFRCZSDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 31300 | /* 88768 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZSDrr), |
| 31301 | /* 88771 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31302 | /* 88773 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31303 | /* 88775 */ GIR_RootConstrainSelectedInstOperands, |
| 31304 | /* 88776 */ // GIR_Coverage, 1567, |
| 31305 | /* 88776 */ GIR_EraseRootFromParent_Done, |
| 31306 | /* 88777 */ // Label 1925: @88777 |
| 31307 | /* 88777 */ GIM_Try, /*On fail goto*//*Label 1926*/ GIMT_Encode4(88813), // Rule ID 1571 // |
| 31308 | /* 88782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31309 | /* 88785 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_pd), |
| 31310 | /* 88790 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31311 | /* 88793 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31312 | /* 88796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31313 | /* 88800 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31314 | /* 88804 */ // (intrinsic_wo_chain:{ *:[v2f64] } 15020:{ *:[iPTR] }, VR128:{ *:[v2f64] }:$src) => (VFRCZPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 31315 | /* 88804 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPDrr), |
| 31316 | /* 88807 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31317 | /* 88809 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31318 | /* 88811 */ GIR_RootConstrainSelectedInstOperands, |
| 31319 | /* 88812 */ // GIR_Coverage, 1571, |
| 31320 | /* 88812 */ GIR_EraseRootFromParent_Done, |
| 31321 | /* 88813 */ // Label 1926: @88813 |
| 31322 | /* 88813 */ GIM_Try, /*On fail goto*//*Label 1927*/ GIMT_Encode4(88849), // Rule ID 1573 // |
| 31323 | /* 88818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31324 | /* 88821 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_pd_256), |
| 31325 | /* 88826 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 31326 | /* 88829 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 31327 | /* 88832 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31328 | /* 88836 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31329 | /* 88840 */ // (intrinsic_wo_chain:{ *:[v4f64] } 15021:{ *:[iPTR] }, VR256:{ *:[v4f64] }:$src) => (VFRCZPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src) |
| 31330 | /* 88840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPDYrr), |
| 31331 | /* 88843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31332 | /* 88845 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31333 | /* 88847 */ GIR_RootConstrainSelectedInstOperands, |
| 31334 | /* 88848 */ // GIR_Coverage, 1573, |
| 31335 | /* 88848 */ GIR_EraseRootFromParent_Done, |
| 31336 | /* 88849 */ // Label 1927: @88849 |
| 31337 | /* 88849 */ GIM_Try, /*On fail goto*//*Label 1928*/ GIMT_Encode4(88885), // Rule ID 3363 // |
| 31338 | /* 88854 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX), |
| 31339 | /* 88857 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesimc), |
| 31340 | /* 88862 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31341 | /* 88865 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31342 | /* 88868 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31343 | /* 88872 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31344 | /* 88876 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13395:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1) => (VAESIMCrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1) |
| 31345 | /* 88876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESIMCrr), |
| 31346 | /* 88879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31347 | /* 88881 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31348 | /* 88883 */ GIR_RootConstrainSelectedInstOperands, |
| 31349 | /* 88884 */ // GIR_Coverage, 3363, |
| 31350 | /* 88884 */ GIR_EraseRootFromParent_Done, |
| 31351 | /* 88885 */ // Label 1928: @88885 |
| 31352 | /* 88885 */ GIM_Try, /*On fail goto*//*Label 1929*/ GIMT_Encode4(88921), // Rule ID 3365 // |
| 31353 | /* 88890 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 31354 | /* 88893 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesimc), |
| 31355 | /* 88898 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31356 | /* 88901 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31357 | /* 88904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31358 | /* 88908 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31359 | /* 88912 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13395:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1) => (AESIMCrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1) |
| 31360 | /* 88912 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESIMCrr), |
| 31361 | /* 88915 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31362 | /* 88917 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31363 | /* 88919 */ GIR_RootConstrainSelectedInstOperands, |
| 31364 | /* 88920 */ // GIR_Coverage, 3365, |
| 31365 | /* 88920 */ GIR_EraseRootFromParent_Done, |
| 31366 | /* 88921 */ // Label 1929: @88921 |
| 31367 | /* 88921 */ GIM_Try, /*On fail goto*//*Label 1930*/ GIMT_Encode4(88959), // Rule ID 18266 // |
| 31368 | /* 88926 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 31369 | /* 88929 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse_rsqrt_ss), |
| 31370 | /* 88934 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31371 | /* 88937 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31372 | /* 88940 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31373 | /* 88944 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31374 | /* 88948 */ // (intrinsic_wo_chain:{ *:[v4f32] } 14730:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (RSQRTSSr_Int:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src, VR128:{ *:[v4f32] }:$src) |
| 31375 | /* 88948 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RSQRTSSr_Int), |
| 31376 | /* 88951 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31377 | /* 88953 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31378 | /* 88955 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31379 | /* 88957 */ GIR_RootConstrainSelectedInstOperands, |
| 31380 | /* 88958 */ // GIR_Coverage, 18266, |
| 31381 | /* 88958 */ GIR_EraseRootFromParent_Done, |
| 31382 | /* 88959 */ // Label 1930: @88959 |
| 31383 | /* 88959 */ GIM_Try, /*On fail goto*//*Label 1931*/ GIMT_Encode4(88997), // Rule ID 18270 // |
| 31384 | /* 88964 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31385 | /* 88967 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse_rsqrt_ss), |
| 31386 | /* 88972 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31387 | /* 88975 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31388 | /* 88978 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31389 | /* 88982 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31390 | /* 88986 */ // (intrinsic_wo_chain:{ *:[v4f32] } 14730:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (VRSQRTSSr_Int:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src, VR128:{ *:[v4f32] }:$src) |
| 31391 | /* 88986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VRSQRTSSr_Int), |
| 31392 | /* 88989 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31393 | /* 88991 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31394 | /* 88993 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31395 | /* 88995 */ GIR_RootConstrainSelectedInstOperands, |
| 31396 | /* 88996 */ // GIR_Coverage, 18270, |
| 31397 | /* 88996 */ GIR_EraseRootFromParent_Done, |
| 31398 | /* 88997 */ // Label 1931: @88997 |
| 31399 | /* 88997 */ GIM_Try, /*On fail goto*//*Label 1932*/ GIMT_Encode4(89035), // Rule ID 18286 // |
| 31400 | /* 89002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 31401 | /* 89005 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse_rcp_ss), |
| 31402 | /* 89010 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31403 | /* 89013 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31404 | /* 89016 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31405 | /* 89020 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31406 | /* 89024 */ // (intrinsic_wo_chain:{ *:[v4f32] } 14728:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (RCPSSr_Int:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src, VR128:{ *:[v4f32] }:$src) |
| 31407 | /* 89024 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RCPSSr_Int), |
| 31408 | /* 89027 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31409 | /* 89029 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31410 | /* 89031 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31411 | /* 89033 */ GIR_RootConstrainSelectedInstOperands, |
| 31412 | /* 89034 */ // GIR_Coverage, 18286, |
| 31413 | /* 89034 */ GIR_EraseRootFromParent_Done, |
| 31414 | /* 89035 */ // Label 1932: @89035 |
| 31415 | /* 89035 */ GIM_Try, /*On fail goto*//*Label 1933*/ GIMT_Encode4(89073), // Rule ID 18290 // |
| 31416 | /* 89040 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31417 | /* 89043 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse_rcp_ss), |
| 31418 | /* 89048 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31419 | /* 89051 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31420 | /* 89054 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31421 | /* 89058 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31422 | /* 89062 */ // (intrinsic_wo_chain:{ *:[v4f32] } 14728:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (VRCPSSr_Int:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src, VR128:{ *:[v4f32] }:$src) |
| 31423 | /* 89062 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VRCPSSr_Int), |
| 31424 | /* 89065 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31425 | /* 89067 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31426 | /* 89069 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31427 | /* 89071 */ GIR_RootConstrainSelectedInstOperands, |
| 31428 | /* 89072 */ // GIR_Coverage, 18290, |
| 31429 | /* 89072 */ GIR_EraseRootFromParent_Done, |
| 31430 | /* 89073 */ // Label 1933: @89073 |
| 31431 | /* 89073 */ GIM_Reject, |
| 31432 | /* 89074 */ // Label 1886: @89074 |
| 31433 | /* 89074 */ GIM_Try, /*On fail goto*//*Label 1934*/ GIMT_Encode4(95855), |
| 31434 | /* 89079 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/4, |
| 31435 | /* 89082 */ GIM_Try, /*On fail goto*//*Label 1935*/ GIMT_Encode4(89154), // Rule ID 3368 // |
| 31436 | /* 89087 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX), |
| 31437 | /* 89090 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aeskeygenassist), |
| 31438 | /* 89095 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31439 | /* 89098 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31440 | /* 89101 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31441 | /* 89105 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 31442 | /* 89109 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31443 | /* 89113 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31444 | /* 89116 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31445 | /* 89120 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31446 | /* 89124 */ // MIs[0] src2 |
| 31447 | /* 89124 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 31448 | /* 89127 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31449 | /* 89129 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31450 | /* 89136 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13396:{ *:[iPTR] }, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i8] }):$src2) => (VAESKEYGENASSIST128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1, (timm:{ *:[i8] }):$src2) |
| 31451 | /* 89136 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESKEYGENASSIST128rm), |
| 31452 | /* 89139 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31453 | /* 89141 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 31454 | /* 89145 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 31455 | /* 89147 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31456 | /* 89152 */ GIR_RootConstrainSelectedInstOperands, |
| 31457 | /* 89153 */ // GIR_Coverage, 3368, |
| 31458 | /* 89153 */ GIR_EraseRootFromParent_Done, |
| 31459 | /* 89154 */ // Label 1935: @89154 |
| 31460 | /* 89154 */ GIM_Try, /*On fail goto*//*Label 1936*/ GIMT_Encode4(89230), // Rule ID 16790 // |
| 31461 | /* 89159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 31462 | /* 89162 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4128), |
| 31463 | /* 89167 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31464 | /* 89170 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31465 | /* 89173 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 31466 | /* 89176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31467 | /* 89180 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31468 | /* 89184 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31469 | /* 89188 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31470 | /* 89192 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31471 | /* 89195 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31472 | /* 89199 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31473 | /* 89203 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31474 | /* 89205 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31475 | /* 89212 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14999:{ *:[iPTR] }, VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4KEY4Z128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31476 | /* 89212 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Z128rm), |
| 31477 | /* 89215 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31478 | /* 89217 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31479 | /* 89219 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31480 | /* 89223 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31481 | /* 89228 */ GIR_RootConstrainSelectedInstOperands, |
| 31482 | /* 89229 */ // GIR_Coverage, 16790, |
| 31483 | /* 89229 */ GIR_EraseRootFromParent_Done, |
| 31484 | /* 89230 */ // Label 1936: @89230 |
| 31485 | /* 89230 */ GIM_Try, /*On fail goto*//*Label 1937*/ GIMT_Encode4(89306), // Rule ID 16792 // |
| 31486 | /* 89235 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 31487 | /* 89238 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4256), |
| 31488 | /* 89243 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 31489 | /* 89246 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 31490 | /* 89249 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 31491 | /* 89252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31492 | /* 89256 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31493 | /* 89260 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31494 | /* 89264 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31495 | /* 89268 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31496 | /* 89271 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31497 | /* 89275 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31498 | /* 89279 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31499 | /* 89281 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31500 | /* 89288 */ // (intrinsic_wo_chain:{ *:[v8i32] } 15000:{ *:[iPTR] }, VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4KEY4Z256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31501 | /* 89288 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Z256rm), |
| 31502 | /* 89291 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31503 | /* 89293 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31504 | /* 89295 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31505 | /* 89299 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31506 | /* 89304 */ GIR_RootConstrainSelectedInstOperands, |
| 31507 | /* 89305 */ // GIR_Coverage, 16792, |
| 31508 | /* 89305 */ GIR_EraseRootFromParent_Done, |
| 31509 | /* 89306 */ // Label 1937: @89306 |
| 31510 | /* 89306 */ GIM_Try, /*On fail goto*//*Label 1938*/ GIMT_Encode4(89382), // Rule ID 16796 // |
| 31511 | /* 89311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 31512 | /* 89314 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4128), |
| 31513 | /* 89319 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31514 | /* 89322 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31515 | /* 89325 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 31516 | /* 89328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31517 | /* 89332 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31518 | /* 89336 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31519 | /* 89340 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31520 | /* 89344 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31521 | /* 89347 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31522 | /* 89351 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31523 | /* 89355 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31524 | /* 89357 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31525 | /* 89364 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15002:{ *:[iPTR] }, VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4RNDS4Z128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31526 | /* 89364 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Z128rm), |
| 31527 | /* 89367 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31528 | /* 89369 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31529 | /* 89371 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31530 | /* 89375 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31531 | /* 89380 */ GIR_RootConstrainSelectedInstOperands, |
| 31532 | /* 89381 */ // GIR_Coverage, 16796, |
| 31533 | /* 89381 */ GIR_EraseRootFromParent_Done, |
| 31534 | /* 89382 */ // Label 1938: @89382 |
| 31535 | /* 89382 */ GIM_Try, /*On fail goto*//*Label 1939*/ GIMT_Encode4(89458), // Rule ID 16798 // |
| 31536 | /* 89387 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 31537 | /* 89390 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4256), |
| 31538 | /* 89395 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 31539 | /* 89398 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 31540 | /* 89401 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 31541 | /* 89404 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31542 | /* 89408 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31543 | /* 89412 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31544 | /* 89416 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31545 | /* 89420 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31546 | /* 89423 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31547 | /* 89427 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31548 | /* 89431 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31549 | /* 89433 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31550 | /* 89440 */ // (intrinsic_wo_chain:{ *:[v8i32] } 15003:{ *:[iPTR] }, VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4RNDS4Z256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31551 | /* 89440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Z256rm), |
| 31552 | /* 89443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31553 | /* 89445 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31554 | /* 89447 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31555 | /* 89451 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31556 | /* 89456 */ GIR_RootConstrainSelectedInstOperands, |
| 31557 | /* 89457 */ // GIR_Coverage, 16798, |
| 31558 | /* 89457 */ GIR_EraseRootFromParent_Done, |
| 31559 | /* 89458 */ // Label 1939: @89458 |
| 31560 | /* 89458 */ GIM_Try, /*On fail goto*//*Label 1940*/ GIMT_Encode4(89534), // Rule ID 3023 // |
| 31561 | /* 89463 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31562 | /* 89466 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_b_128), |
| 31563 | /* 89471 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 31564 | /* 89474 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 31565 | /* 89477 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 31566 | /* 89480 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31567 | /* 89484 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31568 | /* 89488 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31569 | /* 89492 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31570 | /* 89496 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31571 | /* 89499 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31572 | /* 89503 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31573 | /* 89507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31574 | /* 89509 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31575 | /* 89516 */ // (intrinsic_wo_chain:{ *:[v16i8] } 14868:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31576 | /* 89516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNBrm), |
| 31577 | /* 89519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31578 | /* 89521 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31579 | /* 89523 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31580 | /* 89527 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31581 | /* 89532 */ GIR_RootConstrainSelectedInstOperands, |
| 31582 | /* 89533 */ // GIR_Coverage, 3023, |
| 31583 | /* 89533 */ GIR_EraseRootFromParent_Done, |
| 31584 | /* 89534 */ // Label 1940: @89534 |
| 31585 | /* 89534 */ GIM_Try, /*On fail goto*//*Label 1941*/ GIMT_Encode4(89610), // Rule ID 3025 // |
| 31586 | /* 89539 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31587 | /* 89542 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_w_128), |
| 31588 | /* 89547 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 31589 | /* 89550 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 31590 | /* 89553 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 31591 | /* 89556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31592 | /* 89560 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31593 | /* 89564 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31594 | /* 89568 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31595 | /* 89572 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31596 | /* 89575 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31597 | /* 89579 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31598 | /* 89583 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31599 | /* 89585 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31600 | /* 89592 */ // (intrinsic_wo_chain:{ *:[v8i16] } 14872:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31601 | /* 89592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNWrm), |
| 31602 | /* 89595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31603 | /* 89597 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31604 | /* 89599 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31605 | /* 89603 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31606 | /* 89608 */ GIR_RootConstrainSelectedInstOperands, |
| 31607 | /* 89609 */ // GIR_Coverage, 3025, |
| 31608 | /* 89609 */ GIR_EraseRootFromParent_Done, |
| 31609 | /* 89610 */ // Label 1941: @89610 |
| 31610 | /* 89610 */ GIM_Try, /*On fail goto*//*Label 1942*/ GIMT_Encode4(89686), // Rule ID 3027 // |
| 31611 | /* 89615 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31612 | /* 89618 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_d_128), |
| 31613 | /* 89623 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31614 | /* 89626 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31615 | /* 89629 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 31616 | /* 89632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31617 | /* 89636 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31618 | /* 89640 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31619 | /* 89644 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31620 | /* 89648 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31621 | /* 89651 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31622 | /* 89655 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31623 | /* 89659 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31624 | /* 89661 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31625 | /* 89668 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14870:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31626 | /* 89668 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNDrm), |
| 31627 | /* 89671 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31628 | /* 89673 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31629 | /* 89675 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31630 | /* 89679 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31631 | /* 89684 */ GIR_RootConstrainSelectedInstOperands, |
| 31632 | /* 89685 */ // GIR_Coverage, 3027, |
| 31633 | /* 89685 */ GIR_EraseRootFromParent_Done, |
| 31634 | /* 89686 */ // Label 1942: @89686 |
| 31635 | /* 89686 */ GIM_Try, /*On fail goto*//*Label 1943*/ GIMT_Encode4(89762), // Rule ID 3029 // |
| 31636 | /* 89691 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31637 | /* 89694 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_phadd_sw_128), |
| 31638 | /* 89699 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 31639 | /* 89702 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 31640 | /* 89705 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 31641 | /* 89708 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31642 | /* 89712 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31643 | /* 89716 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31644 | /* 89720 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31645 | /* 89724 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31646 | /* 89727 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31647 | /* 89731 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31648 | /* 89735 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31649 | /* 89737 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31650 | /* 89744 */ // (intrinsic_wo_chain:{ *:[v8i16] } 14852:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31651 | /* 89744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDSWrm), |
| 31652 | /* 89747 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31653 | /* 89749 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31654 | /* 89751 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31655 | /* 89755 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31656 | /* 89760 */ GIR_RootConstrainSelectedInstOperands, |
| 31657 | /* 89761 */ // GIR_Coverage, 3029, |
| 31658 | /* 89761 */ GIR_EraseRootFromParent_Done, |
| 31659 | /* 89762 */ // Label 1943: @89762 |
| 31660 | /* 89762 */ GIM_Try, /*On fail goto*//*Label 1944*/ GIMT_Encode4(89838), // Rule ID 3031 // |
| 31661 | /* 89767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31662 | /* 89770 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_phsub_sw_128), |
| 31663 | /* 89775 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 31664 | /* 89778 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 31665 | /* 89781 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 31666 | /* 89784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31667 | /* 89788 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31668 | /* 89792 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31669 | /* 89796 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31670 | /* 89800 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31671 | /* 89803 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31672 | /* 89807 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31673 | /* 89811 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31674 | /* 89813 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31675 | /* 89820 */ // (intrinsic_wo_chain:{ *:[v8i16] } 14858:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHSUBSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31676 | /* 89820 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBSWrm), |
| 31677 | /* 89823 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31678 | /* 89825 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31679 | /* 89827 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31680 | /* 89831 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31681 | /* 89836 */ GIR_RootConstrainSelectedInstOperands, |
| 31682 | /* 89837 */ // GIR_Coverage, 3031, |
| 31683 | /* 89837 */ GIR_EraseRootFromParent_Done, |
| 31684 | /* 89838 */ // Label 1944: @89838 |
| 31685 | /* 89838 */ GIM_Try, /*On fail goto*//*Label 1945*/ GIMT_Encode4(89914), // Rule ID 3047 // |
| 31686 | /* 89843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 31687 | /* 89846 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_b), |
| 31688 | /* 89851 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s8, |
| 31689 | /* 89854 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 31690 | /* 89857 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 31691 | /* 89860 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31692 | /* 89864 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31693 | /* 89868 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31694 | /* 89872 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31695 | /* 89876 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31696 | /* 89879 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31697 | /* 89883 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31698 | /* 89887 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31699 | /* 89889 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31700 | /* 89896 */ // (intrinsic_wo_chain:{ *:[v32i8] } 13759:{ *:[iPTR] }, VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31701 | /* 89896 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNBYrm), |
| 31702 | /* 89899 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31703 | /* 89901 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31704 | /* 89903 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31705 | /* 89907 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31706 | /* 89912 */ GIR_RootConstrainSelectedInstOperands, |
| 31707 | /* 89913 */ // GIR_Coverage, 3047, |
| 31708 | /* 89913 */ GIR_EraseRootFromParent_Done, |
| 31709 | /* 89914 */ // Label 1945: @89914 |
| 31710 | /* 89914 */ GIM_Try, /*On fail goto*//*Label 1946*/ GIMT_Encode4(89990), // Rule ID 3049 // |
| 31711 | /* 89919 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 31712 | /* 89922 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_w), |
| 31713 | /* 89927 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s16, |
| 31714 | /* 89930 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 31715 | /* 89933 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 31716 | /* 89936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31717 | /* 89940 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31718 | /* 89944 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31719 | /* 89948 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31720 | /* 89952 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31721 | /* 89955 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31722 | /* 89959 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31723 | /* 89963 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31724 | /* 89965 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31725 | /* 89972 */ // (intrinsic_wo_chain:{ *:[v16i16] } 13761:{ *:[iPTR] }, VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31726 | /* 89972 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNWYrm), |
| 31727 | /* 89975 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31728 | /* 89977 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31729 | /* 89979 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31730 | /* 89983 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31731 | /* 89988 */ GIR_RootConstrainSelectedInstOperands, |
| 31732 | /* 89989 */ // GIR_Coverage, 3049, |
| 31733 | /* 89989 */ GIR_EraseRootFromParent_Done, |
| 31734 | /* 89990 */ // Label 1946: @89990 |
| 31735 | /* 89990 */ GIM_Try, /*On fail goto*//*Label 1947*/ GIMT_Encode4(90066), // Rule ID 3051 // |
| 31736 | /* 89995 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 31737 | /* 89998 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_d), |
| 31738 | /* 90003 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 31739 | /* 90006 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 31740 | /* 90009 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 31741 | /* 90012 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31742 | /* 90016 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31743 | /* 90020 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31744 | /* 90024 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31745 | /* 90028 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31746 | /* 90031 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31747 | /* 90035 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31748 | /* 90039 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31749 | /* 90041 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31750 | /* 90048 */ // (intrinsic_wo_chain:{ *:[v8i32] } 13760:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31751 | /* 90048 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNDYrm), |
| 31752 | /* 90051 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31753 | /* 90053 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31754 | /* 90055 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31755 | /* 90059 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31756 | /* 90064 */ GIR_RootConstrainSelectedInstOperands, |
| 31757 | /* 90065 */ // GIR_Coverage, 3051, |
| 31758 | /* 90065 */ GIR_EraseRootFromParent_Done, |
| 31759 | /* 90066 */ // Label 1947: @90066 |
| 31760 | /* 90066 */ GIM_Try, /*On fail goto*//*Label 1948*/ GIMT_Encode4(90142), // Rule ID 3053 // |
| 31761 | /* 90071 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 31762 | /* 90074 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_phadd_sw), |
| 31763 | /* 90079 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s16, |
| 31764 | /* 90082 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 31765 | /* 90085 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 31766 | /* 90088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31767 | /* 90092 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31768 | /* 90096 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31769 | /* 90100 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31770 | /* 90104 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31771 | /* 90107 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31772 | /* 90111 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31773 | /* 90115 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31774 | /* 90117 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31775 | /* 90124 */ // (intrinsic_wo_chain:{ *:[v16i16] } 13746:{ *:[iPTR] }, VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31776 | /* 90124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDSWYrm), |
| 31777 | /* 90127 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31778 | /* 90129 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31779 | /* 90131 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31780 | /* 90135 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31781 | /* 90140 */ GIR_RootConstrainSelectedInstOperands, |
| 31782 | /* 90141 */ // GIR_Coverage, 3053, |
| 31783 | /* 90141 */ GIR_EraseRootFromParent_Done, |
| 31784 | /* 90142 */ // Label 1948: @90142 |
| 31785 | /* 90142 */ GIM_Try, /*On fail goto*//*Label 1949*/ GIMT_Encode4(90218), // Rule ID 3055 // |
| 31786 | /* 90147 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 31787 | /* 90150 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_phsub_sw), |
| 31788 | /* 90155 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s16, |
| 31789 | /* 90158 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 31790 | /* 90161 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 31791 | /* 90164 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31792 | /* 90168 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31793 | /* 90172 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31794 | /* 90176 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31795 | /* 90180 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31796 | /* 90183 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31797 | /* 90187 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31798 | /* 90191 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31799 | /* 90193 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31800 | /* 90200 */ // (intrinsic_wo_chain:{ *:[v16i16] } 13749:{ *:[iPTR] }, VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHSUBSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31801 | /* 90200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBSWYrm), |
| 31802 | /* 90203 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31803 | /* 90205 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31804 | /* 90207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31805 | /* 90211 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31806 | /* 90216 */ GIR_RootConstrainSelectedInstOperands, |
| 31807 | /* 90217 */ // GIR_Coverage, 3055, |
| 31808 | /* 90217 */ GIR_EraseRootFromParent_Done, |
| 31809 | /* 90218 */ // Label 1949: @90218 |
| 31810 | /* 90218 */ GIM_Try, /*On fail goto*//*Label 1950*/ GIMT_Encode4(90294), // Rule ID 3310 // |
| 31811 | /* 90223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 31812 | /* 90226 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_8), |
| 31813 | /* 90231 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31814 | /* 90234 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31815 | /* 90237 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 31816 | /* 90240 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31817 | /* 90244 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31818 | /* 90248 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31819 | /* 90252 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31820 | /* 90256 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31821 | /* 90259 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31822 | /* 90263 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31823 | /* 90267 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31824 | /* 90269 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31825 | /* 90276 */ // (intrinsic_wo_chain:{ *:[i32] } 14826:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m8:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31826 | /* 90276 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m8), |
| 31827 | /* 90279 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31828 | /* 90281 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31829 | /* 90283 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31830 | /* 90287 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31831 | /* 90292 */ GIR_RootConstrainSelectedInstOperands, |
| 31832 | /* 90293 */ // GIR_Coverage, 3310, |
| 31833 | /* 90293 */ GIR_EraseRootFromParent_Done, |
| 31834 | /* 90294 */ // Label 1950: @90294 |
| 31835 | /* 90294 */ GIM_Try, /*On fail goto*//*Label 1951*/ GIMT_Encode4(90370), // Rule ID 3312 // |
| 31836 | /* 90299 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 31837 | /* 90302 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_16), |
| 31838 | /* 90307 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31839 | /* 90310 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31840 | /* 90313 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 31841 | /* 90316 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31842 | /* 90320 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31843 | /* 90324 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31844 | /* 90328 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31845 | /* 90332 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31846 | /* 90335 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31847 | /* 90339 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31848 | /* 90343 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31849 | /* 90345 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31850 | /* 90352 */ // (intrinsic_wo_chain:{ *:[i32] } 14824:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m16:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31851 | /* 90352 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m16), |
| 31852 | /* 90355 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31853 | /* 90357 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31854 | /* 90359 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31855 | /* 90363 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31856 | /* 90368 */ GIR_RootConstrainSelectedInstOperands, |
| 31857 | /* 90369 */ // GIR_Coverage, 3312, |
| 31858 | /* 90369 */ GIR_EraseRootFromParent_Done, |
| 31859 | /* 90370 */ // Label 1951: @90370 |
| 31860 | /* 90370 */ GIM_Try, /*On fail goto*//*Label 1952*/ GIMT_Encode4(90446), // Rule ID 3314 // |
| 31861 | /* 90375 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 31862 | /* 90378 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_32), |
| 31863 | /* 90383 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31864 | /* 90386 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31865 | /* 90389 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 31866 | /* 90392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31867 | /* 90396 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31868 | /* 90400 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31869 | /* 90404 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31870 | /* 90408 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31871 | /* 90411 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31872 | /* 90415 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31873 | /* 90419 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31874 | /* 90421 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31875 | /* 90428 */ // (intrinsic_wo_chain:{ *:[i32] } 14825:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m32:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31876 | /* 90428 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m32), |
| 31877 | /* 90431 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31878 | /* 90433 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31879 | /* 90435 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31880 | /* 90439 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31881 | /* 90444 */ GIR_RootConstrainSelectedInstOperands, |
| 31882 | /* 90445 */ // GIR_Coverage, 3314, |
| 31883 | /* 90445 */ GIR_EraseRootFromParent_Done, |
| 31884 | /* 90446 */ // Label 1952: @90446 |
| 31885 | /* 90446 */ GIM_Try, /*On fail goto*//*Label 1953*/ GIMT_Encode4(90522), // Rule ID 3316 // |
| 31886 | /* 90451 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 31887 | /* 90454 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_64_64), |
| 31888 | /* 90459 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 31889 | /* 90462 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 31890 | /* 90465 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 31891 | /* 90468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 31892 | /* 90472 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 31893 | /* 90476 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31894 | /* 90480 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31895 | /* 90484 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31896 | /* 90487 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31897 | /* 90491 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31898 | /* 90495 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31899 | /* 90497 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31900 | /* 90504 */ // (intrinsic_wo_chain:{ *:[i64] } 14827:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r64m64:{ *:[i64] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31901 | /* 90504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r64m64), |
| 31902 | /* 90507 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31903 | /* 90509 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31904 | /* 90511 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31905 | /* 90515 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31906 | /* 90520 */ GIR_RootConstrainSelectedInstOperands, |
| 31907 | /* 90521 */ // GIR_Coverage, 3316, |
| 31908 | /* 90521 */ GIR_EraseRootFromParent_Done, |
| 31909 | /* 90522 */ // Label 1953: @90522 |
| 31910 | /* 90522 */ GIM_Try, /*On fail goto*//*Label 1954*/ GIMT_Encode4(90598), // Rule ID 3318 // |
| 31911 | /* 90527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 31912 | /* 90530 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_8), |
| 31913 | /* 90535 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31914 | /* 90538 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31915 | /* 90541 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 31916 | /* 90544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31917 | /* 90548 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31918 | /* 90552 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31919 | /* 90556 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31920 | /* 90560 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31921 | /* 90563 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31922 | /* 90567 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31923 | /* 90571 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31924 | /* 90573 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31925 | /* 90580 */ // (intrinsic_wo_chain:{ *:[i32] } 14826:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m8_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31926 | /* 90580 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m8_EVEX), |
| 31927 | /* 90583 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31928 | /* 90585 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31929 | /* 90587 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31930 | /* 90591 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31931 | /* 90596 */ GIR_RootConstrainSelectedInstOperands, |
| 31932 | /* 90597 */ // GIR_Coverage, 3318, |
| 31933 | /* 90597 */ GIR_EraseRootFromParent_Done, |
| 31934 | /* 90598 */ // Label 1954: @90598 |
| 31935 | /* 90598 */ GIM_Try, /*On fail goto*//*Label 1955*/ GIMT_Encode4(90674), // Rule ID 3320 // |
| 31936 | /* 90603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 31937 | /* 90606 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_16), |
| 31938 | /* 90611 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31939 | /* 90614 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31940 | /* 90617 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 31941 | /* 90620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31942 | /* 90624 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31943 | /* 90628 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31944 | /* 90632 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31945 | /* 90636 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31946 | /* 90639 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31947 | /* 90643 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31948 | /* 90647 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31949 | /* 90649 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31950 | /* 90656 */ // (intrinsic_wo_chain:{ *:[i32] } 14824:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m16_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31951 | /* 90656 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m16_EVEX), |
| 31952 | /* 90659 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31953 | /* 90661 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31954 | /* 90663 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31955 | /* 90667 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31956 | /* 90672 */ GIR_RootConstrainSelectedInstOperands, |
| 31957 | /* 90673 */ // GIR_Coverage, 3320, |
| 31958 | /* 90673 */ GIR_EraseRootFromParent_Done, |
| 31959 | /* 90674 */ // Label 1955: @90674 |
| 31960 | /* 90674 */ GIM_Try, /*On fail goto*//*Label 1956*/ GIMT_Encode4(90750), // Rule ID 3322 // |
| 31961 | /* 90679 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 31962 | /* 90682 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_32), |
| 31963 | /* 90687 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31964 | /* 90690 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31965 | /* 90693 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 31966 | /* 90696 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31967 | /* 90700 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31968 | /* 90704 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31969 | /* 90708 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31970 | /* 90712 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31971 | /* 90715 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31972 | /* 90719 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31973 | /* 90723 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31974 | /* 90725 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31975 | /* 90732 */ // (intrinsic_wo_chain:{ *:[i32] } 14825:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m32_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31976 | /* 90732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m32_EVEX), |
| 31977 | /* 90735 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31978 | /* 90737 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31979 | /* 90739 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31980 | /* 90743 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31981 | /* 90748 */ GIR_RootConstrainSelectedInstOperands, |
| 31982 | /* 90749 */ // GIR_Coverage, 3322, |
| 31983 | /* 90749 */ GIR_EraseRootFromParent_Done, |
| 31984 | /* 90750 */ // Label 1956: @90750 |
| 31985 | /* 90750 */ GIM_Try, /*On fail goto*//*Label 1957*/ GIMT_Encode4(90826), // Rule ID 3324 // |
| 31986 | /* 90755 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 31987 | /* 90758 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_64_64), |
| 31988 | /* 90763 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 31989 | /* 90766 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 31990 | /* 90769 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 31991 | /* 90772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 31992 | /* 90776 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 31993 | /* 90780 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31994 | /* 90784 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31995 | /* 90788 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31996 | /* 90791 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31997 | /* 90795 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31998 | /* 90799 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31999 | /* 90801 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32000 | /* 90808 */ // (intrinsic_wo_chain:{ *:[i64] } 14827:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r64m64_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32001 | /* 90808 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r64m64_EVEX), |
| 32002 | /* 90811 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32003 | /* 90813 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32004 | /* 90815 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32005 | /* 90819 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32006 | /* 90824 */ GIR_RootConstrainSelectedInstOperands, |
| 32007 | /* 90825 */ // GIR_Coverage, 3324, |
| 32008 | /* 90825 */ GIR_EraseRootFromParent_Done, |
| 32009 | /* 90826 */ // Label 1957: @90826 |
| 32010 | /* 90826 */ GIM_Try, /*On fail goto*//*Label 1958*/ GIMT_Encode4(90902), // Rule ID 3340 // |
| 32011 | /* 90831 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 32012 | /* 90834 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc), |
| 32013 | /* 90839 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32014 | /* 90842 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32015 | /* 90845 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32016 | /* 90848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32017 | /* 90852 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32018 | /* 90856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32019 | /* 90860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32020 | /* 90864 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32021 | /* 90867 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32022 | /* 90871 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32023 | /* 90875 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32024 | /* 90877 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32025 | /* 90884 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13389:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32026 | /* 90884 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCrm), |
| 32027 | /* 90887 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32028 | /* 90889 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32029 | /* 90891 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32030 | /* 90895 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32031 | /* 90900 */ GIR_RootConstrainSelectedInstOperands, |
| 32032 | /* 90901 */ // GIR_Coverage, 3340, |
| 32033 | /* 90901 */ GIR_EraseRootFromParent_Done, |
| 32034 | /* 90902 */ // Label 1958: @90902 |
| 32035 | /* 90902 */ GIM_Try, /*On fail goto*//*Label 1959*/ GIMT_Encode4(90978), // Rule ID 3342 // |
| 32036 | /* 90907 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 32037 | /* 90910 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast), |
| 32038 | /* 90915 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32039 | /* 90918 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32040 | /* 90921 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32041 | /* 90924 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32042 | /* 90928 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32043 | /* 90932 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32044 | /* 90936 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32045 | /* 90940 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32046 | /* 90943 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32047 | /* 90947 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32048 | /* 90951 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32049 | /* 90953 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32050 | /* 90960 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13392:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCLASTrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32051 | /* 90960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTrm), |
| 32052 | /* 90963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32053 | /* 90965 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32054 | /* 90967 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32055 | /* 90971 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32056 | /* 90976 */ GIR_RootConstrainSelectedInstOperands, |
| 32057 | /* 90977 */ // GIR_Coverage, 3342, |
| 32058 | /* 90977 */ GIR_EraseRootFromParent_Done, |
| 32059 | /* 90978 */ // Label 1959: @90978 |
| 32060 | /* 90978 */ GIM_Try, /*On fail goto*//*Label 1960*/ GIMT_Encode4(91054), // Rule ID 3344 // |
| 32061 | /* 90983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 32062 | /* 90986 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec), |
| 32063 | /* 90991 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32064 | /* 90994 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32065 | /* 90997 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32066 | /* 91000 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32067 | /* 91004 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32068 | /* 91008 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32069 | /* 91012 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32070 | /* 91016 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32071 | /* 91019 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32072 | /* 91023 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32073 | /* 91027 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32074 | /* 91029 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32075 | /* 91036 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13383:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32076 | /* 91036 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECrm), |
| 32077 | /* 91039 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32078 | /* 91041 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32079 | /* 91043 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32080 | /* 91047 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32081 | /* 91052 */ GIR_RootConstrainSelectedInstOperands, |
| 32082 | /* 91053 */ // GIR_Coverage, 3344, |
| 32083 | /* 91053 */ GIR_EraseRootFromParent_Done, |
| 32084 | /* 91054 */ // Label 1960: @91054 |
| 32085 | /* 91054 */ GIM_Try, /*On fail goto*//*Label 1961*/ GIMT_Encode4(91130), // Rule ID 3346 // |
| 32086 | /* 91059 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 32087 | /* 91062 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast), |
| 32088 | /* 91067 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32089 | /* 91070 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32090 | /* 91073 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32091 | /* 91076 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32092 | /* 91080 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32093 | /* 91084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32094 | /* 91088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32095 | /* 91092 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32096 | /* 91095 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32097 | /* 91099 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32098 | /* 91103 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32099 | /* 91105 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32100 | /* 91112 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13386:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECLASTrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32101 | /* 91112 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTrm), |
| 32102 | /* 91115 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32103 | /* 91117 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32104 | /* 91119 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32105 | /* 91123 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32106 | /* 91128 */ GIR_RootConstrainSelectedInstOperands, |
| 32107 | /* 91129 */ // GIR_Coverage, 3346, |
| 32108 | /* 91129 */ GIR_EraseRootFromParent_Done, |
| 32109 | /* 91130 */ // Label 1961: @91130 |
| 32110 | /* 91130 */ GIM_Try, /*On fail goto*//*Label 1962*/ GIMT_Encode4(91206), // Rule ID 3348 // |
| 32111 | /* 91135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 32112 | /* 91138 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_256), |
| 32113 | /* 91143 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32114 | /* 91146 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32115 | /* 91149 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32116 | /* 91152 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32117 | /* 91156 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32118 | /* 91160 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32119 | /* 91164 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32120 | /* 91168 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32121 | /* 91171 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32122 | /* 91175 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32123 | /* 91179 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32124 | /* 91181 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32125 | /* 91188 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13390:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32126 | /* 91188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCYrm), |
| 32127 | /* 91191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32128 | /* 91193 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32129 | /* 91195 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32130 | /* 91199 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32131 | /* 91204 */ GIR_RootConstrainSelectedInstOperands, |
| 32132 | /* 91205 */ // GIR_Coverage, 3348, |
| 32133 | /* 91205 */ GIR_EraseRootFromParent_Done, |
| 32134 | /* 91206 */ // Label 1962: @91206 |
| 32135 | /* 91206 */ GIM_Try, /*On fail goto*//*Label 1963*/ GIMT_Encode4(91282), // Rule ID 3350 // |
| 32136 | /* 91211 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 32137 | /* 91214 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_256), |
| 32138 | /* 91219 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32139 | /* 91222 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32140 | /* 91225 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32141 | /* 91228 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32142 | /* 91232 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32143 | /* 91236 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32144 | /* 91240 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32145 | /* 91244 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32146 | /* 91247 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32147 | /* 91251 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32148 | /* 91255 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32149 | /* 91257 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32150 | /* 91264 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13393:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCLASTYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32151 | /* 91264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTYrm), |
| 32152 | /* 91267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32153 | /* 91269 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32154 | /* 91271 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32155 | /* 91275 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32156 | /* 91280 */ GIR_RootConstrainSelectedInstOperands, |
| 32157 | /* 91281 */ // GIR_Coverage, 3350, |
| 32158 | /* 91281 */ GIR_EraseRootFromParent_Done, |
| 32159 | /* 91282 */ // Label 1963: @91282 |
| 32160 | /* 91282 */ GIM_Try, /*On fail goto*//*Label 1964*/ GIMT_Encode4(91358), // Rule ID 3352 // |
| 32161 | /* 91287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 32162 | /* 91290 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_256), |
| 32163 | /* 91295 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32164 | /* 91298 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32165 | /* 91301 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32166 | /* 91304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32167 | /* 91308 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32168 | /* 91312 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32169 | /* 91316 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32170 | /* 91320 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32171 | /* 91323 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32172 | /* 91327 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32173 | /* 91331 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32174 | /* 91333 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32175 | /* 91340 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13384:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32176 | /* 91340 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECYrm), |
| 32177 | /* 91343 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32178 | /* 91345 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32179 | /* 91347 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32180 | /* 91351 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32181 | /* 91356 */ GIR_RootConstrainSelectedInstOperands, |
| 32182 | /* 91357 */ // GIR_Coverage, 3352, |
| 32183 | /* 91357 */ GIR_EraseRootFromParent_Done, |
| 32184 | /* 91358 */ // Label 1964: @91358 |
| 32185 | /* 91358 */ GIM_Try, /*On fail goto*//*Label 1965*/ GIMT_Encode4(91434), // Rule ID 3354 // |
| 32186 | /* 91363 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 32187 | /* 91366 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_256), |
| 32188 | /* 91371 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32189 | /* 91374 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32190 | /* 91377 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32191 | /* 91380 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32192 | /* 91384 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32193 | /* 91388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32194 | /* 91392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32195 | /* 91396 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32196 | /* 91399 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32197 | /* 91403 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32198 | /* 91407 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32199 | /* 91409 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32200 | /* 91416 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13387:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECLASTYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32201 | /* 91416 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTYrm), |
| 32202 | /* 91419 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32203 | /* 91421 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32204 | /* 91423 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32205 | /* 91427 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32206 | /* 91432 */ GIR_RootConstrainSelectedInstOperands, |
| 32207 | /* 91433 */ // GIR_Coverage, 3354, |
| 32208 | /* 91433 */ GIR_EraseRootFromParent_Done, |
| 32209 | /* 91434 */ // Label 1965: @91434 |
| 32210 | /* 91434 */ GIM_Try, /*On fail goto*//*Label 1966*/ GIMT_Encode4(91510), // Rule ID 3565 // |
| 32211 | /* 91439 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 32212 | /* 91442 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4128), |
| 32213 | /* 91447 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32214 | /* 91450 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32215 | /* 91453 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32216 | /* 91456 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32217 | /* 91460 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32218 | /* 91464 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32219 | /* 91468 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32220 | /* 91472 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32221 | /* 91475 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32222 | /* 91479 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32223 | /* 91483 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32224 | /* 91485 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32225 | /* 91492 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14999:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4KEY4rm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32226 | /* 91492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4rm), |
| 32227 | /* 91495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32228 | /* 91497 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32229 | /* 91499 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32230 | /* 91503 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32231 | /* 91508 */ GIR_RootConstrainSelectedInstOperands, |
| 32232 | /* 91509 */ // GIR_Coverage, 3565, |
| 32233 | /* 91509 */ GIR_EraseRootFromParent_Done, |
| 32234 | /* 91510 */ // Label 1966: @91510 |
| 32235 | /* 91510 */ GIM_Try, /*On fail goto*//*Label 1967*/ GIMT_Encode4(91586), // Rule ID 3567 // |
| 32236 | /* 91515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 32237 | /* 91518 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4256), |
| 32238 | /* 91523 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 32239 | /* 91526 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 32240 | /* 91529 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 32241 | /* 91532 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32242 | /* 91536 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32243 | /* 91540 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32244 | /* 91544 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32245 | /* 91548 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32246 | /* 91551 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32247 | /* 91555 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32248 | /* 91559 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32249 | /* 91561 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32250 | /* 91568 */ // (intrinsic_wo_chain:{ *:[v8i32] } 15000:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4KEY4Yrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32251 | /* 91568 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Yrm), |
| 32252 | /* 91571 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32253 | /* 91573 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32254 | /* 91575 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32255 | /* 91579 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32256 | /* 91584 */ GIR_RootConstrainSelectedInstOperands, |
| 32257 | /* 91585 */ // GIR_Coverage, 3567, |
| 32258 | /* 91585 */ GIR_EraseRootFromParent_Done, |
| 32259 | /* 91586 */ // Label 1967: @91586 |
| 32260 | /* 91586 */ GIM_Try, /*On fail goto*//*Label 1968*/ GIMT_Encode4(91662), // Rule ID 3569 // |
| 32261 | /* 91591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 32262 | /* 91594 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4128), |
| 32263 | /* 91599 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32264 | /* 91602 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32265 | /* 91605 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32266 | /* 91608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32267 | /* 91612 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32268 | /* 91616 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32269 | /* 91620 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32270 | /* 91624 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32271 | /* 91627 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32272 | /* 91631 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32273 | /* 91635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32274 | /* 91637 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32275 | /* 91644 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15002:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4RNDS4rm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32276 | /* 91644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4rm), |
| 32277 | /* 91647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32278 | /* 91649 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32279 | /* 91651 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32280 | /* 91655 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32281 | /* 91660 */ GIR_RootConstrainSelectedInstOperands, |
| 32282 | /* 91661 */ // GIR_Coverage, 3569, |
| 32283 | /* 91661 */ GIR_EraseRootFromParent_Done, |
| 32284 | /* 91662 */ // Label 1968: @91662 |
| 32285 | /* 91662 */ GIM_Try, /*On fail goto*//*Label 1969*/ GIMT_Encode4(91738), // Rule ID 3571 // |
| 32286 | /* 91667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 32287 | /* 91670 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4256), |
| 32288 | /* 91675 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 32289 | /* 91678 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 32290 | /* 91681 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 32291 | /* 91684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32292 | /* 91688 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32293 | /* 91692 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32294 | /* 91696 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32295 | /* 91700 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32296 | /* 91703 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32297 | /* 91707 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32298 | /* 91711 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32299 | /* 91713 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32300 | /* 91720 */ // (intrinsic_wo_chain:{ *:[v8i32] } 15003:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4RNDS4Yrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32301 | /* 91720 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Yrm), |
| 32302 | /* 91723 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32303 | /* 91725 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32304 | /* 91727 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32305 | /* 91731 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32306 | /* 91736 */ GIR_RootConstrainSelectedInstOperands, |
| 32307 | /* 91737 */ // GIR_Coverage, 3571, |
| 32308 | /* 91737 */ GIR_EraseRootFromParent_Done, |
| 32309 | /* 91738 */ // Label 1969: @91738 |
| 32310 | /* 91738 */ GIM_Try, /*On fail goto*//*Label 1970*/ GIMT_Encode4(91814), // Rule ID 14061 // |
| 32311 | /* 91743 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32312 | /* 91746 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc), |
| 32313 | /* 91751 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32314 | /* 91754 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32315 | /* 91757 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32316 | /* 91760 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32317 | /* 91764 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32318 | /* 91768 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32319 | /* 91772 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32320 | /* 91776 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32321 | /* 91779 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32322 | /* 91783 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32323 | /* 91787 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32324 | /* 91789 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32325 | /* 91796 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13389:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32326 | /* 91796 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZ128rm), |
| 32327 | /* 91799 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32328 | /* 91801 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32329 | /* 91803 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32330 | /* 91807 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32331 | /* 91812 */ GIR_RootConstrainSelectedInstOperands, |
| 32332 | /* 91813 */ // GIR_Coverage, 14061, |
| 32333 | /* 91813 */ GIR_EraseRootFromParent_Done, |
| 32334 | /* 91814 */ // Label 1970: @91814 |
| 32335 | /* 91814 */ GIM_Try, /*On fail goto*//*Label 1971*/ GIMT_Encode4(91890), // Rule ID 14063 // |
| 32336 | /* 91819 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32337 | /* 91822 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_256), |
| 32338 | /* 91827 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32339 | /* 91830 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32340 | /* 91833 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32341 | /* 91836 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32342 | /* 91840 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32343 | /* 91844 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32344 | /* 91848 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32345 | /* 91852 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32346 | /* 91855 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32347 | /* 91859 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32348 | /* 91863 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32349 | /* 91865 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32350 | /* 91872 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13390:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32351 | /* 91872 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZ256rm), |
| 32352 | /* 91875 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32353 | /* 91877 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32354 | /* 91879 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32355 | /* 91883 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32356 | /* 91888 */ GIR_RootConstrainSelectedInstOperands, |
| 32357 | /* 91889 */ // GIR_Coverage, 14063, |
| 32358 | /* 91889 */ GIR_EraseRootFromParent_Done, |
| 32359 | /* 91890 */ // Label 1971: @91890 |
| 32360 | /* 91890 */ GIM_Try, /*On fail goto*//*Label 1972*/ GIMT_Encode4(91966), // Rule ID 14065 // |
| 32361 | /* 91895 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 32362 | /* 91898 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_512), |
| 32363 | /* 91903 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 32364 | /* 91906 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 32365 | /* 91909 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 32366 | /* 91912 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32367 | /* 91916 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32368 | /* 91920 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32369 | /* 91924 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32370 | /* 91928 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32371 | /* 91931 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32372 | /* 91935 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32373 | /* 91939 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32374 | /* 91941 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32375 | /* 91948 */ // (intrinsic_wo_chain:{ *:[v8i64] } 13391:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32376 | /* 91948 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZrm), |
| 32377 | /* 91951 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32378 | /* 91953 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32379 | /* 91955 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32380 | /* 91959 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32381 | /* 91964 */ GIR_RootConstrainSelectedInstOperands, |
| 32382 | /* 91965 */ // GIR_Coverage, 14065, |
| 32383 | /* 91965 */ GIR_EraseRootFromParent_Done, |
| 32384 | /* 91966 */ // Label 1972: @91966 |
| 32385 | /* 91966 */ GIM_Try, /*On fail goto*//*Label 1973*/ GIMT_Encode4(92042), // Rule ID 14067 // |
| 32386 | /* 91971 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32387 | /* 91974 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast), |
| 32388 | /* 91979 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32389 | /* 91982 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32390 | /* 91985 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32391 | /* 91988 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32392 | /* 91992 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32393 | /* 91996 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32394 | /* 92000 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32395 | /* 92004 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32396 | /* 92007 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32397 | /* 92011 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32398 | /* 92015 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32399 | /* 92017 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32400 | /* 92024 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13392:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCLASTZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32401 | /* 92024 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZ128rm), |
| 32402 | /* 92027 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32403 | /* 92029 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32404 | /* 92031 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32405 | /* 92035 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32406 | /* 92040 */ GIR_RootConstrainSelectedInstOperands, |
| 32407 | /* 92041 */ // GIR_Coverage, 14067, |
| 32408 | /* 92041 */ GIR_EraseRootFromParent_Done, |
| 32409 | /* 92042 */ // Label 1973: @92042 |
| 32410 | /* 92042 */ GIM_Try, /*On fail goto*//*Label 1974*/ GIMT_Encode4(92118), // Rule ID 14069 // |
| 32411 | /* 92047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32412 | /* 92050 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_256), |
| 32413 | /* 92055 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32414 | /* 92058 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32415 | /* 92061 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32416 | /* 92064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32417 | /* 92068 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32418 | /* 92072 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32419 | /* 92076 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32420 | /* 92080 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32421 | /* 92083 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32422 | /* 92087 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32423 | /* 92091 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32424 | /* 92093 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32425 | /* 92100 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13393:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCLASTZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32426 | /* 92100 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZ256rm), |
| 32427 | /* 92103 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32428 | /* 92105 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32429 | /* 92107 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32430 | /* 92111 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32431 | /* 92116 */ GIR_RootConstrainSelectedInstOperands, |
| 32432 | /* 92117 */ // GIR_Coverage, 14069, |
| 32433 | /* 92117 */ GIR_EraseRootFromParent_Done, |
| 32434 | /* 92118 */ // Label 1974: @92118 |
| 32435 | /* 92118 */ GIM_Try, /*On fail goto*//*Label 1975*/ GIMT_Encode4(92194), // Rule ID 14071 // |
| 32436 | /* 92123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 32437 | /* 92126 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_512), |
| 32438 | /* 92131 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 32439 | /* 92134 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 32440 | /* 92137 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 32441 | /* 92140 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32442 | /* 92144 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32443 | /* 92148 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32444 | /* 92152 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32445 | /* 92156 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32446 | /* 92159 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32447 | /* 92163 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32448 | /* 92167 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32449 | /* 92169 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32450 | /* 92176 */ // (intrinsic_wo_chain:{ *:[v8i64] } 13394:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCLASTZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32451 | /* 92176 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZrm), |
| 32452 | /* 92179 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32453 | /* 92181 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32454 | /* 92183 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32455 | /* 92187 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32456 | /* 92192 */ GIR_RootConstrainSelectedInstOperands, |
| 32457 | /* 92193 */ // GIR_Coverage, 14071, |
| 32458 | /* 92193 */ GIR_EraseRootFromParent_Done, |
| 32459 | /* 92194 */ // Label 1975: @92194 |
| 32460 | /* 92194 */ GIM_Try, /*On fail goto*//*Label 1976*/ GIMT_Encode4(92270), // Rule ID 14073 // |
| 32461 | /* 92199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32462 | /* 92202 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec), |
| 32463 | /* 92207 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32464 | /* 92210 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32465 | /* 92213 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32466 | /* 92216 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32467 | /* 92220 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32468 | /* 92224 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32469 | /* 92228 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32470 | /* 92232 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32471 | /* 92235 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32472 | /* 92239 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32473 | /* 92243 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32474 | /* 92245 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32475 | /* 92252 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13383:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32476 | /* 92252 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZ128rm), |
| 32477 | /* 92255 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32478 | /* 92257 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32479 | /* 92259 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32480 | /* 92263 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32481 | /* 92268 */ GIR_RootConstrainSelectedInstOperands, |
| 32482 | /* 92269 */ // GIR_Coverage, 14073, |
| 32483 | /* 92269 */ GIR_EraseRootFromParent_Done, |
| 32484 | /* 92270 */ // Label 1976: @92270 |
| 32485 | /* 92270 */ GIM_Try, /*On fail goto*//*Label 1977*/ GIMT_Encode4(92346), // Rule ID 14075 // |
| 32486 | /* 92275 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32487 | /* 92278 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_256), |
| 32488 | /* 92283 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32489 | /* 92286 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32490 | /* 92289 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32491 | /* 92292 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32492 | /* 92296 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32493 | /* 92300 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32494 | /* 92304 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32495 | /* 92308 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32496 | /* 92311 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32497 | /* 92315 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32498 | /* 92319 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32499 | /* 92321 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32500 | /* 92328 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13384:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32501 | /* 92328 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZ256rm), |
| 32502 | /* 92331 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32503 | /* 92333 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32504 | /* 92335 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32505 | /* 92339 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32506 | /* 92344 */ GIR_RootConstrainSelectedInstOperands, |
| 32507 | /* 92345 */ // GIR_Coverage, 14075, |
| 32508 | /* 92345 */ GIR_EraseRootFromParent_Done, |
| 32509 | /* 92346 */ // Label 1977: @92346 |
| 32510 | /* 92346 */ GIM_Try, /*On fail goto*//*Label 1978*/ GIMT_Encode4(92422), // Rule ID 14077 // |
| 32511 | /* 92351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 32512 | /* 92354 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_512), |
| 32513 | /* 92359 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 32514 | /* 92362 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 32515 | /* 92365 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 32516 | /* 92368 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32517 | /* 92372 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32518 | /* 92376 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32519 | /* 92380 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32520 | /* 92384 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32521 | /* 92387 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32522 | /* 92391 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32523 | /* 92395 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32524 | /* 92397 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32525 | /* 92404 */ // (intrinsic_wo_chain:{ *:[v8i64] } 13385:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32526 | /* 92404 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZrm), |
| 32527 | /* 92407 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32528 | /* 92409 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32529 | /* 92411 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32530 | /* 92415 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32531 | /* 92420 */ GIR_RootConstrainSelectedInstOperands, |
| 32532 | /* 92421 */ // GIR_Coverage, 14077, |
| 32533 | /* 92421 */ GIR_EraseRootFromParent_Done, |
| 32534 | /* 92422 */ // Label 1978: @92422 |
| 32535 | /* 92422 */ GIM_Try, /*On fail goto*//*Label 1979*/ GIMT_Encode4(92498), // Rule ID 14079 // |
| 32536 | /* 92427 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32537 | /* 92430 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast), |
| 32538 | /* 92435 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32539 | /* 92438 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32540 | /* 92441 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32541 | /* 92444 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32542 | /* 92448 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32543 | /* 92452 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32544 | /* 92456 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32545 | /* 92460 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32546 | /* 92463 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32547 | /* 92467 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32548 | /* 92471 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32549 | /* 92473 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32550 | /* 92480 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13386:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECLASTZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32551 | /* 92480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZ128rm), |
| 32552 | /* 92483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32553 | /* 92485 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32554 | /* 92487 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32555 | /* 92491 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32556 | /* 92496 */ GIR_RootConstrainSelectedInstOperands, |
| 32557 | /* 92497 */ // GIR_Coverage, 14079, |
| 32558 | /* 92497 */ GIR_EraseRootFromParent_Done, |
| 32559 | /* 92498 */ // Label 1979: @92498 |
| 32560 | /* 92498 */ GIM_Try, /*On fail goto*//*Label 1980*/ GIMT_Encode4(92574), // Rule ID 14081 // |
| 32561 | /* 92503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32562 | /* 92506 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_256), |
| 32563 | /* 92511 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32564 | /* 92514 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32565 | /* 92517 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32566 | /* 92520 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32567 | /* 92524 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32568 | /* 92528 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32569 | /* 92532 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32570 | /* 92536 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32571 | /* 92539 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32572 | /* 92543 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32573 | /* 92547 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32574 | /* 92549 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32575 | /* 92556 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13387:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECLASTZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32576 | /* 92556 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZ256rm), |
| 32577 | /* 92559 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32578 | /* 92561 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32579 | /* 92563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32580 | /* 92567 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32581 | /* 92572 */ GIR_RootConstrainSelectedInstOperands, |
| 32582 | /* 92573 */ // GIR_Coverage, 14081, |
| 32583 | /* 92573 */ GIR_EraseRootFromParent_Done, |
| 32584 | /* 92574 */ // Label 1980: @92574 |
| 32585 | /* 92574 */ GIM_Try, /*On fail goto*//*Label 1981*/ GIMT_Encode4(92650), // Rule ID 14083 // |
| 32586 | /* 92579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 32587 | /* 92582 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_512), |
| 32588 | /* 92587 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 32589 | /* 92590 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 32590 | /* 92593 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 32591 | /* 92596 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32592 | /* 92600 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32593 | /* 92604 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32594 | /* 92608 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32595 | /* 92612 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32596 | /* 92615 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32597 | /* 92619 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32598 | /* 92623 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32599 | /* 92625 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32600 | /* 92632 */ // (intrinsic_wo_chain:{ *:[v8i64] } 13388:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECLASTZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32601 | /* 92632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZrm), |
| 32602 | /* 92635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32603 | /* 92637 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32604 | /* 92639 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32605 | /* 92643 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32606 | /* 92648 */ GIR_RootConstrainSelectedInstOperands, |
| 32607 | /* 92649 */ // GIR_Coverage, 14083, |
| 32608 | /* 92649 */ GIR_EraseRootFromParent_Done, |
| 32609 | /* 92650 */ // Label 1981: @92650 |
| 32610 | /* 92650 */ GIM_Try, /*On fail goto*//*Label 1982*/ GIMT_Encode4(92726), // Rule ID 16794 // |
| 32611 | /* 92655 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_512_HasSM4), |
| 32612 | /* 92658 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4512), |
| 32613 | /* 92663 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 32614 | /* 92666 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 32615 | /* 92669 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 32616 | /* 92672 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32617 | /* 92676 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32618 | /* 92680 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32619 | /* 92684 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32620 | /* 92688 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32621 | /* 92691 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32622 | /* 92695 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32623 | /* 92699 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32624 | /* 92701 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32625 | /* 92708 */ // (intrinsic_wo_chain:{ *:[v16i32] } 15001:{ *:[iPTR] }, VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4KEY4Zrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32626 | /* 92708 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Zrm), |
| 32627 | /* 92711 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32628 | /* 92713 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32629 | /* 92715 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32630 | /* 92719 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32631 | /* 92724 */ GIR_RootConstrainSelectedInstOperands, |
| 32632 | /* 92725 */ // GIR_Coverage, 16794, |
| 32633 | /* 92725 */ GIR_EraseRootFromParent_Done, |
| 32634 | /* 92726 */ // Label 1982: @92726 |
| 32635 | /* 92726 */ GIM_Try, /*On fail goto*//*Label 1983*/ GIMT_Encode4(92802), // Rule ID 16800 // |
| 32636 | /* 92731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_512_HasSM4), |
| 32637 | /* 92734 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4512), |
| 32638 | /* 92739 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 32639 | /* 92742 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 32640 | /* 92745 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 32641 | /* 92748 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32642 | /* 92752 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32643 | /* 92756 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32644 | /* 92760 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32645 | /* 92764 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32646 | /* 92767 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32647 | /* 92771 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32648 | /* 92775 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32649 | /* 92777 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32650 | /* 92784 */ // (intrinsic_wo_chain:{ *:[v16i32] } 15004:{ *:[iPTR] }, VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4RNDS4Zrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32651 | /* 92784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Zrm), |
| 32652 | /* 92787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32653 | /* 92789 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32654 | /* 92791 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32655 | /* 92795 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32656 | /* 92800 */ GIR_RootConstrainSelectedInstOperands, |
| 32657 | /* 92801 */ // GIR_Coverage, 16800, |
| 32658 | /* 92801 */ GIR_EraseRootFromParent_Done, |
| 32659 | /* 92802 */ // Label 1983: @92802 |
| 32660 | /* 92802 */ GIM_Try, /*On fail goto*//*Label 1984*/ GIMT_Encode4(92843), // Rule ID 3367 // |
| 32661 | /* 92807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX), |
| 32662 | /* 92810 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aeskeygenassist), |
| 32663 | /* 92815 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32664 | /* 92818 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32665 | /* 92821 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32666 | /* 92825 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32667 | /* 92829 */ // MIs[0] src2 |
| 32668 | /* 92829 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 32669 | /* 92832 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13396:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (timm:{ *:[i8] }):$src2) => (VAESKEYGENASSIST128rr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (timm:{ *:[i8] }):$src2) |
| 32670 | /* 92832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESKEYGENASSIST128rr), |
| 32671 | /* 92835 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32672 | /* 92837 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32673 | /* 92839 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32674 | /* 92841 */ GIR_RootConstrainSelectedInstOperands, |
| 32675 | /* 92842 */ // GIR_Coverage, 3367, |
| 32676 | /* 92842 */ GIR_EraseRootFromParent_Done, |
| 32677 | /* 92843 */ // Label 1984: @92843 |
| 32678 | /* 92843 */ GIM_Try, /*On fail goto*//*Label 1985*/ GIMT_Encode4(92884), // Rule ID 3369 // |
| 32679 | /* 92848 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 32680 | /* 92851 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aeskeygenassist), |
| 32681 | /* 92856 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32682 | /* 92859 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32683 | /* 92862 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32684 | /* 92866 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32685 | /* 92870 */ // MIs[0] src2 |
| 32686 | /* 92870 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 32687 | /* 92873 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13396:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (timm:{ *:[i8] }):$src2) => (AESKEYGENASSIST128rr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (timm:{ *:[i8] }):$src2) |
| 32688 | /* 92873 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESKEYGENASSIST128rr), |
| 32689 | /* 92876 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32690 | /* 92878 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32691 | /* 92880 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32692 | /* 92882 */ GIR_RootConstrainSelectedInstOperands, |
| 32693 | /* 92883 */ // GIR_Coverage, 3369, |
| 32694 | /* 92883 */ GIR_EraseRootFromParent_Done, |
| 32695 | /* 92884 */ // Label 1985: @92884 |
| 32696 | /* 92884 */ GIM_Try, /*On fail goto*//*Label 1986*/ GIMT_Encode4(92929), // Rule ID 16789 // |
| 32697 | /* 92889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 32698 | /* 92892 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4128), |
| 32699 | /* 92897 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32700 | /* 92900 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32701 | /* 92903 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32702 | /* 92906 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32703 | /* 92910 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32704 | /* 92914 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32705 | /* 92918 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14999:{ *:[iPTR] }, VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VSM4KEY4Z128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 32706 | /* 92918 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Z128rr), |
| 32707 | /* 92921 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32708 | /* 92923 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32709 | /* 92925 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32710 | /* 92927 */ GIR_RootConstrainSelectedInstOperands, |
| 32711 | /* 92928 */ // GIR_Coverage, 16789, |
| 32712 | /* 92928 */ GIR_EraseRootFromParent_Done, |
| 32713 | /* 92929 */ // Label 1986: @92929 |
| 32714 | /* 92929 */ GIM_Try, /*On fail goto*//*Label 1987*/ GIMT_Encode4(92974), // Rule ID 16791 // |
| 32715 | /* 92934 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 32716 | /* 92937 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4256), |
| 32717 | /* 92942 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 32718 | /* 92945 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 32719 | /* 92948 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 32720 | /* 92951 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32721 | /* 92955 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32722 | /* 92959 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32723 | /* 92963 */ // (intrinsic_wo_chain:{ *:[v8i32] } 15000:{ *:[iPTR] }, VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VSM4KEY4Z256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 32724 | /* 92963 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Z256rr), |
| 32725 | /* 92966 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32726 | /* 92968 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32727 | /* 92970 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32728 | /* 92972 */ GIR_RootConstrainSelectedInstOperands, |
| 32729 | /* 92973 */ // GIR_Coverage, 16791, |
| 32730 | /* 92973 */ GIR_EraseRootFromParent_Done, |
| 32731 | /* 92974 */ // Label 1987: @92974 |
| 32732 | /* 92974 */ GIM_Try, /*On fail goto*//*Label 1988*/ GIMT_Encode4(93019), // Rule ID 16795 // |
| 32733 | /* 92979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 32734 | /* 92982 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4128), |
| 32735 | /* 92987 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32736 | /* 92990 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32737 | /* 92993 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32738 | /* 92996 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32739 | /* 93000 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32740 | /* 93004 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32741 | /* 93008 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15002:{ *:[iPTR] }, VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VSM4RNDS4Z128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 32742 | /* 93008 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Z128rr), |
| 32743 | /* 93011 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32744 | /* 93013 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32745 | /* 93015 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32746 | /* 93017 */ GIR_RootConstrainSelectedInstOperands, |
| 32747 | /* 93018 */ // GIR_Coverage, 16795, |
| 32748 | /* 93018 */ GIR_EraseRootFromParent_Done, |
| 32749 | /* 93019 */ // Label 1988: @93019 |
| 32750 | /* 93019 */ GIM_Try, /*On fail goto*//*Label 1989*/ GIMT_Encode4(93064), // Rule ID 16797 // |
| 32751 | /* 93024 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 32752 | /* 93027 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4256), |
| 32753 | /* 93032 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 32754 | /* 93035 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 32755 | /* 93038 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 32756 | /* 93041 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32757 | /* 93045 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32758 | /* 93049 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32759 | /* 93053 */ // (intrinsic_wo_chain:{ *:[v8i32] } 15003:{ *:[iPTR] }, VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VSM4RNDS4Z256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 32760 | /* 93053 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Z256rr), |
| 32761 | /* 93056 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32762 | /* 93058 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32763 | /* 93060 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32764 | /* 93062 */ GIR_RootConstrainSelectedInstOperands, |
| 32765 | /* 93063 */ // GIR_Coverage, 16797, |
| 32766 | /* 93063 */ GIR_EraseRootFromParent_Done, |
| 32767 | /* 93064 */ // Label 1989: @93064 |
| 32768 | /* 93064 */ GIM_Try, /*On fail goto*//*Label 1990*/ GIMT_Encode4(93109), // Rule ID 3022 // |
| 32769 | /* 93069 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 32770 | /* 93072 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_b_128), |
| 32771 | /* 93077 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 32772 | /* 93080 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 32773 | /* 93083 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 32774 | /* 93086 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32775 | /* 93090 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32776 | /* 93094 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32777 | /* 93098 */ // (intrinsic_wo_chain:{ *:[v16i8] } 14868:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPSIGNBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 32778 | /* 93098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNBrr), |
| 32779 | /* 93101 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32780 | /* 93103 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32781 | /* 93105 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32782 | /* 93107 */ GIR_RootConstrainSelectedInstOperands, |
| 32783 | /* 93108 */ // GIR_Coverage, 3022, |
| 32784 | /* 93108 */ GIR_EraseRootFromParent_Done, |
| 32785 | /* 93109 */ // Label 1990: @93109 |
| 32786 | /* 93109 */ GIM_Try, /*On fail goto*//*Label 1991*/ GIMT_Encode4(93154), // Rule ID 3024 // |
| 32787 | /* 93114 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 32788 | /* 93117 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_w_128), |
| 32789 | /* 93122 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 32790 | /* 93125 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 32791 | /* 93128 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 32792 | /* 93131 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32793 | /* 93135 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32794 | /* 93139 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32795 | /* 93143 */ // (intrinsic_wo_chain:{ *:[v8i16] } 14872:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPSIGNWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 32796 | /* 93143 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNWrr), |
| 32797 | /* 93146 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32798 | /* 93148 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32799 | /* 93150 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32800 | /* 93152 */ GIR_RootConstrainSelectedInstOperands, |
| 32801 | /* 93153 */ // GIR_Coverage, 3024, |
| 32802 | /* 93153 */ GIR_EraseRootFromParent_Done, |
| 32803 | /* 93154 */ // Label 1991: @93154 |
| 32804 | /* 93154 */ GIM_Try, /*On fail goto*//*Label 1992*/ GIMT_Encode4(93199), // Rule ID 3026 // |
| 32805 | /* 93159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 32806 | /* 93162 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_d_128), |
| 32807 | /* 93167 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32808 | /* 93170 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32809 | /* 93173 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32810 | /* 93176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32811 | /* 93180 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32812 | /* 93184 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32813 | /* 93188 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14870:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPSIGNDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 32814 | /* 93188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNDrr), |
| 32815 | /* 93191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32816 | /* 93193 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32817 | /* 93195 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32818 | /* 93197 */ GIR_RootConstrainSelectedInstOperands, |
| 32819 | /* 93198 */ // GIR_Coverage, 3026, |
| 32820 | /* 93198 */ GIR_EraseRootFromParent_Done, |
| 32821 | /* 93199 */ // Label 1992: @93199 |
| 32822 | /* 93199 */ GIM_Try, /*On fail goto*//*Label 1993*/ GIMT_Encode4(93244), // Rule ID 3028 // |
| 32823 | /* 93204 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 32824 | /* 93207 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_phadd_sw_128), |
| 32825 | /* 93212 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 32826 | /* 93215 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 32827 | /* 93218 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 32828 | /* 93221 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32829 | /* 93225 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32830 | /* 93229 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32831 | /* 93233 */ // (intrinsic_wo_chain:{ *:[v8i16] } 14852:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPHADDSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 32832 | /* 93233 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDSWrr), |
| 32833 | /* 93236 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32834 | /* 93238 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32835 | /* 93240 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32836 | /* 93242 */ GIR_RootConstrainSelectedInstOperands, |
| 32837 | /* 93243 */ // GIR_Coverage, 3028, |
| 32838 | /* 93243 */ GIR_EraseRootFromParent_Done, |
| 32839 | /* 93244 */ // Label 1993: @93244 |
| 32840 | /* 93244 */ GIM_Try, /*On fail goto*//*Label 1994*/ GIMT_Encode4(93289), // Rule ID 3030 // |
| 32841 | /* 93249 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 32842 | /* 93252 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_phsub_sw_128), |
| 32843 | /* 93257 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 32844 | /* 93260 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 32845 | /* 93263 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 32846 | /* 93266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32847 | /* 93270 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32848 | /* 93274 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32849 | /* 93278 */ // (intrinsic_wo_chain:{ *:[v8i16] } 14858:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPHSUBSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 32850 | /* 93278 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBSWrr), |
| 32851 | /* 93281 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32852 | /* 93283 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32853 | /* 93285 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32854 | /* 93287 */ GIR_RootConstrainSelectedInstOperands, |
| 32855 | /* 93288 */ // GIR_Coverage, 3030, |
| 32856 | /* 93288 */ GIR_EraseRootFromParent_Done, |
| 32857 | /* 93289 */ // Label 1994: @93289 |
| 32858 | /* 93289 */ GIM_Try, /*On fail goto*//*Label 1995*/ GIMT_Encode4(93334), // Rule ID 3046 // |
| 32859 | /* 93294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 32860 | /* 93297 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_b), |
| 32861 | /* 93302 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s8, |
| 32862 | /* 93305 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 32863 | /* 93308 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 32864 | /* 93311 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32865 | /* 93315 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32866 | /* 93319 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32867 | /* 93323 */ // (intrinsic_wo_chain:{ *:[v32i8] } 13759:{ *:[iPTR] }, VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPSIGNBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 32868 | /* 93323 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNBYrr), |
| 32869 | /* 93326 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32870 | /* 93328 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32871 | /* 93330 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32872 | /* 93332 */ GIR_RootConstrainSelectedInstOperands, |
| 32873 | /* 93333 */ // GIR_Coverage, 3046, |
| 32874 | /* 93333 */ GIR_EraseRootFromParent_Done, |
| 32875 | /* 93334 */ // Label 1995: @93334 |
| 32876 | /* 93334 */ GIM_Try, /*On fail goto*//*Label 1996*/ GIMT_Encode4(93379), // Rule ID 3048 // |
| 32877 | /* 93339 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 32878 | /* 93342 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_w), |
| 32879 | /* 93347 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s16, |
| 32880 | /* 93350 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 32881 | /* 93353 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 32882 | /* 93356 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32883 | /* 93360 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32884 | /* 93364 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32885 | /* 93368 */ // (intrinsic_wo_chain:{ *:[v16i16] } 13761:{ *:[iPTR] }, VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPSIGNWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 32886 | /* 93368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNWYrr), |
| 32887 | /* 93371 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32888 | /* 93373 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32889 | /* 93375 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32890 | /* 93377 */ GIR_RootConstrainSelectedInstOperands, |
| 32891 | /* 93378 */ // GIR_Coverage, 3048, |
| 32892 | /* 93378 */ GIR_EraseRootFromParent_Done, |
| 32893 | /* 93379 */ // Label 1996: @93379 |
| 32894 | /* 93379 */ GIM_Try, /*On fail goto*//*Label 1997*/ GIMT_Encode4(93424), // Rule ID 3050 // |
| 32895 | /* 93384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 32896 | /* 93387 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_d), |
| 32897 | /* 93392 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 32898 | /* 93395 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 32899 | /* 93398 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 32900 | /* 93401 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32901 | /* 93405 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32902 | /* 93409 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32903 | /* 93413 */ // (intrinsic_wo_chain:{ *:[v8i32] } 13760:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPSIGNDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 32904 | /* 93413 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNDYrr), |
| 32905 | /* 93416 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32906 | /* 93418 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32907 | /* 93420 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32908 | /* 93422 */ GIR_RootConstrainSelectedInstOperands, |
| 32909 | /* 93423 */ // GIR_Coverage, 3050, |
| 32910 | /* 93423 */ GIR_EraseRootFromParent_Done, |
| 32911 | /* 93424 */ // Label 1997: @93424 |
| 32912 | /* 93424 */ GIM_Try, /*On fail goto*//*Label 1998*/ GIMT_Encode4(93469), // Rule ID 3052 // |
| 32913 | /* 93429 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 32914 | /* 93432 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_phadd_sw), |
| 32915 | /* 93437 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s16, |
| 32916 | /* 93440 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 32917 | /* 93443 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 32918 | /* 93446 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32919 | /* 93450 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32920 | /* 93454 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32921 | /* 93458 */ // (intrinsic_wo_chain:{ *:[v16i16] } 13746:{ *:[iPTR] }, VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPHADDSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 32922 | /* 93458 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDSWYrr), |
| 32923 | /* 93461 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32924 | /* 93463 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32925 | /* 93465 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32926 | /* 93467 */ GIR_RootConstrainSelectedInstOperands, |
| 32927 | /* 93468 */ // GIR_Coverage, 3052, |
| 32928 | /* 93468 */ GIR_EraseRootFromParent_Done, |
| 32929 | /* 93469 */ // Label 1998: @93469 |
| 32930 | /* 93469 */ GIM_Try, /*On fail goto*//*Label 1999*/ GIMT_Encode4(93514), // Rule ID 3054 // |
| 32931 | /* 93474 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 32932 | /* 93477 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_phsub_sw), |
| 32933 | /* 93482 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s16, |
| 32934 | /* 93485 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 32935 | /* 93488 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 32936 | /* 93491 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32937 | /* 93495 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32938 | /* 93499 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32939 | /* 93503 */ // (intrinsic_wo_chain:{ *:[v16i16] } 13749:{ *:[iPTR] }, VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPHSUBSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 32940 | /* 93503 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBSWYrr), |
| 32941 | /* 93506 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32942 | /* 93508 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32943 | /* 93510 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32944 | /* 93512 */ GIR_RootConstrainSelectedInstOperands, |
| 32945 | /* 93513 */ // GIR_Coverage, 3054, |
| 32946 | /* 93513 */ GIR_EraseRootFromParent_Done, |
| 32947 | /* 93514 */ // Label 1999: @93514 |
| 32948 | /* 93514 */ GIM_Try, /*On fail goto*//*Label 2000*/ GIMT_Encode4(93559), // Rule ID 3064 // |
| 32949 | /* 93519 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 32950 | /* 93522 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_b_128), |
| 32951 | /* 93527 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 32952 | /* 93530 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 32953 | /* 93533 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 32954 | /* 93536 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32955 | /* 93540 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32956 | /* 93544 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32957 | /* 93548 */ // (intrinsic_wo_chain:{ *:[v16i8] } 14868:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PSIGNBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 32958 | /* 93548 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PSIGNBrr), |
| 32959 | /* 93551 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32960 | /* 93553 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32961 | /* 93555 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32962 | /* 93557 */ GIR_RootConstrainSelectedInstOperands, |
| 32963 | /* 93558 */ // GIR_Coverage, 3064, |
| 32964 | /* 93558 */ GIR_EraseRootFromParent_Done, |
| 32965 | /* 93559 */ // Label 2000: @93559 |
| 32966 | /* 93559 */ GIM_Try, /*On fail goto*//*Label 2001*/ GIMT_Encode4(93604), // Rule ID 3066 // |
| 32967 | /* 93564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 32968 | /* 93567 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_w_128), |
| 32969 | /* 93572 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 32970 | /* 93575 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 32971 | /* 93578 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 32972 | /* 93581 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32973 | /* 93585 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32974 | /* 93589 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32975 | /* 93593 */ // (intrinsic_wo_chain:{ *:[v8i16] } 14872:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PSIGNWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 32976 | /* 93593 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PSIGNWrr), |
| 32977 | /* 93596 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32978 | /* 93598 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32979 | /* 93600 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32980 | /* 93602 */ GIR_RootConstrainSelectedInstOperands, |
| 32981 | /* 93603 */ // GIR_Coverage, 3066, |
| 32982 | /* 93603 */ GIR_EraseRootFromParent_Done, |
| 32983 | /* 93604 */ // Label 2001: @93604 |
| 32984 | /* 93604 */ GIM_Try, /*On fail goto*//*Label 2002*/ GIMT_Encode4(93649), // Rule ID 3068 // |
| 32985 | /* 93609 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 32986 | /* 93612 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_d_128), |
| 32987 | /* 93617 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32988 | /* 93620 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32989 | /* 93623 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32990 | /* 93626 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32991 | /* 93630 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32992 | /* 93634 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32993 | /* 93638 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14870:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PSIGNDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 32994 | /* 93638 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PSIGNDrr), |
| 32995 | /* 93641 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32996 | /* 93643 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32997 | /* 93645 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32998 | /* 93647 */ GIR_RootConstrainSelectedInstOperands, |
| 32999 | /* 93648 */ // GIR_Coverage, 3068, |
| 33000 | /* 93648 */ GIR_EraseRootFromParent_Done, |
| 33001 | /* 93649 */ // Label 2002: @93649 |
| 33002 | /* 93649 */ GIM_Try, /*On fail goto*//*Label 2003*/ GIMT_Encode4(93694), // Rule ID 3072 // |
| 33003 | /* 93654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 33004 | /* 93657 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_phadd_sw_128), |
| 33005 | /* 93662 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 33006 | /* 93665 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33007 | /* 93668 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33008 | /* 93671 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33009 | /* 93675 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33010 | /* 93679 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33011 | /* 93683 */ // (intrinsic_wo_chain:{ *:[v8i16] } 14852:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PHADDSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 33012 | /* 93683 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PHADDSWrr), |
| 33013 | /* 93686 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33014 | /* 93688 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33015 | /* 93690 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33016 | /* 93692 */ GIR_RootConstrainSelectedInstOperands, |
| 33017 | /* 93693 */ // GIR_Coverage, 3072, |
| 33018 | /* 93693 */ GIR_EraseRootFromParent_Done, |
| 33019 | /* 93694 */ // Label 2003: @93694 |
| 33020 | /* 93694 */ GIM_Try, /*On fail goto*//*Label 2004*/ GIMT_Encode4(93739), // Rule ID 3074 // |
| 33021 | /* 93699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 33022 | /* 93702 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_phsub_sw_128), |
| 33023 | /* 93707 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 33024 | /* 93710 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33025 | /* 93713 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33026 | /* 93716 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33027 | /* 93720 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33028 | /* 93724 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33029 | /* 93728 */ // (intrinsic_wo_chain:{ *:[v8i16] } 14858:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PHSUBSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 33030 | /* 93728 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PHSUBSWrr), |
| 33031 | /* 93731 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33032 | /* 93733 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33033 | /* 93735 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33034 | /* 93737 */ GIR_RootConstrainSelectedInstOperands, |
| 33035 | /* 93738 */ // GIR_Coverage, 3074, |
| 33036 | /* 93738 */ GIR_EraseRootFromParent_Done, |
| 33037 | /* 93739 */ // Label 2004: @93739 |
| 33038 | /* 93739 */ GIM_Try, /*On fail goto*//*Label 2005*/ GIMT_Encode4(93784), // Rule ID 3309 // |
| 33039 | /* 93744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 33040 | /* 93747 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_8), |
| 33041 | /* 93752 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 33042 | /* 93755 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 33043 | /* 93758 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 33044 | /* 93761 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33045 | /* 93765 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33046 | /* 93769 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 33047 | /* 93773 */ // (intrinsic_wo_chain:{ *:[i32] } 14826:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) => (CRC32r32r8:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) |
| 33048 | /* 93773 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r8), |
| 33049 | /* 93776 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33050 | /* 93778 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33051 | /* 93780 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33052 | /* 93782 */ GIR_RootConstrainSelectedInstOperands, |
| 33053 | /* 93783 */ // GIR_Coverage, 3309, |
| 33054 | /* 93783 */ GIR_EraseRootFromParent_Done, |
| 33055 | /* 93784 */ // Label 2005: @93784 |
| 33056 | /* 93784 */ GIM_Try, /*On fail goto*//*Label 2006*/ GIMT_Encode4(93829), // Rule ID 3311 // |
| 33057 | /* 93789 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 33058 | /* 93792 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_16), |
| 33059 | /* 93797 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 33060 | /* 93800 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 33061 | /* 93803 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 33062 | /* 93806 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33063 | /* 93810 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33064 | /* 93814 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 33065 | /* 93818 */ // (intrinsic_wo_chain:{ *:[i32] } 14824:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR16:{ *:[i16] }:$src2) => (CRC32r32r16:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR16:{ *:[i16] }:$src2) |
| 33066 | /* 93818 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r16), |
| 33067 | /* 93821 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33068 | /* 93823 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33069 | /* 93825 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33070 | /* 93827 */ GIR_RootConstrainSelectedInstOperands, |
| 33071 | /* 93828 */ // GIR_Coverage, 3311, |
| 33072 | /* 93828 */ GIR_EraseRootFromParent_Done, |
| 33073 | /* 93829 */ // Label 2006: @93829 |
| 33074 | /* 93829 */ GIM_Try, /*On fail goto*//*Label 2007*/ GIMT_Encode4(93874), // Rule ID 3313 // |
| 33075 | /* 93834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 33076 | /* 93837 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_32), |
| 33077 | /* 93842 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 33078 | /* 93845 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 33079 | /* 93848 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 33080 | /* 93851 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33081 | /* 93855 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33082 | /* 93859 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33083 | /* 93863 */ // (intrinsic_wo_chain:{ *:[i32] } 14825:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (CRC32r32r32:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 33084 | /* 93863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r32), |
| 33085 | /* 93866 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33086 | /* 93868 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33087 | /* 93870 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33088 | /* 93872 */ GIR_RootConstrainSelectedInstOperands, |
| 33089 | /* 93873 */ // GIR_Coverage, 3313, |
| 33090 | /* 93873 */ GIR_EraseRootFromParent_Done, |
| 33091 | /* 93874 */ // Label 2007: @93874 |
| 33092 | /* 93874 */ GIM_Try, /*On fail goto*//*Label 2008*/ GIMT_Encode4(93919), // Rule ID 3315 // |
| 33093 | /* 93879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 33094 | /* 93882 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_64_64), |
| 33095 | /* 93887 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 33096 | /* 93890 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 33097 | /* 93893 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 33098 | /* 93896 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 33099 | /* 93900 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 33100 | /* 93904 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 33101 | /* 93908 */ // (intrinsic_wo_chain:{ *:[i64] } 14827:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (CRC32r64r64:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 33102 | /* 93908 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r64r64), |
| 33103 | /* 93911 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33104 | /* 93913 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33105 | /* 93915 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33106 | /* 93917 */ GIR_RootConstrainSelectedInstOperands, |
| 33107 | /* 93918 */ // GIR_Coverage, 3315, |
| 33108 | /* 93918 */ GIR_EraseRootFromParent_Done, |
| 33109 | /* 93919 */ // Label 2008: @93919 |
| 33110 | /* 93919 */ GIM_Try, /*On fail goto*//*Label 2009*/ GIMT_Encode4(93964), // Rule ID 3317 // |
| 33111 | /* 93924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 33112 | /* 93927 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_8), |
| 33113 | /* 93932 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 33114 | /* 93935 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 33115 | /* 93938 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 33116 | /* 93941 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33117 | /* 93945 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33118 | /* 93949 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 33119 | /* 93953 */ // (intrinsic_wo_chain:{ *:[i32] } 14826:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) => (CRC32r32r8_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) |
| 33120 | /* 93953 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r8_EVEX), |
| 33121 | /* 93956 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33122 | /* 93958 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33123 | /* 93960 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33124 | /* 93962 */ GIR_RootConstrainSelectedInstOperands, |
| 33125 | /* 93963 */ // GIR_Coverage, 3317, |
| 33126 | /* 93963 */ GIR_EraseRootFromParent_Done, |
| 33127 | /* 93964 */ // Label 2009: @93964 |
| 33128 | /* 93964 */ GIM_Try, /*On fail goto*//*Label 2010*/ GIMT_Encode4(94009), // Rule ID 3319 // |
| 33129 | /* 93969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 33130 | /* 93972 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_16), |
| 33131 | /* 93977 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 33132 | /* 93980 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 33133 | /* 93983 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 33134 | /* 93986 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33135 | /* 93990 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33136 | /* 93994 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 33137 | /* 93998 */ // (intrinsic_wo_chain:{ *:[i32] } 14824:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR16:{ *:[i16] }:$src2) => (CRC32r32r16_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR16:{ *:[i16] }:$src2) |
| 33138 | /* 93998 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r16_EVEX), |
| 33139 | /* 94001 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33140 | /* 94003 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33141 | /* 94005 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33142 | /* 94007 */ GIR_RootConstrainSelectedInstOperands, |
| 33143 | /* 94008 */ // GIR_Coverage, 3319, |
| 33144 | /* 94008 */ GIR_EraseRootFromParent_Done, |
| 33145 | /* 94009 */ // Label 2010: @94009 |
| 33146 | /* 94009 */ GIM_Try, /*On fail goto*//*Label 2011*/ GIMT_Encode4(94054), // Rule ID 3321 // |
| 33147 | /* 94014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 33148 | /* 94017 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_32), |
| 33149 | /* 94022 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 33150 | /* 94025 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 33151 | /* 94028 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 33152 | /* 94031 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33153 | /* 94035 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33154 | /* 94039 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 33155 | /* 94043 */ // (intrinsic_wo_chain:{ *:[i32] } 14825:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (CRC32r32r32_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 33156 | /* 94043 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r32_EVEX), |
| 33157 | /* 94046 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33158 | /* 94048 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33159 | /* 94050 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33160 | /* 94052 */ GIR_RootConstrainSelectedInstOperands, |
| 33161 | /* 94053 */ // GIR_Coverage, 3321, |
| 33162 | /* 94053 */ GIR_EraseRootFromParent_Done, |
| 33163 | /* 94054 */ // Label 2011: @94054 |
| 33164 | /* 94054 */ GIM_Try, /*On fail goto*//*Label 2012*/ GIMT_Encode4(94099), // Rule ID 3323 // |
| 33165 | /* 94059 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 33166 | /* 94062 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_64_64), |
| 33167 | /* 94067 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 33168 | /* 94070 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 33169 | /* 94073 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 33170 | /* 94076 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 33171 | /* 94080 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 33172 | /* 94084 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 33173 | /* 94088 */ // (intrinsic_wo_chain:{ *:[i64] } 14827:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (CRC32r64r64_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 33174 | /* 94088 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r64r64_EVEX), |
| 33175 | /* 94091 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33176 | /* 94093 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33177 | /* 94095 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33178 | /* 94097 */ GIR_RootConstrainSelectedInstOperands, |
| 33179 | /* 94098 */ // GIR_Coverage, 3323, |
| 33180 | /* 94098 */ GIR_EraseRootFromParent_Done, |
| 33181 | /* 94099 */ // Label 2012: @94099 |
| 33182 | /* 94099 */ GIM_Try, /*On fail goto*//*Label 2013*/ GIMT_Encode4(94144), // Rule ID 3327 // |
| 33183 | /* 94104 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 33184 | /* 94107 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha1nexte), |
| 33185 | /* 94112 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33186 | /* 94115 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33187 | /* 94118 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33188 | /* 94121 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33189 | /* 94125 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33190 | /* 94129 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33191 | /* 94133 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14696:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (SHA1NEXTErr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 33192 | /* 94133 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA1NEXTErr), |
| 33193 | /* 94136 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33194 | /* 94138 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33195 | /* 94140 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33196 | /* 94142 */ GIR_RootConstrainSelectedInstOperands, |
| 33197 | /* 94143 */ // GIR_Coverage, 3327, |
| 33198 | /* 94143 */ GIR_EraseRootFromParent_Done, |
| 33199 | /* 94144 */ // Label 2013: @94144 |
| 33200 | /* 94144 */ GIM_Try, /*On fail goto*//*Label 2014*/ GIMT_Encode4(94189), // Rule ID 3329 // |
| 33201 | /* 94149 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 33202 | /* 94152 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha1msg1), |
| 33203 | /* 94157 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33204 | /* 94160 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33205 | /* 94163 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33206 | /* 94166 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33207 | /* 94170 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33208 | /* 94174 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33209 | /* 94178 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14694:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (SHA1MSG1rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 33210 | /* 94178 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA1MSG1rr), |
| 33211 | /* 94181 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33212 | /* 94183 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33213 | /* 94185 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33214 | /* 94187 */ GIR_RootConstrainSelectedInstOperands, |
| 33215 | /* 94188 */ // GIR_Coverage, 3329, |
| 33216 | /* 94188 */ GIR_EraseRootFromParent_Done, |
| 33217 | /* 94189 */ // Label 2014: @94189 |
| 33218 | /* 94189 */ GIM_Try, /*On fail goto*//*Label 2015*/ GIMT_Encode4(94234), // Rule ID 3331 // |
| 33219 | /* 94194 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 33220 | /* 94197 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha1msg2), |
| 33221 | /* 94202 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33222 | /* 94205 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33223 | /* 94208 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33224 | /* 94211 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33225 | /* 94215 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33226 | /* 94219 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33227 | /* 94223 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14695:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (SHA1MSG2rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 33228 | /* 94223 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA1MSG2rr), |
| 33229 | /* 94226 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33230 | /* 94228 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33231 | /* 94230 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33232 | /* 94232 */ GIR_RootConstrainSelectedInstOperands, |
| 33233 | /* 94233 */ // GIR_Coverage, 3331, |
| 33234 | /* 94233 */ GIR_EraseRootFromParent_Done, |
| 33235 | /* 94234 */ // Label 2015: @94234 |
| 33236 | /* 94234 */ GIM_Try, /*On fail goto*//*Label 2016*/ GIMT_Encode4(94279), // Rule ID 3335 // |
| 33237 | /* 94239 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 33238 | /* 94242 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha256msg1), |
| 33239 | /* 94247 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33240 | /* 94250 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33241 | /* 94253 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33242 | /* 94256 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33243 | /* 94260 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33244 | /* 94264 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33245 | /* 94268 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14698:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (SHA256MSG1rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 33246 | /* 94268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA256MSG1rr), |
| 33247 | /* 94271 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33248 | /* 94273 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33249 | /* 94275 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33250 | /* 94277 */ GIR_RootConstrainSelectedInstOperands, |
| 33251 | /* 94278 */ // GIR_Coverage, 3335, |
| 33252 | /* 94278 */ GIR_EraseRootFromParent_Done, |
| 33253 | /* 94279 */ // Label 2016: @94279 |
| 33254 | /* 94279 */ GIM_Try, /*On fail goto*//*Label 2017*/ GIMT_Encode4(94324), // Rule ID 3337 // |
| 33255 | /* 94284 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 33256 | /* 94287 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha256msg2), |
| 33257 | /* 94292 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33258 | /* 94295 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33259 | /* 94298 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33260 | /* 94301 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33261 | /* 94305 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33262 | /* 94309 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33263 | /* 94313 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14699:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (SHA256MSG2rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 33264 | /* 94313 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA256MSG2rr), |
| 33265 | /* 94316 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33266 | /* 94318 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33267 | /* 94320 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33268 | /* 94322 */ GIR_RootConstrainSelectedInstOperands, |
| 33269 | /* 94323 */ // GIR_Coverage, 3337, |
| 33270 | /* 94323 */ GIR_EraseRootFromParent_Done, |
| 33271 | /* 94324 */ // Label 2017: @94324 |
| 33272 | /* 94324 */ GIM_Try, /*On fail goto*//*Label 2018*/ GIMT_Encode4(94369), // Rule ID 3339 // |
| 33273 | /* 94329 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 33274 | /* 94332 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc), |
| 33275 | /* 94337 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33276 | /* 94340 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33277 | /* 94343 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33278 | /* 94346 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33279 | /* 94350 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33280 | /* 94354 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33281 | /* 94358 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13389:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VAESENCrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 33282 | /* 94358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCrr), |
| 33283 | /* 94361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33284 | /* 94363 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33285 | /* 94365 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33286 | /* 94367 */ GIR_RootConstrainSelectedInstOperands, |
| 33287 | /* 94368 */ // GIR_Coverage, 3339, |
| 33288 | /* 94368 */ GIR_EraseRootFromParent_Done, |
| 33289 | /* 94369 */ // Label 2018: @94369 |
| 33290 | /* 94369 */ GIM_Try, /*On fail goto*//*Label 2019*/ GIMT_Encode4(94414), // Rule ID 3341 // |
| 33291 | /* 94374 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 33292 | /* 94377 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast), |
| 33293 | /* 94382 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33294 | /* 94385 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33295 | /* 94388 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33296 | /* 94391 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33297 | /* 94395 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33298 | /* 94399 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33299 | /* 94403 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13392:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VAESENCLASTrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 33300 | /* 94403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTrr), |
| 33301 | /* 94406 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33302 | /* 94408 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33303 | /* 94410 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33304 | /* 94412 */ GIR_RootConstrainSelectedInstOperands, |
| 33305 | /* 94413 */ // GIR_Coverage, 3341, |
| 33306 | /* 94413 */ GIR_EraseRootFromParent_Done, |
| 33307 | /* 94414 */ // Label 2019: @94414 |
| 33308 | /* 94414 */ GIM_Try, /*On fail goto*//*Label 2020*/ GIMT_Encode4(94459), // Rule ID 3343 // |
| 33309 | /* 94419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 33310 | /* 94422 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec), |
| 33311 | /* 94427 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33312 | /* 94430 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33313 | /* 94433 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33314 | /* 94436 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33315 | /* 94440 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33316 | /* 94444 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33317 | /* 94448 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13383:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VAESDECrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 33318 | /* 94448 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECrr), |
| 33319 | /* 94451 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33320 | /* 94453 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33321 | /* 94455 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33322 | /* 94457 */ GIR_RootConstrainSelectedInstOperands, |
| 33323 | /* 94458 */ // GIR_Coverage, 3343, |
| 33324 | /* 94458 */ GIR_EraseRootFromParent_Done, |
| 33325 | /* 94459 */ // Label 2020: @94459 |
| 33326 | /* 94459 */ GIM_Try, /*On fail goto*//*Label 2021*/ GIMT_Encode4(94504), // Rule ID 3345 // |
| 33327 | /* 94464 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 33328 | /* 94467 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast), |
| 33329 | /* 94472 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33330 | /* 94475 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33331 | /* 94478 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33332 | /* 94481 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33333 | /* 94485 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33334 | /* 94489 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33335 | /* 94493 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13386:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VAESDECLASTrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 33336 | /* 94493 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTrr), |
| 33337 | /* 94496 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33338 | /* 94498 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33339 | /* 94500 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33340 | /* 94502 */ GIR_RootConstrainSelectedInstOperands, |
| 33341 | /* 94503 */ // GIR_Coverage, 3345, |
| 33342 | /* 94503 */ GIR_EraseRootFromParent_Done, |
| 33343 | /* 94504 */ // Label 2021: @94504 |
| 33344 | /* 94504 */ GIM_Try, /*On fail goto*//*Label 2022*/ GIMT_Encode4(94549), // Rule ID 3347 // |
| 33345 | /* 94509 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 33346 | /* 94512 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_256), |
| 33347 | /* 94517 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33348 | /* 94520 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33349 | /* 94523 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33350 | /* 94526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33351 | /* 94530 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33352 | /* 94534 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33353 | /* 94538 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13390:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VAESENCYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 33354 | /* 94538 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCYrr), |
| 33355 | /* 94541 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33356 | /* 94543 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33357 | /* 94545 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33358 | /* 94547 */ GIR_RootConstrainSelectedInstOperands, |
| 33359 | /* 94548 */ // GIR_Coverage, 3347, |
| 33360 | /* 94548 */ GIR_EraseRootFromParent_Done, |
| 33361 | /* 94549 */ // Label 2022: @94549 |
| 33362 | /* 94549 */ GIM_Try, /*On fail goto*//*Label 2023*/ GIMT_Encode4(94594), // Rule ID 3349 // |
| 33363 | /* 94554 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 33364 | /* 94557 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_256), |
| 33365 | /* 94562 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33366 | /* 94565 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33367 | /* 94568 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33368 | /* 94571 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33369 | /* 94575 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33370 | /* 94579 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33371 | /* 94583 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13393:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VAESENCLASTYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 33372 | /* 94583 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTYrr), |
| 33373 | /* 94586 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33374 | /* 94588 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33375 | /* 94590 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33376 | /* 94592 */ GIR_RootConstrainSelectedInstOperands, |
| 33377 | /* 94593 */ // GIR_Coverage, 3349, |
| 33378 | /* 94593 */ GIR_EraseRootFromParent_Done, |
| 33379 | /* 94594 */ // Label 2023: @94594 |
| 33380 | /* 94594 */ GIM_Try, /*On fail goto*//*Label 2024*/ GIMT_Encode4(94639), // Rule ID 3351 // |
| 33381 | /* 94599 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 33382 | /* 94602 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_256), |
| 33383 | /* 94607 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33384 | /* 94610 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33385 | /* 94613 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33386 | /* 94616 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33387 | /* 94620 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33388 | /* 94624 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33389 | /* 94628 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13384:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VAESDECYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 33390 | /* 94628 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECYrr), |
| 33391 | /* 94631 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33392 | /* 94633 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33393 | /* 94635 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33394 | /* 94637 */ GIR_RootConstrainSelectedInstOperands, |
| 33395 | /* 94638 */ // GIR_Coverage, 3351, |
| 33396 | /* 94638 */ GIR_EraseRootFromParent_Done, |
| 33397 | /* 94639 */ // Label 2024: @94639 |
| 33398 | /* 94639 */ GIM_Try, /*On fail goto*//*Label 2025*/ GIMT_Encode4(94684), // Rule ID 3353 // |
| 33399 | /* 94644 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 33400 | /* 94647 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_256), |
| 33401 | /* 94652 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33402 | /* 94655 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33403 | /* 94658 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33404 | /* 94661 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33405 | /* 94665 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33406 | /* 94669 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33407 | /* 94673 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13387:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VAESDECLASTYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 33408 | /* 94673 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTYrr), |
| 33409 | /* 94676 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33410 | /* 94678 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33411 | /* 94680 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33412 | /* 94682 */ GIR_RootConstrainSelectedInstOperands, |
| 33413 | /* 94683 */ // GIR_Coverage, 3353, |
| 33414 | /* 94683 */ GIR_EraseRootFromParent_Done, |
| 33415 | /* 94684 */ // Label 2025: @94684 |
| 33416 | /* 94684 */ GIM_Try, /*On fail goto*//*Label 2026*/ GIMT_Encode4(94729), // Rule ID 3355 // |
| 33417 | /* 94689 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 33418 | /* 94692 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc), |
| 33419 | /* 94697 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33420 | /* 94700 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33421 | /* 94703 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33422 | /* 94706 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33423 | /* 94710 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33424 | /* 94714 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33425 | /* 94718 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13389:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (AESENCrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 33426 | /* 94718 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESENCrr), |
| 33427 | /* 94721 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33428 | /* 94723 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33429 | /* 94725 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33430 | /* 94727 */ GIR_RootConstrainSelectedInstOperands, |
| 33431 | /* 94728 */ // GIR_Coverage, 3355, |
| 33432 | /* 94728 */ GIR_EraseRootFromParent_Done, |
| 33433 | /* 94729 */ // Label 2026: @94729 |
| 33434 | /* 94729 */ GIM_Try, /*On fail goto*//*Label 2027*/ GIMT_Encode4(94774), // Rule ID 3357 // |
| 33435 | /* 94734 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 33436 | /* 94737 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast), |
| 33437 | /* 94742 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33438 | /* 94745 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33439 | /* 94748 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33440 | /* 94751 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33441 | /* 94755 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33442 | /* 94759 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33443 | /* 94763 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13392:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (AESENCLASTrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 33444 | /* 94763 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESENCLASTrr), |
| 33445 | /* 94766 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33446 | /* 94768 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33447 | /* 94770 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33448 | /* 94772 */ GIR_RootConstrainSelectedInstOperands, |
| 33449 | /* 94773 */ // GIR_Coverage, 3357, |
| 33450 | /* 94773 */ GIR_EraseRootFromParent_Done, |
| 33451 | /* 94774 */ // Label 2027: @94774 |
| 33452 | /* 94774 */ GIM_Try, /*On fail goto*//*Label 2028*/ GIMT_Encode4(94819), // Rule ID 3359 // |
| 33453 | /* 94779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 33454 | /* 94782 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec), |
| 33455 | /* 94787 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33456 | /* 94790 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33457 | /* 94793 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33458 | /* 94796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33459 | /* 94800 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33460 | /* 94804 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33461 | /* 94808 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13383:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (AESDECrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 33462 | /* 94808 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESDECrr), |
| 33463 | /* 94811 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33464 | /* 94813 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33465 | /* 94815 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33466 | /* 94817 */ GIR_RootConstrainSelectedInstOperands, |
| 33467 | /* 94818 */ // GIR_Coverage, 3359, |
| 33468 | /* 94818 */ GIR_EraseRootFromParent_Done, |
| 33469 | /* 94819 */ // Label 2028: @94819 |
| 33470 | /* 94819 */ GIM_Try, /*On fail goto*//*Label 2029*/ GIMT_Encode4(94864), // Rule ID 3361 // |
| 33471 | /* 94824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 33472 | /* 94827 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast), |
| 33473 | /* 94832 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33474 | /* 94835 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33475 | /* 94838 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33476 | /* 94841 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33477 | /* 94845 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33478 | /* 94849 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33479 | /* 94853 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13386:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (AESDECLASTrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 33480 | /* 94853 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESDECLASTrr), |
| 33481 | /* 94856 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33482 | /* 94858 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33483 | /* 94860 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33484 | /* 94862 */ GIR_RootConstrainSelectedInstOperands, |
| 33485 | /* 94863 */ // GIR_Coverage, 3361, |
| 33486 | /* 94863 */ GIR_EraseRootFromParent_Done, |
| 33487 | /* 94864 */ // Label 2029: @94864 |
| 33488 | /* 94864 */ GIM_Try, /*On fail goto*//*Label 2030*/ GIMT_Encode4(94909), // Rule ID 3378 // |
| 33489 | /* 94869 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE4A), |
| 33490 | /* 94872 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse4a_extrq), |
| 33491 | /* 94877 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33492 | /* 94880 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33493 | /* 94883 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 33494 | /* 94886 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33495 | /* 94890 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33496 | /* 94894 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33497 | /* 94898 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14842:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src, VR128:{ *:[v16i8] }:$mask) => (EXTRQ:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src, VR128:{ *:[v16i8] }:$mask) |
| 33498 | /* 94898 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::EXTRQ), |
| 33499 | /* 94901 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33500 | /* 94903 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 33501 | /* 94905 */ GIR_RootToRootCopy, /*OpIdx*/3, // mask |
| 33502 | /* 94907 */ GIR_RootConstrainSelectedInstOperands, |
| 33503 | /* 94908 */ // GIR_Coverage, 3378, |
| 33504 | /* 94908 */ GIR_EraseRootFromParent_Done, |
| 33505 | /* 94909 */ // Label 2030: @94909 |
| 33506 | /* 94909 */ GIM_Try, /*On fail goto*//*Label 2031*/ GIMT_Encode4(94954), // Rule ID 3380 // |
| 33507 | /* 94914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE4A), |
| 33508 | /* 94917 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse4a_insertq), |
| 33509 | /* 94922 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33510 | /* 94925 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33511 | /* 94928 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33512 | /* 94931 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33513 | /* 94935 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33514 | /* 94939 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33515 | /* 94943 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14844:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src, VR128:{ *:[v2i64] }:$mask) => (INSERTQ:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src, VR128:{ *:[v2i64] }:$mask) |
| 33516 | /* 94943 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INSERTQ), |
| 33517 | /* 94946 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33518 | /* 94948 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 33519 | /* 94950 */ GIR_RootToRootCopy, /*OpIdx*/3, // mask |
| 33520 | /* 94952 */ GIR_RootConstrainSelectedInstOperands, |
| 33521 | /* 94953 */ // GIR_Coverage, 3380, |
| 33522 | /* 94953 */ GIR_EraseRootFromParent_Done, |
| 33523 | /* 94954 */ // Label 2031: @94954 |
| 33524 | /* 94954 */ GIM_Try, /*On fail goto*//*Label 2032*/ GIMT_Encode4(94999), // Rule ID 3555 // |
| 33525 | /* 94959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA512), |
| 33526 | /* 94962 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsha512msg1), |
| 33527 | /* 94967 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33528 | /* 94970 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33529 | /* 94973 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33530 | /* 94976 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33531 | /* 94980 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33532 | /* 94984 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33533 | /* 94988 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14993:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VSHA512MSG1rr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 33534 | /* 94988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSHA512MSG1rr), |
| 33535 | /* 94991 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33536 | /* 94993 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33537 | /* 94995 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33538 | /* 94997 */ GIR_RootConstrainSelectedInstOperands, |
| 33539 | /* 94998 */ // GIR_Coverage, 3555, |
| 33540 | /* 94998 */ GIR_EraseRootFromParent_Done, |
| 33541 | /* 94999 */ // Label 2032: @94999 |
| 33542 | /* 94999 */ GIM_Try, /*On fail goto*//*Label 2033*/ GIMT_Encode4(95044), // Rule ID 3556 // |
| 33543 | /* 95004 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA512), |
| 33544 | /* 95007 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsha512msg2), |
| 33545 | /* 95012 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33546 | /* 95015 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33547 | /* 95018 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33548 | /* 95021 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33549 | /* 95025 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33550 | /* 95029 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33551 | /* 95033 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14994:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VSHA512MSG2rr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 33552 | /* 95033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSHA512MSG2rr), |
| 33553 | /* 95036 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33554 | /* 95038 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33555 | /* 95040 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33556 | /* 95042 */ GIR_RootConstrainSelectedInstOperands, |
| 33557 | /* 95043 */ // GIR_Coverage, 3556, |
| 33558 | /* 95043 */ GIR_EraseRootFromParent_Done, |
| 33559 | /* 95044 */ // Label 2033: @95044 |
| 33560 | /* 95044 */ GIM_Try, /*On fail goto*//*Label 2034*/ GIMT_Encode4(95089), // Rule ID 3564 // |
| 33561 | /* 95049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 33562 | /* 95052 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4128), |
| 33563 | /* 95057 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33564 | /* 95060 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33565 | /* 95063 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33566 | /* 95066 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33567 | /* 95070 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33568 | /* 95074 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33569 | /* 95078 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14999:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VSM4KEY4rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 33570 | /* 95078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4rr), |
| 33571 | /* 95081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33572 | /* 95083 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33573 | /* 95085 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33574 | /* 95087 */ GIR_RootConstrainSelectedInstOperands, |
| 33575 | /* 95088 */ // GIR_Coverage, 3564, |
| 33576 | /* 95088 */ GIR_EraseRootFromParent_Done, |
| 33577 | /* 95089 */ // Label 2034: @95089 |
| 33578 | /* 95089 */ GIM_Try, /*On fail goto*//*Label 2035*/ GIMT_Encode4(95134), // Rule ID 3566 // |
| 33579 | /* 95094 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 33580 | /* 95097 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4256), |
| 33581 | /* 95102 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 33582 | /* 95105 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 33583 | /* 95108 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 33584 | /* 95111 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33585 | /* 95115 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33586 | /* 95119 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33587 | /* 95123 */ // (intrinsic_wo_chain:{ *:[v8i32] } 15000:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VSM4KEY4Yrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 33588 | /* 95123 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Yrr), |
| 33589 | /* 95126 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33590 | /* 95128 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33591 | /* 95130 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33592 | /* 95132 */ GIR_RootConstrainSelectedInstOperands, |
| 33593 | /* 95133 */ // GIR_Coverage, 3566, |
| 33594 | /* 95133 */ GIR_EraseRootFromParent_Done, |
| 33595 | /* 95134 */ // Label 2035: @95134 |
| 33596 | /* 95134 */ GIM_Try, /*On fail goto*//*Label 2036*/ GIMT_Encode4(95179), // Rule ID 3568 // |
| 33597 | /* 95139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 33598 | /* 95142 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4128), |
| 33599 | /* 95147 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33600 | /* 95150 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33601 | /* 95153 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33602 | /* 95156 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33603 | /* 95160 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33604 | /* 95164 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33605 | /* 95168 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15002:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VSM4RNDS4rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 33606 | /* 95168 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4rr), |
| 33607 | /* 95171 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33608 | /* 95173 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33609 | /* 95175 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33610 | /* 95177 */ GIR_RootConstrainSelectedInstOperands, |
| 33611 | /* 95178 */ // GIR_Coverage, 3568, |
| 33612 | /* 95178 */ GIR_EraseRootFromParent_Done, |
| 33613 | /* 95179 */ // Label 2036: @95179 |
| 33614 | /* 95179 */ GIM_Try, /*On fail goto*//*Label 2037*/ GIMT_Encode4(95224), // Rule ID 3570 // |
| 33615 | /* 95184 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 33616 | /* 95187 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4256), |
| 33617 | /* 95192 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 33618 | /* 95195 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 33619 | /* 95198 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 33620 | /* 95201 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33621 | /* 95205 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33622 | /* 95209 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33623 | /* 95213 */ // (intrinsic_wo_chain:{ *:[v8i32] } 15003:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VSM4RNDS4Yrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 33624 | /* 95213 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Yrr), |
| 33625 | /* 95216 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33626 | /* 95218 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33627 | /* 95220 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33628 | /* 95222 */ GIR_RootConstrainSelectedInstOperands, |
| 33629 | /* 95223 */ // GIR_Coverage, 3570, |
| 33630 | /* 95223 */ GIR_EraseRootFromParent_Done, |
| 33631 | /* 95224 */ // Label 2037: @95224 |
| 33632 | /* 95224 */ GIM_Try, /*On fail goto*//*Label 2038*/ GIMT_Encode4(95269), // Rule ID 14060 // |
| 33633 | /* 95229 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33634 | /* 95232 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc), |
| 33635 | /* 95237 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33636 | /* 95240 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33637 | /* 95243 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33638 | /* 95246 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33639 | /* 95250 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33640 | /* 95254 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33641 | /* 95258 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13389:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VAESENCZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 33642 | /* 95258 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZ128rr), |
| 33643 | /* 95261 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33644 | /* 95263 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33645 | /* 95265 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33646 | /* 95267 */ GIR_RootConstrainSelectedInstOperands, |
| 33647 | /* 95268 */ // GIR_Coverage, 14060, |
| 33648 | /* 95268 */ GIR_EraseRootFromParent_Done, |
| 33649 | /* 95269 */ // Label 2038: @95269 |
| 33650 | /* 95269 */ GIM_Try, /*On fail goto*//*Label 2039*/ GIMT_Encode4(95314), // Rule ID 14062 // |
| 33651 | /* 95274 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33652 | /* 95277 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_256), |
| 33653 | /* 95282 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33654 | /* 95285 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33655 | /* 95288 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33656 | /* 95291 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33657 | /* 95295 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33658 | /* 95299 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33659 | /* 95303 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13390:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VAESENCZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 33660 | /* 95303 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZ256rr), |
| 33661 | /* 95306 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33662 | /* 95308 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33663 | /* 95310 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33664 | /* 95312 */ GIR_RootConstrainSelectedInstOperands, |
| 33665 | /* 95313 */ // GIR_Coverage, 14062, |
| 33666 | /* 95313 */ GIR_EraseRootFromParent_Done, |
| 33667 | /* 95314 */ // Label 2039: @95314 |
| 33668 | /* 95314 */ GIM_Try, /*On fail goto*//*Label 2040*/ GIMT_Encode4(95359), // Rule ID 14064 // |
| 33669 | /* 95319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 33670 | /* 95322 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_512), |
| 33671 | /* 95327 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 33672 | /* 95330 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 33673 | /* 95333 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 33674 | /* 95336 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33675 | /* 95340 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33676 | /* 95344 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33677 | /* 95348 */ // (intrinsic_wo_chain:{ *:[v8i64] } 13391:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VAESENCZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 33678 | /* 95348 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZrr), |
| 33679 | /* 95351 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33680 | /* 95353 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33681 | /* 95355 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33682 | /* 95357 */ GIR_RootConstrainSelectedInstOperands, |
| 33683 | /* 95358 */ // GIR_Coverage, 14064, |
| 33684 | /* 95358 */ GIR_EraseRootFromParent_Done, |
| 33685 | /* 95359 */ // Label 2040: @95359 |
| 33686 | /* 95359 */ GIM_Try, /*On fail goto*//*Label 2041*/ GIMT_Encode4(95404), // Rule ID 14066 // |
| 33687 | /* 95364 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33688 | /* 95367 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast), |
| 33689 | /* 95372 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33690 | /* 95375 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33691 | /* 95378 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33692 | /* 95381 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33693 | /* 95385 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33694 | /* 95389 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33695 | /* 95393 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13392:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VAESENCLASTZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 33696 | /* 95393 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZ128rr), |
| 33697 | /* 95396 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33698 | /* 95398 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33699 | /* 95400 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33700 | /* 95402 */ GIR_RootConstrainSelectedInstOperands, |
| 33701 | /* 95403 */ // GIR_Coverage, 14066, |
| 33702 | /* 95403 */ GIR_EraseRootFromParent_Done, |
| 33703 | /* 95404 */ // Label 2041: @95404 |
| 33704 | /* 95404 */ GIM_Try, /*On fail goto*//*Label 2042*/ GIMT_Encode4(95449), // Rule ID 14068 // |
| 33705 | /* 95409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33706 | /* 95412 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_256), |
| 33707 | /* 95417 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33708 | /* 95420 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33709 | /* 95423 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33710 | /* 95426 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33711 | /* 95430 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33712 | /* 95434 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33713 | /* 95438 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13393:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VAESENCLASTZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 33714 | /* 95438 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZ256rr), |
| 33715 | /* 95441 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33716 | /* 95443 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33717 | /* 95445 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33718 | /* 95447 */ GIR_RootConstrainSelectedInstOperands, |
| 33719 | /* 95448 */ // GIR_Coverage, 14068, |
| 33720 | /* 95448 */ GIR_EraseRootFromParent_Done, |
| 33721 | /* 95449 */ // Label 2042: @95449 |
| 33722 | /* 95449 */ GIM_Try, /*On fail goto*//*Label 2043*/ GIMT_Encode4(95494), // Rule ID 14070 // |
| 33723 | /* 95454 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 33724 | /* 95457 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_512), |
| 33725 | /* 95462 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 33726 | /* 95465 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 33727 | /* 95468 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 33728 | /* 95471 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33729 | /* 95475 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33730 | /* 95479 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33731 | /* 95483 */ // (intrinsic_wo_chain:{ *:[v8i64] } 13394:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VAESENCLASTZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 33732 | /* 95483 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZrr), |
| 33733 | /* 95486 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33734 | /* 95488 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33735 | /* 95490 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33736 | /* 95492 */ GIR_RootConstrainSelectedInstOperands, |
| 33737 | /* 95493 */ // GIR_Coverage, 14070, |
| 33738 | /* 95493 */ GIR_EraseRootFromParent_Done, |
| 33739 | /* 95494 */ // Label 2043: @95494 |
| 33740 | /* 95494 */ GIM_Try, /*On fail goto*//*Label 2044*/ GIMT_Encode4(95539), // Rule ID 14072 // |
| 33741 | /* 95499 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33742 | /* 95502 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec), |
| 33743 | /* 95507 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33744 | /* 95510 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33745 | /* 95513 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33746 | /* 95516 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33747 | /* 95520 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33748 | /* 95524 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33749 | /* 95528 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13383:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VAESDECZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 33750 | /* 95528 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZ128rr), |
| 33751 | /* 95531 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33752 | /* 95533 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33753 | /* 95535 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33754 | /* 95537 */ GIR_RootConstrainSelectedInstOperands, |
| 33755 | /* 95538 */ // GIR_Coverage, 14072, |
| 33756 | /* 95538 */ GIR_EraseRootFromParent_Done, |
| 33757 | /* 95539 */ // Label 2044: @95539 |
| 33758 | /* 95539 */ GIM_Try, /*On fail goto*//*Label 2045*/ GIMT_Encode4(95584), // Rule ID 14074 // |
| 33759 | /* 95544 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33760 | /* 95547 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_256), |
| 33761 | /* 95552 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33762 | /* 95555 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33763 | /* 95558 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33764 | /* 95561 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33765 | /* 95565 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33766 | /* 95569 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33767 | /* 95573 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13384:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VAESDECZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 33768 | /* 95573 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZ256rr), |
| 33769 | /* 95576 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33770 | /* 95578 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33771 | /* 95580 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33772 | /* 95582 */ GIR_RootConstrainSelectedInstOperands, |
| 33773 | /* 95583 */ // GIR_Coverage, 14074, |
| 33774 | /* 95583 */ GIR_EraseRootFromParent_Done, |
| 33775 | /* 95584 */ // Label 2045: @95584 |
| 33776 | /* 95584 */ GIM_Try, /*On fail goto*//*Label 2046*/ GIMT_Encode4(95629), // Rule ID 14076 // |
| 33777 | /* 95589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 33778 | /* 95592 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_512), |
| 33779 | /* 95597 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 33780 | /* 95600 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 33781 | /* 95603 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 33782 | /* 95606 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33783 | /* 95610 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33784 | /* 95614 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33785 | /* 95618 */ // (intrinsic_wo_chain:{ *:[v8i64] } 13385:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VAESDECZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 33786 | /* 95618 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZrr), |
| 33787 | /* 95621 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33788 | /* 95623 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33789 | /* 95625 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33790 | /* 95627 */ GIR_RootConstrainSelectedInstOperands, |
| 33791 | /* 95628 */ // GIR_Coverage, 14076, |
| 33792 | /* 95628 */ GIR_EraseRootFromParent_Done, |
| 33793 | /* 95629 */ // Label 2046: @95629 |
| 33794 | /* 95629 */ GIM_Try, /*On fail goto*//*Label 2047*/ GIMT_Encode4(95674), // Rule ID 14078 // |
| 33795 | /* 95634 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33796 | /* 95637 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast), |
| 33797 | /* 95642 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33798 | /* 95645 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33799 | /* 95648 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33800 | /* 95651 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33801 | /* 95655 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33802 | /* 95659 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33803 | /* 95663 */ // (intrinsic_wo_chain:{ *:[v2i64] } 13386:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VAESDECLASTZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 33804 | /* 95663 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZ128rr), |
| 33805 | /* 95666 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33806 | /* 95668 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33807 | /* 95670 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33808 | /* 95672 */ GIR_RootConstrainSelectedInstOperands, |
| 33809 | /* 95673 */ // GIR_Coverage, 14078, |
| 33810 | /* 95673 */ GIR_EraseRootFromParent_Done, |
| 33811 | /* 95674 */ // Label 2047: @95674 |
| 33812 | /* 95674 */ GIM_Try, /*On fail goto*//*Label 2048*/ GIMT_Encode4(95719), // Rule ID 14080 // |
| 33813 | /* 95679 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33814 | /* 95682 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_256), |
| 33815 | /* 95687 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33816 | /* 95690 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33817 | /* 95693 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33818 | /* 95696 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33819 | /* 95700 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33820 | /* 95704 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33821 | /* 95708 */ // (intrinsic_wo_chain:{ *:[v4i64] } 13387:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VAESDECLASTZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 33822 | /* 95708 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZ256rr), |
| 33823 | /* 95711 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33824 | /* 95713 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33825 | /* 95715 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33826 | /* 95717 */ GIR_RootConstrainSelectedInstOperands, |
| 33827 | /* 95718 */ // GIR_Coverage, 14080, |
| 33828 | /* 95718 */ GIR_EraseRootFromParent_Done, |
| 33829 | /* 95719 */ // Label 2048: @95719 |
| 33830 | /* 95719 */ GIM_Try, /*On fail goto*//*Label 2049*/ GIMT_Encode4(95764), // Rule ID 14082 // |
| 33831 | /* 95724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 33832 | /* 95727 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_512), |
| 33833 | /* 95732 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 33834 | /* 95735 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 33835 | /* 95738 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 33836 | /* 95741 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33837 | /* 95745 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33838 | /* 95749 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33839 | /* 95753 */ // (intrinsic_wo_chain:{ *:[v8i64] } 13388:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VAESDECLASTZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 33840 | /* 95753 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZrr), |
| 33841 | /* 95756 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33842 | /* 95758 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33843 | /* 95760 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33844 | /* 95762 */ GIR_RootConstrainSelectedInstOperands, |
| 33845 | /* 95763 */ // GIR_Coverage, 14082, |
| 33846 | /* 95763 */ GIR_EraseRootFromParent_Done, |
| 33847 | /* 95764 */ // Label 2049: @95764 |
| 33848 | /* 95764 */ GIM_Try, /*On fail goto*//*Label 2050*/ GIMT_Encode4(95809), // Rule ID 16793 // |
| 33849 | /* 95769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_512_HasSM4), |
| 33850 | /* 95772 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4512), |
| 33851 | /* 95777 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 33852 | /* 95780 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 33853 | /* 95783 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 33854 | /* 95786 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33855 | /* 95790 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33856 | /* 95794 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33857 | /* 95798 */ // (intrinsic_wo_chain:{ *:[v16i32] } 15001:{ *:[iPTR] }, VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VSM4KEY4Zrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 33858 | /* 95798 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Zrr), |
| 33859 | /* 95801 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33860 | /* 95803 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33861 | /* 95805 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33862 | /* 95807 */ GIR_RootConstrainSelectedInstOperands, |
| 33863 | /* 95808 */ // GIR_Coverage, 16793, |
| 33864 | /* 95808 */ GIR_EraseRootFromParent_Done, |
| 33865 | /* 95809 */ // Label 2050: @95809 |
| 33866 | /* 95809 */ GIM_Try, /*On fail goto*//*Label 2051*/ GIMT_Encode4(95854), // Rule ID 16799 // |
| 33867 | /* 95814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_512_HasSM4), |
| 33868 | /* 95817 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4512), |
| 33869 | /* 95822 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 33870 | /* 95825 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 33871 | /* 95828 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 33872 | /* 95831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33873 | /* 95835 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33874 | /* 95839 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33875 | /* 95843 */ // (intrinsic_wo_chain:{ *:[v16i32] } 15004:{ *:[iPTR] }, VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VSM4RNDS4Zrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 33876 | /* 95843 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Zrr), |
| 33877 | /* 95846 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33878 | /* 95848 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33879 | /* 95850 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33880 | /* 95852 */ GIR_RootConstrainSelectedInstOperands, |
| 33881 | /* 95853 */ // GIR_Coverage, 16799, |
| 33882 | /* 95853 */ GIR_EraseRootFromParent_Done, |
| 33883 | /* 95854 */ // Label 2051: @95854 |
| 33884 | /* 95854 */ GIM_Reject, |
| 33885 | /* 95855 */ // Label 1934: @95855 |
| 33886 | /* 95855 */ GIM_Try, /*On fail goto*//*Label 2052*/ GIMT_Encode4(100441), |
| 33887 | /* 95860 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/5, |
| 33888 | /* 95863 */ GIM_Try, /*On fail goto*//*Label 2053*/ GIMT_Encode4(95944), // Rule ID 23534 // |
| 33889 | /* 95868 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 33890 | /* 95871 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dpps), |
| 33891 | /* 95876 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33892 | /* 95879 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33893 | /* 95882 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33894 | /* 95885 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33895 | /* 95889 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33896 | /* 95893 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33897 | /* 95897 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33898 | /* 95900 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33899 | /* 95904 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33900 | /* 95908 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33901 | /* 95912 */ // MIs[0] src3 |
| 33902 | /* 95912 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 33903 | /* 95915 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33904 | /* 95917 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33905 | /* 95924 */ // (intrinsic_wo_chain:{ *:[v4f32] } 14811:{ *:[iPTR] }, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1, (timm:{ *:[i8] }):$src3) => (VDPPSrmi:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 33906 | /* 95924 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSrmi), |
| 33907 | /* 95927 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33908 | /* 95929 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33909 | /* 95931 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33910 | /* 95935 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33911 | /* 95937 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33912 | /* 95942 */ GIR_RootConstrainSelectedInstOperands, |
| 33913 | /* 95943 */ // GIR_Coverage, 23534, |
| 33914 | /* 95943 */ GIR_EraseRootFromParent_Done, |
| 33915 | /* 95944 */ // Label 2053: @95944 |
| 33916 | /* 95944 */ GIM_Try, /*On fail goto*//*Label 2054*/ GIMT_Encode4(96025), // Rule ID 23535 // |
| 33917 | /* 95949 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 33918 | /* 95952 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dppd), |
| 33919 | /* 95957 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33920 | /* 95960 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33921 | /* 95963 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33922 | /* 95966 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33923 | /* 95970 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33924 | /* 95974 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33925 | /* 95978 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33926 | /* 95981 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33927 | /* 95985 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33928 | /* 95989 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33929 | /* 95993 */ // MIs[0] src3 |
| 33930 | /* 95993 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 33931 | /* 95996 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33932 | /* 95998 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33933 | /* 96005 */ // (intrinsic_wo_chain:{ *:[v2f64] } 14810:{ *:[iPTR] }, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1, (timm:{ *:[i8] }):$src3) => (VDPPDrmi:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 33934 | /* 96005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPDrmi), |
| 33935 | /* 96008 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33936 | /* 96010 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33937 | /* 96012 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33938 | /* 96016 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33939 | /* 96018 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33940 | /* 96023 */ GIR_RootConstrainSelectedInstOperands, |
| 33941 | /* 96024 */ // GIR_Coverage, 23535, |
| 33942 | /* 96024 */ GIR_EraseRootFromParent_Done, |
| 33943 | /* 96025 */ // Label 2054: @96025 |
| 33944 | /* 96025 */ GIM_Try, /*On fail goto*//*Label 2055*/ GIMT_Encode4(96106), // Rule ID 23536 // |
| 33945 | /* 96030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 33946 | /* 96033 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_dp_ps_256), |
| 33947 | /* 96038 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 33948 | /* 96041 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 33949 | /* 96044 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 33950 | /* 96047 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33951 | /* 96051 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33952 | /* 96055 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33953 | /* 96059 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33954 | /* 96062 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33955 | /* 96066 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33956 | /* 96070 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33957 | /* 96074 */ // MIs[0] src3 |
| 33958 | /* 96074 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 33959 | /* 96077 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33960 | /* 96079 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33961 | /* 96086 */ // (intrinsic_wo_chain:{ *:[v8f32] } 13421:{ *:[iPTR] }, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1, (timm:{ *:[i8] }):$src3) => (VDPPSYrmi:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 33962 | /* 96086 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSYrmi), |
| 33963 | /* 96089 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33964 | /* 96091 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33965 | /* 96093 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33966 | /* 96097 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33967 | /* 96099 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33968 | /* 96104 */ GIR_RootConstrainSelectedInstOperands, |
| 33969 | /* 96105 */ // GIR_Coverage, 23536, |
| 33970 | /* 96105 */ GIR_EraseRootFromParent_Done, |
| 33971 | /* 96106 */ // Label 2055: @96106 |
| 33972 | /* 96106 */ GIM_Try, /*On fail goto*//*Label 2056*/ GIMT_Encode4(96187), // Rule ID 3254 // |
| 33973 | /* 96111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 33974 | /* 96114 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dpps), |
| 33975 | /* 96119 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33976 | /* 96122 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33977 | /* 96125 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33978 | /* 96128 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33979 | /* 96132 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33980 | /* 96136 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 33981 | /* 96140 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33982 | /* 96144 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33983 | /* 96147 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33984 | /* 96151 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33985 | /* 96155 */ // MIs[0] src3 |
| 33986 | /* 96155 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 33987 | /* 96158 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33988 | /* 96160 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33989 | /* 96167 */ // (intrinsic_wo_chain:{ *:[v4f32] } 14811:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i8] }):$src3) => (VDPPSrmi:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 33990 | /* 96167 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSrmi), |
| 33991 | /* 96170 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33992 | /* 96172 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33993 | /* 96174 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33994 | /* 96178 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33995 | /* 96180 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33996 | /* 96185 */ GIR_RootConstrainSelectedInstOperands, |
| 33997 | /* 96186 */ // GIR_Coverage, 3254, |
| 33998 | /* 96186 */ GIR_EraseRootFromParent_Done, |
| 33999 | /* 96187 */ // Label 2056: @96187 |
| 34000 | /* 96187 */ GIM_Try, /*On fail goto*//*Label 2057*/ GIMT_Encode4(96268), // Rule ID 3256 // |
| 34001 | /* 96192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 34002 | /* 96195 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dppd), |
| 34003 | /* 96200 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34004 | /* 96203 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 34005 | /* 96206 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 34006 | /* 96209 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34007 | /* 96213 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34008 | /* 96217 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34009 | /* 96221 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34010 | /* 96225 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34011 | /* 96228 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34012 | /* 96232 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34013 | /* 96236 */ // MIs[0] src3 |
| 34014 | /* 96236 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34015 | /* 96239 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34016 | /* 96241 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34017 | /* 96248 */ // (intrinsic_wo_chain:{ *:[v2f64] } 14810:{ *:[iPTR] }, VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i8] }):$src3) => (VDPPDrmi:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34018 | /* 96248 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPDrmi), |
| 34019 | /* 96251 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34020 | /* 96253 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34021 | /* 96255 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34022 | /* 96259 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34023 | /* 96261 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34024 | /* 96266 */ GIR_RootConstrainSelectedInstOperands, |
| 34025 | /* 96267 */ // GIR_Coverage, 3256, |
| 34026 | /* 96267 */ GIR_EraseRootFromParent_Done, |
| 34027 | /* 96268 */ // Label 2057: @96268 |
| 34028 | /* 96268 */ GIM_Try, /*On fail goto*//*Label 2058*/ GIMT_Encode4(96349), // Rule ID 3258 // |
| 34029 | /* 96273 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 34030 | /* 96276 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_dp_ps_256), |
| 34031 | /* 96281 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 34032 | /* 96284 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 34033 | /* 96287 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 34034 | /* 96290 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34035 | /* 96294 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34036 | /* 96298 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34037 | /* 96302 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34038 | /* 96306 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34039 | /* 96309 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34040 | /* 96313 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34041 | /* 96317 */ // MIs[0] src3 |
| 34042 | /* 96317 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34043 | /* 96320 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34044 | /* 96322 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34045 | /* 96329 */ // (intrinsic_wo_chain:{ *:[v8f32] } 13421:{ *:[iPTR] }, VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i8] }):$src3) => (VDPPSYrmi:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34046 | /* 96329 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSYrmi), |
| 34047 | /* 96332 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34048 | /* 96334 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34049 | /* 96336 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34050 | /* 96340 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34051 | /* 96342 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34052 | /* 96347 */ GIR_RootConstrainSelectedInstOperands, |
| 34053 | /* 96348 */ // GIR_Coverage, 3258, |
| 34054 | /* 96348 */ GIR_EraseRootFromParent_Done, |
| 34055 | /* 96349 */ // Label 2058: @96349 |
| 34056 | /* 96349 */ GIM_Try, /*On fail goto*//*Label 2059*/ GIMT_Encode4(96430), // Rule ID 3374 // |
| 34057 | /* 96354 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_HasPCLMUL_NoVLX_Or_NoVPCLMULQDQ), |
| 34058 | /* 96357 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq), |
| 34059 | /* 96362 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34060 | /* 96365 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 34061 | /* 96368 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 34062 | /* 96371 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34063 | /* 96375 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34064 | /* 96379 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34065 | /* 96383 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34066 | /* 96387 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34067 | /* 96390 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34068 | /* 96394 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34069 | /* 96398 */ // MIs[0] src3 |
| 34070 | /* 96398 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34071 | /* 96401 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34072 | /* 96403 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34073 | /* 96410 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14662:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i8] }):$src3) => (VPCLMULQDQrmi:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34074 | /* 96410 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCLMULQDQrmi), |
| 34075 | /* 96413 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34076 | /* 96415 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34077 | /* 96417 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34078 | /* 96421 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34079 | /* 96423 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34080 | /* 96428 */ GIR_RootConstrainSelectedInstOperands, |
| 34081 | /* 96429 */ // GIR_Coverage, 3374, |
| 34082 | /* 96429 */ GIR_EraseRootFromParent_Done, |
| 34083 | /* 96430 */ // Label 2059: @96430 |
| 34084 | /* 96430 */ GIM_Try, /*On fail goto*//*Label 2060*/ GIMT_Encode4(96511), // Rule ID 3376 // |
| 34085 | /* 96435 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPCLMULQDQ_NoVLX), |
| 34086 | /* 96438 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq_256), |
| 34087 | /* 96443 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 34088 | /* 96446 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 34089 | /* 96449 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 34090 | /* 96452 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34091 | /* 96456 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34092 | /* 96460 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34093 | /* 96464 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34094 | /* 96468 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34095 | /* 96471 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34096 | /* 96475 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34097 | /* 96479 */ // MIs[0] src3 |
| 34098 | /* 96479 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34099 | /* 96482 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34100 | /* 96484 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34101 | /* 96491 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14663:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i8] }):$src3) => (VPCLMULQDQYrmi:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34102 | /* 96491 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCLMULQDQYrmi), |
| 34103 | /* 96494 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34104 | /* 96496 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34105 | /* 96498 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34106 | /* 96502 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34107 | /* 96504 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34108 | /* 96509 */ GIR_RootConstrainSelectedInstOperands, |
| 34109 | /* 96510 */ // GIR_Coverage, 3376, |
| 34110 | /* 96510 */ GIR_EraseRootFromParent_Done, |
| 34111 | /* 96511 */ // Label 2060: @96511 |
| 34112 | /* 96511 */ GIM_Try, /*On fail goto*//*Label 2061*/ GIMT_Encode4(96592), // Rule ID 14085 // |
| 34113 | /* 96516 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVPCLMULQDQ), |
| 34114 | /* 96519 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq_512), |
| 34115 | /* 96524 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 34116 | /* 96527 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 34117 | /* 96530 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 34118 | /* 96533 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 34119 | /* 96537 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 34120 | /* 96541 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34121 | /* 96545 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34122 | /* 96549 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34123 | /* 96552 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34124 | /* 96556 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34125 | /* 96560 */ // MIs[0] src3 |
| 34126 | /* 96560 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34127 | /* 96563 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34128 | /* 96565 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34129 | /* 96572 */ // (intrinsic_wo_chain:{ *:[v8i64] } 14664:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i8] }):$src3) => (VPCLMULQDQZrmi:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34130 | /* 96572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCLMULQDQZrmi), |
| 34131 | /* 96575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34132 | /* 96577 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34133 | /* 96579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34134 | /* 96583 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34135 | /* 96585 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34136 | /* 96590 */ GIR_RootConstrainSelectedInstOperands, |
| 34137 | /* 96591 */ // GIR_Coverage, 14085, |
| 34138 | /* 96591 */ GIR_EraseRootFromParent_Done, |
| 34139 | /* 96592 */ // Label 2061: @96592 |
| 34140 | /* 96592 */ GIM_Try, /*On fail goto*//*Label 2062*/ GIMT_Encode4(96673), // Rule ID 14087 // |
| 34141 | /* 96597 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPCLMULQDQ), |
| 34142 | /* 96600 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq), |
| 34143 | /* 96605 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34144 | /* 96608 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 34145 | /* 96611 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 34146 | /* 96614 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 34147 | /* 96618 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 34148 | /* 96622 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34149 | /* 96626 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34150 | /* 96630 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34151 | /* 96633 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34152 | /* 96637 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34153 | /* 96641 */ // MIs[0] src3 |
| 34154 | /* 96641 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34155 | /* 96644 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34156 | /* 96646 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34157 | /* 96653 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14662:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i8] }):$src3) => (VPCLMULQDQZ128rmi:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34158 | /* 96653 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCLMULQDQZ128rmi), |
| 34159 | /* 96656 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34160 | /* 96658 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34161 | /* 96660 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34162 | /* 96664 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34163 | /* 96666 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34164 | /* 96671 */ GIR_RootConstrainSelectedInstOperands, |
| 34165 | /* 96672 */ // GIR_Coverage, 14087, |
| 34166 | /* 96672 */ GIR_EraseRootFromParent_Done, |
| 34167 | /* 96673 */ // Label 2062: @96673 |
| 34168 | /* 96673 */ GIM_Try, /*On fail goto*//*Label 2063*/ GIMT_Encode4(96754), // Rule ID 14089 // |
| 34169 | /* 96678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPCLMULQDQ), |
| 34170 | /* 96681 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq_256), |
| 34171 | /* 96686 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 34172 | /* 96689 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 34173 | /* 96692 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 34174 | /* 96695 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 34175 | /* 96699 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 34176 | /* 96703 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34177 | /* 96707 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34178 | /* 96711 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34179 | /* 96714 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34180 | /* 96718 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34181 | /* 96722 */ // MIs[0] src3 |
| 34182 | /* 96722 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34183 | /* 96725 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34184 | /* 96727 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34185 | /* 96734 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14663:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i8] }):$src3) => (VPCLMULQDQZ256rmi:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34186 | /* 96734 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCLMULQDQZ256rmi), |
| 34187 | /* 96737 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34188 | /* 96739 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34189 | /* 96741 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34190 | /* 96745 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34191 | /* 96747 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34192 | /* 96752 */ GIR_RootConstrainSelectedInstOperands, |
| 34193 | /* 96753 */ // GIR_Coverage, 14089, |
| 34194 | /* 96753 */ GIR_EraseRootFromParent_Done, |
| 34195 | /* 96754 */ // Label 2063: @96754 |
| 34196 | /* 96754 */ GIM_Try, /*On fail goto*//*Label 2064*/ GIMT_Encode4(96839), // Rule ID 23336 // |
| 34197 | /* 96759 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34198 | /* 96762 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcswd), |
| 34199 | /* 96767 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34200 | /* 96770 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34201 | /* 96773 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34202 | /* 96776 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34203 | /* 96779 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34204 | /* 96783 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34205 | /* 96787 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34206 | /* 96791 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34207 | /* 96794 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34208 | /* 96798 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34209 | /* 96802 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34210 | /* 96806 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34211 | /* 96810 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34212 | /* 96812 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34213 | /* 96819 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15056:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v4i32] }:$src3) => (VPMADCSWDrm:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34214 | /* 96819 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSWDrm), |
| 34215 | /* 96822 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34216 | /* 96824 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34217 | /* 96826 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34218 | /* 96830 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34219 | /* 96832 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34220 | /* 96837 */ GIR_RootConstrainSelectedInstOperands, |
| 34221 | /* 96838 */ // GIR_Coverage, 23336, |
| 34222 | /* 96838 */ GIR_EraseRootFromParent_Done, |
| 34223 | /* 96839 */ // Label 2064: @96839 |
| 34224 | /* 96839 */ GIM_Try, /*On fail goto*//*Label 2065*/ GIMT_Encode4(96924), // Rule ID 23337 // |
| 34225 | /* 96844 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34226 | /* 96847 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcsswd), |
| 34227 | /* 96852 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34228 | /* 96855 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34229 | /* 96858 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34230 | /* 96861 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34231 | /* 96864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34232 | /* 96868 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34233 | /* 96872 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34234 | /* 96876 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34235 | /* 96879 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34236 | /* 96883 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34237 | /* 96887 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34238 | /* 96891 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34239 | /* 96895 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34240 | /* 96897 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34241 | /* 96904 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15055:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v4i32] }:$src3) => (VPMADCSSWDrm:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34242 | /* 96904 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSSWDrm), |
| 34243 | /* 96907 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34244 | /* 96909 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34245 | /* 96911 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34246 | /* 96915 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34247 | /* 96917 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34248 | /* 96922 */ GIR_RootConstrainSelectedInstOperands, |
| 34249 | /* 96923 */ // GIR_Coverage, 23337, |
| 34250 | /* 96923 */ GIR_EraseRootFromParent_Done, |
| 34251 | /* 96924 */ // Label 2065: @96924 |
| 34252 | /* 96924 */ GIM_Try, /*On fail goto*//*Label 2066*/ GIMT_Encode4(97009), // Rule ID 23338 // |
| 34253 | /* 96929 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34254 | /* 96932 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsww), |
| 34255 | /* 96937 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 34256 | /* 96940 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34257 | /* 96943 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34258 | /* 96946 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 34259 | /* 96949 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34260 | /* 96953 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34261 | /* 96957 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34262 | /* 96961 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34263 | /* 96964 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34264 | /* 96968 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34265 | /* 96972 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34266 | /* 96976 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34267 | /* 96980 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34268 | /* 96982 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34269 | /* 96989 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15054:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src3) => (VPMACSWWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 34270 | /* 96989 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWWrm), |
| 34271 | /* 96992 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34272 | /* 96994 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34273 | /* 96996 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34274 | /* 97000 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34275 | /* 97002 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34276 | /* 97007 */ GIR_RootConstrainSelectedInstOperands, |
| 34277 | /* 97008 */ // GIR_Coverage, 23338, |
| 34278 | /* 97008 */ GIR_EraseRootFromParent_Done, |
| 34279 | /* 97009 */ // Label 2066: @97009 |
| 34280 | /* 97009 */ GIM_Try, /*On fail goto*//*Label 2067*/ GIMT_Encode4(97094), // Rule ID 23339 // |
| 34281 | /* 97014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34282 | /* 97017 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacswd), |
| 34283 | /* 97022 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34284 | /* 97025 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34285 | /* 97028 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34286 | /* 97031 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34287 | /* 97034 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34288 | /* 97038 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34289 | /* 97042 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34290 | /* 97046 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34291 | /* 97049 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34292 | /* 97053 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34293 | /* 97057 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34294 | /* 97061 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34295 | /* 97065 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34296 | /* 97067 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34297 | /* 97074 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15053:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v4i32] }:$src3) => (VPMACSWDrm:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34298 | /* 97074 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWDrm), |
| 34299 | /* 97077 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34300 | /* 97079 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34301 | /* 97081 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34302 | /* 97085 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34303 | /* 97087 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34304 | /* 97092 */ GIR_RootConstrainSelectedInstOperands, |
| 34305 | /* 97093 */ // GIR_Coverage, 23339, |
| 34306 | /* 97093 */ GIR_EraseRootFromParent_Done, |
| 34307 | /* 97094 */ // Label 2067: @97094 |
| 34308 | /* 97094 */ GIM_Try, /*On fail goto*//*Label 2068*/ GIMT_Encode4(97179), // Rule ID 23340 // |
| 34309 | /* 97099 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34310 | /* 97102 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssww), |
| 34311 | /* 97107 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 34312 | /* 97110 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34313 | /* 97113 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34314 | /* 97116 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 34315 | /* 97119 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34316 | /* 97123 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34317 | /* 97127 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34318 | /* 97131 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34319 | /* 97134 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34320 | /* 97138 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34321 | /* 97142 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34322 | /* 97146 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34323 | /* 97150 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34324 | /* 97152 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34325 | /* 97159 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15052:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src3) => (VPMACSSWWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 34326 | /* 97159 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWWrm), |
| 34327 | /* 97162 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34328 | /* 97164 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34329 | /* 97166 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34330 | /* 97170 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34331 | /* 97172 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34332 | /* 97177 */ GIR_RootConstrainSelectedInstOperands, |
| 34333 | /* 97178 */ // GIR_Coverage, 23340, |
| 34334 | /* 97178 */ GIR_EraseRootFromParent_Done, |
| 34335 | /* 97179 */ // Label 2068: @97179 |
| 34336 | /* 97179 */ GIM_Try, /*On fail goto*//*Label 2069*/ GIMT_Encode4(97264), // Rule ID 23341 // |
| 34337 | /* 97184 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34338 | /* 97187 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsswd), |
| 34339 | /* 97192 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34340 | /* 97195 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34341 | /* 97198 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34342 | /* 97201 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34343 | /* 97204 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34344 | /* 97208 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34345 | /* 97212 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34346 | /* 97216 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34347 | /* 97219 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34348 | /* 97223 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34349 | /* 97227 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34350 | /* 97231 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34351 | /* 97235 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34352 | /* 97237 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34353 | /* 97244 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15051:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v4i32] }:$src3) => (VPMACSSWDrm:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34354 | /* 97244 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWDrm), |
| 34355 | /* 97247 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34356 | /* 97249 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34357 | /* 97251 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34358 | /* 97255 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34359 | /* 97257 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34360 | /* 97262 */ GIR_RootConstrainSelectedInstOperands, |
| 34361 | /* 97263 */ // GIR_Coverage, 23341, |
| 34362 | /* 97263 */ GIR_EraseRootFromParent_Done, |
| 34363 | /* 97264 */ // Label 2069: @97264 |
| 34364 | /* 97264 */ GIM_Try, /*On fail goto*//*Label 2070*/ GIMT_Encode4(97349), // Rule ID 23342 // |
| 34365 | /* 97269 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34366 | /* 97272 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdql), |
| 34367 | /* 97277 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34368 | /* 97280 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34369 | /* 97283 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34370 | /* 97286 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34371 | /* 97289 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34372 | /* 97293 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34373 | /* 97297 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34374 | /* 97301 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34375 | /* 97304 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34376 | /* 97308 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34377 | /* 97312 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34378 | /* 97316 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34379 | /* 97320 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34380 | /* 97322 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34381 | /* 97329 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15050:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v2i64] }:$src3) => (VPMACSSDQLrm:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34382 | /* 97329 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQLrm), |
| 34383 | /* 97332 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34384 | /* 97334 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34385 | /* 97336 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34386 | /* 97340 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34387 | /* 97342 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34388 | /* 97347 */ GIR_RootConstrainSelectedInstOperands, |
| 34389 | /* 97348 */ // GIR_Coverage, 23342, |
| 34390 | /* 97348 */ GIR_EraseRootFromParent_Done, |
| 34391 | /* 97349 */ // Label 2070: @97349 |
| 34392 | /* 97349 */ GIM_Try, /*On fail goto*//*Label 2071*/ GIMT_Encode4(97434), // Rule ID 23343 // |
| 34393 | /* 97354 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34394 | /* 97357 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdqh), |
| 34395 | /* 97362 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34396 | /* 97365 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34397 | /* 97368 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34398 | /* 97371 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34399 | /* 97374 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34400 | /* 97378 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34401 | /* 97382 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34402 | /* 97386 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34403 | /* 97389 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34404 | /* 97393 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34405 | /* 97397 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34406 | /* 97401 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34407 | /* 97405 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34408 | /* 97407 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34409 | /* 97414 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15049:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v2i64] }:$src3) => (VPMACSSDQHrm:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34410 | /* 97414 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQHrm), |
| 34411 | /* 97417 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34412 | /* 97419 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34413 | /* 97421 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34414 | /* 97425 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34415 | /* 97427 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34416 | /* 97432 */ GIR_RootConstrainSelectedInstOperands, |
| 34417 | /* 97433 */ // GIR_Coverage, 23343, |
| 34418 | /* 97433 */ GIR_EraseRootFromParent_Done, |
| 34419 | /* 97434 */ // Label 2071: @97434 |
| 34420 | /* 97434 */ GIM_Try, /*On fail goto*//*Label 2072*/ GIMT_Encode4(97519), // Rule ID 23344 // |
| 34421 | /* 97439 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34422 | /* 97442 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdd), |
| 34423 | /* 97447 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34424 | /* 97450 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34425 | /* 97453 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34426 | /* 97456 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34427 | /* 97459 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34428 | /* 97463 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34429 | /* 97467 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34430 | /* 97471 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34431 | /* 97474 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34432 | /* 97478 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34433 | /* 97482 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34434 | /* 97486 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34435 | /* 97490 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34436 | /* 97492 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34437 | /* 97499 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15048:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src3) => (VPMACSSDDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34438 | /* 97499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDDrm), |
| 34439 | /* 97502 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34440 | /* 97504 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34441 | /* 97506 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34442 | /* 97510 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34443 | /* 97512 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34444 | /* 97517 */ GIR_RootConstrainSelectedInstOperands, |
| 34445 | /* 97518 */ // GIR_Coverage, 23344, |
| 34446 | /* 97518 */ GIR_EraseRootFromParent_Done, |
| 34447 | /* 97519 */ // Label 2072: @97519 |
| 34448 | /* 97519 */ GIM_Try, /*On fail goto*//*Label 2073*/ GIMT_Encode4(97604), // Rule ID 23345 // |
| 34449 | /* 97524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34450 | /* 97527 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdql), |
| 34451 | /* 97532 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34452 | /* 97535 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34453 | /* 97538 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34454 | /* 97541 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34455 | /* 97544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34456 | /* 97548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34457 | /* 97552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34458 | /* 97556 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34459 | /* 97559 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34460 | /* 97563 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34461 | /* 97567 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34462 | /* 97571 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34463 | /* 97575 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34464 | /* 97577 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34465 | /* 97584 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15047:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v2i64] }:$src3) => (VPMACSDQLrm:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34466 | /* 97584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQLrm), |
| 34467 | /* 97587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34468 | /* 97589 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34469 | /* 97591 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34470 | /* 97595 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34471 | /* 97597 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34472 | /* 97602 */ GIR_RootConstrainSelectedInstOperands, |
| 34473 | /* 97603 */ // GIR_Coverage, 23345, |
| 34474 | /* 97603 */ GIR_EraseRootFromParent_Done, |
| 34475 | /* 97604 */ // Label 2073: @97604 |
| 34476 | /* 97604 */ GIM_Try, /*On fail goto*//*Label 2074*/ GIMT_Encode4(97689), // Rule ID 23346 // |
| 34477 | /* 97609 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34478 | /* 97612 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdqh), |
| 34479 | /* 97617 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34480 | /* 97620 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34481 | /* 97623 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34482 | /* 97626 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34483 | /* 97629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34484 | /* 97633 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34485 | /* 97637 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34486 | /* 97641 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34487 | /* 97644 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34488 | /* 97648 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34489 | /* 97652 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34490 | /* 97656 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34491 | /* 97660 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34492 | /* 97662 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34493 | /* 97669 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15046:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v2i64] }:$src3) => (VPMACSDQHrm:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34494 | /* 97669 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQHrm), |
| 34495 | /* 97672 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34496 | /* 97674 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34497 | /* 97676 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34498 | /* 97680 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34499 | /* 97682 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34500 | /* 97687 */ GIR_RootConstrainSelectedInstOperands, |
| 34501 | /* 97688 */ // GIR_Coverage, 23346, |
| 34502 | /* 97688 */ GIR_EraseRootFromParent_Done, |
| 34503 | /* 97689 */ // Label 2074: @97689 |
| 34504 | /* 97689 */ GIM_Try, /*On fail goto*//*Label 2075*/ GIMT_Encode4(97774), // Rule ID 23347 // |
| 34505 | /* 97694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34506 | /* 97697 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdd), |
| 34507 | /* 97702 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34508 | /* 97705 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34509 | /* 97708 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34510 | /* 97711 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34511 | /* 97714 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34512 | /* 97718 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 34513 | /* 97722 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34514 | /* 97726 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34515 | /* 97729 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34516 | /* 97733 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34517 | /* 97737 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34518 | /* 97741 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34519 | /* 97745 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34520 | /* 97747 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34521 | /* 97754 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15045:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src3) => (VPMACSDDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34522 | /* 97754 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDDrm), |
| 34523 | /* 97757 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34524 | /* 97759 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 34525 | /* 97761 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34526 | /* 97765 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34527 | /* 97767 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34528 | /* 97772 */ GIR_RootConstrainSelectedInstOperands, |
| 34529 | /* 97773 */ // GIR_Coverage, 23347, |
| 34530 | /* 97773 */ GIR_EraseRootFromParent_Done, |
| 34531 | /* 97774 */ // Label 2075: @97774 |
| 34532 | /* 97774 */ GIM_Try, /*On fail goto*//*Label 2076*/ GIMT_Encode4(97859), // Rule ID 1620 // |
| 34533 | /* 97779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34534 | /* 97782 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcswd), |
| 34535 | /* 97787 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34536 | /* 97790 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34537 | /* 97793 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34538 | /* 97796 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34539 | /* 97799 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34540 | /* 97803 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34541 | /* 97807 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34542 | /* 97811 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34543 | /* 97815 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34544 | /* 97818 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34545 | /* 97822 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34546 | /* 97826 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34547 | /* 97830 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34548 | /* 97832 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34549 | /* 97839 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15056:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src3) => (VPMADCSWDrm:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34550 | /* 97839 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSWDrm), |
| 34551 | /* 97842 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34552 | /* 97844 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34553 | /* 97846 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34554 | /* 97850 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34555 | /* 97852 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34556 | /* 97857 */ GIR_RootConstrainSelectedInstOperands, |
| 34557 | /* 97858 */ // GIR_Coverage, 1620, |
| 34558 | /* 97858 */ GIR_EraseRootFromParent_Done, |
| 34559 | /* 97859 */ // Label 2076: @97859 |
| 34560 | /* 97859 */ GIM_Try, /*On fail goto*//*Label 2077*/ GIMT_Encode4(97944), // Rule ID 1622 // |
| 34561 | /* 97864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34562 | /* 97867 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcsswd), |
| 34563 | /* 97872 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34564 | /* 97875 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34565 | /* 97878 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34566 | /* 97881 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34567 | /* 97884 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34568 | /* 97888 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34569 | /* 97892 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34570 | /* 97896 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34571 | /* 97900 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34572 | /* 97903 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34573 | /* 97907 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34574 | /* 97911 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34575 | /* 97915 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34576 | /* 97917 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34577 | /* 97924 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15055:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src3) => (VPMADCSSWDrm:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34578 | /* 97924 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSSWDrm), |
| 34579 | /* 97927 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34580 | /* 97929 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34581 | /* 97931 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34582 | /* 97935 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34583 | /* 97937 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34584 | /* 97942 */ GIR_RootConstrainSelectedInstOperands, |
| 34585 | /* 97943 */ // GIR_Coverage, 1622, |
| 34586 | /* 97943 */ GIR_EraseRootFromParent_Done, |
| 34587 | /* 97944 */ // Label 2077: @97944 |
| 34588 | /* 97944 */ GIM_Try, /*On fail goto*//*Label 2078*/ GIMT_Encode4(98029), // Rule ID 1624 // |
| 34589 | /* 97949 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34590 | /* 97952 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsww), |
| 34591 | /* 97957 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 34592 | /* 97960 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34593 | /* 97963 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34594 | /* 97966 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 34595 | /* 97969 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34596 | /* 97973 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34597 | /* 97977 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34598 | /* 97981 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34599 | /* 97985 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34600 | /* 97988 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34601 | /* 97992 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34602 | /* 97996 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34603 | /* 98000 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34604 | /* 98002 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34605 | /* 98009 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15054:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src3) => (VPMACSWWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 34606 | /* 98009 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWWrm), |
| 34607 | /* 98012 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34608 | /* 98014 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34609 | /* 98016 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34610 | /* 98020 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34611 | /* 98022 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34612 | /* 98027 */ GIR_RootConstrainSelectedInstOperands, |
| 34613 | /* 98028 */ // GIR_Coverage, 1624, |
| 34614 | /* 98028 */ GIR_EraseRootFromParent_Done, |
| 34615 | /* 98029 */ // Label 2078: @98029 |
| 34616 | /* 98029 */ GIM_Try, /*On fail goto*//*Label 2079*/ GIMT_Encode4(98114), // Rule ID 1626 // |
| 34617 | /* 98034 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34618 | /* 98037 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacswd), |
| 34619 | /* 98042 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34620 | /* 98045 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34621 | /* 98048 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34622 | /* 98051 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34623 | /* 98054 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34624 | /* 98058 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34625 | /* 98062 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34626 | /* 98066 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34627 | /* 98070 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34628 | /* 98073 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34629 | /* 98077 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34630 | /* 98081 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34631 | /* 98085 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34632 | /* 98087 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34633 | /* 98094 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15053:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src3) => (VPMACSWDrm:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34634 | /* 98094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWDrm), |
| 34635 | /* 98097 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34636 | /* 98099 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34637 | /* 98101 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34638 | /* 98105 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34639 | /* 98107 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34640 | /* 98112 */ GIR_RootConstrainSelectedInstOperands, |
| 34641 | /* 98113 */ // GIR_Coverage, 1626, |
| 34642 | /* 98113 */ GIR_EraseRootFromParent_Done, |
| 34643 | /* 98114 */ // Label 2079: @98114 |
| 34644 | /* 98114 */ GIM_Try, /*On fail goto*//*Label 2080*/ GIMT_Encode4(98199), // Rule ID 1628 // |
| 34645 | /* 98119 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34646 | /* 98122 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssww), |
| 34647 | /* 98127 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 34648 | /* 98130 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34649 | /* 98133 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34650 | /* 98136 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 34651 | /* 98139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34652 | /* 98143 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34653 | /* 98147 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34654 | /* 98151 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34655 | /* 98155 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34656 | /* 98158 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34657 | /* 98162 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34658 | /* 98166 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34659 | /* 98170 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34660 | /* 98172 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34661 | /* 98179 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15052:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src3) => (VPMACSSWWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 34662 | /* 98179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWWrm), |
| 34663 | /* 98182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34664 | /* 98184 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34665 | /* 98186 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34666 | /* 98190 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34667 | /* 98192 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34668 | /* 98197 */ GIR_RootConstrainSelectedInstOperands, |
| 34669 | /* 98198 */ // GIR_Coverage, 1628, |
| 34670 | /* 98198 */ GIR_EraseRootFromParent_Done, |
| 34671 | /* 98199 */ // Label 2080: @98199 |
| 34672 | /* 98199 */ GIM_Try, /*On fail goto*//*Label 2081*/ GIMT_Encode4(98284), // Rule ID 1630 // |
| 34673 | /* 98204 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34674 | /* 98207 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsswd), |
| 34675 | /* 98212 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34676 | /* 98215 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34677 | /* 98218 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34678 | /* 98221 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34679 | /* 98224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34680 | /* 98228 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34681 | /* 98232 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34682 | /* 98236 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34683 | /* 98240 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34684 | /* 98243 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34685 | /* 98247 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34686 | /* 98251 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34687 | /* 98255 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34688 | /* 98257 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34689 | /* 98264 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15051:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src3) => (VPMACSSWDrm:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34690 | /* 98264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWDrm), |
| 34691 | /* 98267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34692 | /* 98269 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34693 | /* 98271 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34694 | /* 98275 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34695 | /* 98277 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34696 | /* 98282 */ GIR_RootConstrainSelectedInstOperands, |
| 34697 | /* 98283 */ // GIR_Coverage, 1630, |
| 34698 | /* 98283 */ GIR_EraseRootFromParent_Done, |
| 34699 | /* 98284 */ // Label 2081: @98284 |
| 34700 | /* 98284 */ GIM_Try, /*On fail goto*//*Label 2082*/ GIMT_Encode4(98369), // Rule ID 1632 // |
| 34701 | /* 98289 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34702 | /* 98292 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdql), |
| 34703 | /* 98297 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34704 | /* 98300 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34705 | /* 98303 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34706 | /* 98306 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34707 | /* 98309 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34708 | /* 98313 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34709 | /* 98317 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34710 | /* 98321 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34711 | /* 98325 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34712 | /* 98328 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34713 | /* 98332 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34714 | /* 98336 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34715 | /* 98340 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34716 | /* 98342 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34717 | /* 98349 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15050:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src3) => (VPMACSSDQLrm:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34718 | /* 98349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQLrm), |
| 34719 | /* 98352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34720 | /* 98354 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34721 | /* 98356 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34722 | /* 98360 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34723 | /* 98362 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34724 | /* 98367 */ GIR_RootConstrainSelectedInstOperands, |
| 34725 | /* 98368 */ // GIR_Coverage, 1632, |
| 34726 | /* 98368 */ GIR_EraseRootFromParent_Done, |
| 34727 | /* 98369 */ // Label 2082: @98369 |
| 34728 | /* 98369 */ GIM_Try, /*On fail goto*//*Label 2083*/ GIMT_Encode4(98454), // Rule ID 1634 // |
| 34729 | /* 98374 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34730 | /* 98377 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdqh), |
| 34731 | /* 98382 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34732 | /* 98385 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34733 | /* 98388 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34734 | /* 98391 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34735 | /* 98394 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34736 | /* 98398 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34737 | /* 98402 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34738 | /* 98406 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34739 | /* 98410 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34740 | /* 98413 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34741 | /* 98417 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34742 | /* 98421 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34743 | /* 98425 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34744 | /* 98427 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34745 | /* 98434 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15049:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src3) => (VPMACSSDQHrm:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34746 | /* 98434 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQHrm), |
| 34747 | /* 98437 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34748 | /* 98439 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34749 | /* 98441 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34750 | /* 98445 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34751 | /* 98447 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34752 | /* 98452 */ GIR_RootConstrainSelectedInstOperands, |
| 34753 | /* 98453 */ // GIR_Coverage, 1634, |
| 34754 | /* 98453 */ GIR_EraseRootFromParent_Done, |
| 34755 | /* 98454 */ // Label 2083: @98454 |
| 34756 | /* 98454 */ GIM_Try, /*On fail goto*//*Label 2084*/ GIMT_Encode4(98539), // Rule ID 1636 // |
| 34757 | /* 98459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34758 | /* 98462 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdd), |
| 34759 | /* 98467 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34760 | /* 98470 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34761 | /* 98473 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34762 | /* 98476 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34763 | /* 98479 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34764 | /* 98483 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34765 | /* 98487 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34766 | /* 98491 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34767 | /* 98495 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34768 | /* 98498 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34769 | /* 98502 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34770 | /* 98506 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34771 | /* 98510 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34772 | /* 98512 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34773 | /* 98519 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15048:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src3) => (VPMACSSDDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34774 | /* 98519 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDDrm), |
| 34775 | /* 98522 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34776 | /* 98524 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34777 | /* 98526 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34778 | /* 98530 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34779 | /* 98532 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34780 | /* 98537 */ GIR_RootConstrainSelectedInstOperands, |
| 34781 | /* 98538 */ // GIR_Coverage, 1636, |
| 34782 | /* 98538 */ GIR_EraseRootFromParent_Done, |
| 34783 | /* 98539 */ // Label 2084: @98539 |
| 34784 | /* 98539 */ GIM_Try, /*On fail goto*//*Label 2085*/ GIMT_Encode4(98624), // Rule ID 1638 // |
| 34785 | /* 98544 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34786 | /* 98547 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdql), |
| 34787 | /* 98552 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34788 | /* 98555 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34789 | /* 98558 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34790 | /* 98561 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34791 | /* 98564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34792 | /* 98568 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34793 | /* 98572 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34794 | /* 98576 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34795 | /* 98580 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34796 | /* 98583 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34797 | /* 98587 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34798 | /* 98591 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34799 | /* 98595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34800 | /* 98597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34801 | /* 98604 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15047:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src3) => (VPMACSDQLrm:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34802 | /* 98604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQLrm), |
| 34803 | /* 98607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34804 | /* 98609 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34805 | /* 98611 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34806 | /* 98615 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34807 | /* 98617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34808 | /* 98622 */ GIR_RootConstrainSelectedInstOperands, |
| 34809 | /* 98623 */ // GIR_Coverage, 1638, |
| 34810 | /* 98623 */ GIR_EraseRootFromParent_Done, |
| 34811 | /* 98624 */ // Label 2085: @98624 |
| 34812 | /* 98624 */ GIM_Try, /*On fail goto*//*Label 2086*/ GIMT_Encode4(98709), // Rule ID 1640 // |
| 34813 | /* 98629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34814 | /* 98632 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdqh), |
| 34815 | /* 98637 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34816 | /* 98640 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34817 | /* 98643 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34818 | /* 98646 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34819 | /* 98649 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34820 | /* 98653 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34821 | /* 98657 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34822 | /* 98661 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34823 | /* 98665 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34824 | /* 98668 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34825 | /* 98672 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34826 | /* 98676 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34827 | /* 98680 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34828 | /* 98682 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34829 | /* 98689 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15046:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src3) => (VPMACSDQHrm:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34830 | /* 98689 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQHrm), |
| 34831 | /* 98692 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34832 | /* 98694 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34833 | /* 98696 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34834 | /* 98700 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34835 | /* 98702 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34836 | /* 98707 */ GIR_RootConstrainSelectedInstOperands, |
| 34837 | /* 98708 */ // GIR_Coverage, 1640, |
| 34838 | /* 98708 */ GIR_EraseRootFromParent_Done, |
| 34839 | /* 98709 */ // Label 2086: @98709 |
| 34840 | /* 98709 */ GIM_Try, /*On fail goto*//*Label 2087*/ GIMT_Encode4(98794), // Rule ID 1642 // |
| 34841 | /* 98714 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34842 | /* 98717 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdd), |
| 34843 | /* 98722 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34844 | /* 98725 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34845 | /* 98728 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34846 | /* 98731 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34847 | /* 98734 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34848 | /* 98738 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34849 | /* 98742 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34850 | /* 98746 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34851 | /* 98750 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34852 | /* 98753 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34853 | /* 98757 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34854 | /* 98761 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34855 | /* 98765 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34856 | /* 98767 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34857 | /* 98774 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15045:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src3) => (VPMACSDDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34858 | /* 98774 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDDrm), |
| 34859 | /* 98777 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34860 | /* 98779 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34861 | /* 98781 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34862 | /* 98785 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34863 | /* 98787 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34864 | /* 98792 */ GIR_RootConstrainSelectedInstOperands, |
| 34865 | /* 98793 */ // GIR_Coverage, 1642, |
| 34866 | /* 98793 */ GIR_EraseRootFromParent_Done, |
| 34867 | /* 98794 */ // Label 2087: @98794 |
| 34868 | /* 98794 */ GIM_Try, /*On fail goto*//*Label 2088*/ GIMT_Encode4(98879), // Rule ID 3559 // |
| 34869 | /* 98799 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 34870 | /* 98802 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm3msg1), |
| 34871 | /* 98807 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34872 | /* 98810 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34873 | /* 98813 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34874 | /* 98816 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34875 | /* 98819 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34876 | /* 98823 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34877 | /* 98827 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34878 | /* 98831 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/4, // MIs[1] |
| 34879 | /* 98835 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34880 | /* 98839 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34881 | /* 98842 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34882 | /* 98846 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34883 | /* 98850 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34884 | /* 98852 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34885 | /* 98859 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14996:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM3MSG1rm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 34886 | /* 98859 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3MSG1rm), |
| 34887 | /* 98862 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34888 | /* 98864 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34889 | /* 98866 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34890 | /* 98868 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 34891 | /* 98872 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34892 | /* 98877 */ GIR_RootConstrainSelectedInstOperands, |
| 34893 | /* 98878 */ // GIR_Coverage, 3559, |
| 34894 | /* 98878 */ GIR_EraseRootFromParent_Done, |
| 34895 | /* 98879 */ // Label 2088: @98879 |
| 34896 | /* 98879 */ GIM_Try, /*On fail goto*//*Label 2089*/ GIMT_Encode4(98964), // Rule ID 3561 // |
| 34897 | /* 98884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 34898 | /* 98887 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm3msg2), |
| 34899 | /* 98892 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34900 | /* 98895 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34901 | /* 98898 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34902 | /* 98901 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34903 | /* 98904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34904 | /* 98908 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34905 | /* 98912 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34906 | /* 98916 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/4, // MIs[1] |
| 34907 | /* 98920 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34908 | /* 98924 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34909 | /* 98927 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34910 | /* 98931 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34911 | /* 98935 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34912 | /* 98937 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34913 | /* 98944 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14997:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM3MSG2rm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 34914 | /* 98944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3MSG2rm), |
| 34915 | /* 98947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34916 | /* 98949 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34917 | /* 98951 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34918 | /* 98953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 34919 | /* 98957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34920 | /* 98962 */ GIR_RootConstrainSelectedInstOperands, |
| 34921 | /* 98963 */ // GIR_Coverage, 3561, |
| 34922 | /* 98963 */ GIR_EraseRootFromParent_Done, |
| 34923 | /* 98964 */ // Label 2089: @98964 |
| 34924 | /* 98964 */ GIM_Try, /*On fail goto*//*Label 2090*/ GIMT_Encode4(99014), // Rule ID 3253 // |
| 34925 | /* 98969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 34926 | /* 98972 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dpps), |
| 34927 | /* 98977 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34928 | /* 98980 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34929 | /* 98983 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34930 | /* 98986 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34931 | /* 98990 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34932 | /* 98994 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34933 | /* 98998 */ // MIs[0] src3 |
| 34934 | /* 98998 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34935 | /* 99001 */ // (intrinsic_wo_chain:{ *:[v4f32] } 14811:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, (timm:{ *:[i8] }):$src3) => (VDPPSrri:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34936 | /* 99001 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSrri), |
| 34937 | /* 99004 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34938 | /* 99006 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34939 | /* 99008 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34940 | /* 99010 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34941 | /* 99012 */ GIR_RootConstrainSelectedInstOperands, |
| 34942 | /* 99013 */ // GIR_Coverage, 3253, |
| 34943 | /* 99013 */ GIR_EraseRootFromParent_Done, |
| 34944 | /* 99014 */ // Label 2090: @99014 |
| 34945 | /* 99014 */ GIM_Try, /*On fail goto*//*Label 2091*/ GIMT_Encode4(99064), // Rule ID 3255 // |
| 34946 | /* 99019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 34947 | /* 99022 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dppd), |
| 34948 | /* 99027 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34949 | /* 99030 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 34950 | /* 99033 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 34951 | /* 99036 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34952 | /* 99040 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34953 | /* 99044 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34954 | /* 99048 */ // MIs[0] src3 |
| 34955 | /* 99048 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34956 | /* 99051 */ // (intrinsic_wo_chain:{ *:[v2f64] } 14810:{ *:[iPTR] }, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, (timm:{ *:[i8] }):$src3) => (VDPPDrri:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34957 | /* 99051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPDrri), |
| 34958 | /* 99054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34959 | /* 99056 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34960 | /* 99058 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34961 | /* 99060 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34962 | /* 99062 */ GIR_RootConstrainSelectedInstOperands, |
| 34963 | /* 99063 */ // GIR_Coverage, 3255, |
| 34964 | /* 99063 */ GIR_EraseRootFromParent_Done, |
| 34965 | /* 99064 */ // Label 2091: @99064 |
| 34966 | /* 99064 */ GIM_Try, /*On fail goto*//*Label 2092*/ GIMT_Encode4(99114), // Rule ID 3257 // |
| 34967 | /* 99069 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 34968 | /* 99072 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_dp_ps_256), |
| 34969 | /* 99077 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 34970 | /* 99080 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 34971 | /* 99083 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 34972 | /* 99086 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34973 | /* 99090 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34974 | /* 99094 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34975 | /* 99098 */ // MIs[0] src3 |
| 34976 | /* 99098 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34977 | /* 99101 */ // (intrinsic_wo_chain:{ *:[v8f32] } 13421:{ *:[iPTR] }, VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, (timm:{ *:[i8] }):$src3) => (VDPPSYrri:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34978 | /* 99101 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSYrri), |
| 34979 | /* 99104 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34980 | /* 99106 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34981 | /* 99108 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34982 | /* 99110 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34983 | /* 99112 */ GIR_RootConstrainSelectedInstOperands, |
| 34984 | /* 99113 */ // GIR_Coverage, 3257, |
| 34985 | /* 99113 */ GIR_EraseRootFromParent_Done, |
| 34986 | /* 99114 */ // Label 2092: @99114 |
| 34987 | /* 99114 */ GIM_Try, /*On fail goto*//*Label 2093*/ GIMT_Encode4(99164), // Rule ID 3263 // |
| 34988 | /* 99119 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 34989 | /* 99122 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dpps), |
| 34990 | /* 99127 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34991 | /* 99130 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34992 | /* 99133 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34993 | /* 99136 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34994 | /* 99140 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34995 | /* 99144 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34996 | /* 99148 */ // MIs[0] src3 |
| 34997 | /* 99148 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34998 | /* 99151 */ // (intrinsic_wo_chain:{ *:[v4f32] } 14811:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, (timm:{ *:[i8] }):$src3) => (DPPSrri:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34999 | /* 99151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DPPSrri), |
| 35000 | /* 99154 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35001 | /* 99156 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35002 | /* 99158 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35003 | /* 99160 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35004 | /* 99162 */ GIR_RootConstrainSelectedInstOperands, |
| 35005 | /* 99163 */ // GIR_Coverage, 3263, |
| 35006 | /* 99163 */ GIR_EraseRootFromParent_Done, |
| 35007 | /* 99164 */ // Label 2093: @99164 |
| 35008 | /* 99164 */ GIM_Try, /*On fail goto*//*Label 2094*/ GIMT_Encode4(99214), // Rule ID 3265 // |
| 35009 | /* 99169 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 35010 | /* 99172 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dppd), |
| 35011 | /* 99177 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 35012 | /* 99180 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 35013 | /* 99183 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 35014 | /* 99186 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35015 | /* 99190 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35016 | /* 99194 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35017 | /* 99198 */ // MIs[0] src3 |
| 35018 | /* 99198 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 35019 | /* 99201 */ // (intrinsic_wo_chain:{ *:[v2f64] } 14810:{ *:[iPTR] }, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, (timm:{ *:[i8] }):$src3) => (DPPDrri:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, (timm:{ *:[i8] }):$src3) |
| 35020 | /* 99201 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DPPDrri), |
| 35021 | /* 99204 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35022 | /* 99206 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35023 | /* 99208 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35024 | /* 99210 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35025 | /* 99212 */ GIR_RootConstrainSelectedInstOperands, |
| 35026 | /* 99213 */ // GIR_Coverage, 3265, |
| 35027 | /* 99213 */ GIR_EraseRootFromParent_Done, |
| 35028 | /* 99214 */ // Label 2094: @99214 |
| 35029 | /* 99214 */ GIM_Try, /*On fail goto*//*Label 2095*/ GIMT_Encode4(99264), // Rule ID 3325 // |
| 35030 | /* 99219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 35031 | /* 99222 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha1rnds4), |
| 35032 | /* 99227 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35033 | /* 99230 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35034 | /* 99233 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35035 | /* 99236 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35036 | /* 99240 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35037 | /* 99244 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35038 | /* 99248 */ // MIs[0] src3 |
| 35039 | /* 99248 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 35040 | /* 99251 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14697:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, (timm:{ *:[i8] }):$src3) => (SHA1RNDS4rri:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, (timm:{ *:[i8] }):$src3) |
| 35041 | /* 99251 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA1RNDS4rri), |
| 35042 | /* 99254 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35043 | /* 99256 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35044 | /* 99258 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35045 | /* 99260 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35046 | /* 99262 */ GIR_RootConstrainSelectedInstOperands, |
| 35047 | /* 99263 */ // GIR_Coverage, 3325, |
| 35048 | /* 99263 */ GIR_EraseRootFromParent_Done, |
| 35049 | /* 99264 */ // Label 2095: @99264 |
| 35050 | /* 99264 */ GIM_Try, /*On fail goto*//*Label 2096*/ GIMT_Encode4(99314), // Rule ID 3371 // |
| 35051 | /* 99269 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPCLMUL_NoAVX), |
| 35052 | /* 99272 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq), |
| 35053 | /* 99277 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 35054 | /* 99280 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 35055 | /* 99283 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 35056 | /* 99286 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35057 | /* 99290 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35058 | /* 99294 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35059 | /* 99298 */ // MIs[0] src3 |
| 35060 | /* 99298 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 35061 | /* 99301 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14662:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2, (timm:{ *:[i8] }):$src3) => (PCLMULQDQrri:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2, (timm:{ *:[i8] }):$src3) |
| 35062 | /* 99301 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PCLMULQDQrri), |
| 35063 | /* 99304 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35064 | /* 99306 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35065 | /* 99308 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35066 | /* 99310 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35067 | /* 99312 */ GIR_RootConstrainSelectedInstOperands, |
| 35068 | /* 99313 */ // GIR_Coverage, 3371, |
| 35069 | /* 99313 */ GIR_EraseRootFromParent_Done, |
| 35070 | /* 99314 */ // Label 2096: @99314 |
| 35071 | /* 99314 */ GIM_Try, /*On fail goto*//*Label 2097*/ GIMT_Encode4(99364), // Rule ID 3373 // |
| 35072 | /* 99319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_HasPCLMUL_NoVLX_Or_NoVPCLMULQDQ), |
| 35073 | /* 99322 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq), |
| 35074 | /* 99327 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 35075 | /* 99330 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 35076 | /* 99333 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 35077 | /* 99336 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35078 | /* 99340 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35079 | /* 99344 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35080 | /* 99348 */ // MIs[0] src3 |
| 35081 | /* 99348 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 35082 | /* 99351 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14662:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2, (timm:{ *:[i8] }):$src3) => (VPCLMULQDQrri:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2, (timm:{ *:[i8] }):$src3) |
| 35083 | /* 99351 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCLMULQDQrri), |
| 35084 | /* 99354 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35085 | /* 99356 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35086 | /* 99358 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35087 | /* 99360 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35088 | /* 99362 */ GIR_RootConstrainSelectedInstOperands, |
| 35089 | /* 99363 */ // GIR_Coverage, 3373, |
| 35090 | /* 99363 */ GIR_EraseRootFromParent_Done, |
| 35091 | /* 99364 */ // Label 2097: @99364 |
| 35092 | /* 99364 */ GIM_Try, /*On fail goto*//*Label 2098*/ GIMT_Encode4(99414), // Rule ID 3375 // |
| 35093 | /* 99369 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPCLMULQDQ_NoVLX), |
| 35094 | /* 99372 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq_256), |
| 35095 | /* 99377 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 35096 | /* 99380 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 35097 | /* 99383 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 35098 | /* 99386 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 35099 | /* 99390 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 35100 | /* 99394 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 35101 | /* 99398 */ // MIs[0] src3 |
| 35102 | /* 99398 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 35103 | /* 99401 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14663:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2, (timm:{ *:[i8] }):$src3) => (VPCLMULQDQYrri:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2, (timm:{ *:[i8] }):$src3) |
| 35104 | /* 99401 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCLMULQDQYrri), |
| 35105 | /* 99404 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35106 | /* 99406 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35107 | /* 99408 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35108 | /* 99410 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35109 | /* 99412 */ GIR_RootConstrainSelectedInstOperands, |
| 35110 | /* 99413 */ // GIR_Coverage, 3375, |
| 35111 | /* 99413 */ GIR_EraseRootFromParent_Done, |
| 35112 | /* 99414 */ // Label 2098: @99414 |
| 35113 | /* 99414 */ GIM_Try, /*On fail goto*//*Label 2099*/ GIMT_Encode4(99464), // Rule ID 14084 // |
| 35114 | /* 99419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVPCLMULQDQ), |
| 35115 | /* 99422 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq_512), |
| 35116 | /* 99427 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 35117 | /* 99430 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 35118 | /* 99433 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 35119 | /* 99436 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 35120 | /* 99440 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 35121 | /* 99444 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 35122 | /* 99448 */ // MIs[0] src3 |
| 35123 | /* 99448 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 35124 | /* 99451 */ // (intrinsic_wo_chain:{ *:[v8i64] } 14664:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2, (timm:{ *:[i8] }):$src3) => (VPCLMULQDQZrri:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2, (timm:{ *:[i8] }):$src3) |
| 35125 | /* 99451 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCLMULQDQZrri), |
| 35126 | /* 99454 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35127 | /* 99456 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35128 | /* 99458 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35129 | /* 99460 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35130 | /* 99462 */ GIR_RootConstrainSelectedInstOperands, |
| 35131 | /* 99463 */ // GIR_Coverage, 14084, |
| 35132 | /* 99463 */ GIR_EraseRootFromParent_Done, |
| 35133 | /* 99464 */ // Label 2099: @99464 |
| 35134 | /* 99464 */ GIM_Try, /*On fail goto*//*Label 2100*/ GIMT_Encode4(99514), // Rule ID 14086 // |
| 35135 | /* 99469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPCLMULQDQ), |
| 35136 | /* 99472 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq), |
| 35137 | /* 99477 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 35138 | /* 99480 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 35139 | /* 99483 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 35140 | /* 99486 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 35141 | /* 99490 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 35142 | /* 99494 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 35143 | /* 99498 */ // MIs[0] src3 |
| 35144 | /* 99498 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 35145 | /* 99501 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14662:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2, (timm:{ *:[i8] }):$src3) => (VPCLMULQDQZ128rri:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2, (timm:{ *:[i8] }):$src3) |
| 35146 | /* 99501 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCLMULQDQZ128rri), |
| 35147 | /* 99504 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35148 | /* 99506 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35149 | /* 99508 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35150 | /* 99510 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35151 | /* 99512 */ GIR_RootConstrainSelectedInstOperands, |
| 35152 | /* 99513 */ // GIR_Coverage, 14086, |
| 35153 | /* 99513 */ GIR_EraseRootFromParent_Done, |
| 35154 | /* 99514 */ // Label 2100: @99514 |
| 35155 | /* 99514 */ GIM_Try, /*On fail goto*//*Label 2101*/ GIMT_Encode4(99564), // Rule ID 14088 // |
| 35156 | /* 99519 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPCLMULQDQ), |
| 35157 | /* 99522 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_pclmulqdq_256), |
| 35158 | /* 99527 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 35159 | /* 99530 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 35160 | /* 99533 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 35161 | /* 99536 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 35162 | /* 99540 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 35163 | /* 99544 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 35164 | /* 99548 */ // MIs[0] src3 |
| 35165 | /* 99548 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 35166 | /* 99551 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14663:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2, (timm:{ *:[i8] }):$src3) => (VPCLMULQDQZ256rri:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2, (timm:{ *:[i8] }):$src3) |
| 35167 | /* 99551 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCLMULQDQZ256rri), |
| 35168 | /* 99554 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35169 | /* 99556 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35170 | /* 99558 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35171 | /* 99560 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35172 | /* 99562 */ GIR_RootConstrainSelectedInstOperands, |
| 35173 | /* 99563 */ // GIR_Coverage, 14088, |
| 35174 | /* 99563 */ GIR_EraseRootFromParent_Done, |
| 35175 | /* 99564 */ // Label 2101: @99564 |
| 35176 | /* 99564 */ GIM_Try, /*On fail goto*//*Label 2102*/ GIMT_Encode4(99618), // Rule ID 1619 // |
| 35177 | /* 99569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35178 | /* 99572 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcswd), |
| 35179 | /* 99577 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35180 | /* 99580 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 35181 | /* 99583 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 35182 | /* 99586 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 35183 | /* 99589 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35184 | /* 99593 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35185 | /* 99597 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35186 | /* 99601 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35187 | /* 99605 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15056:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMADCSWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 35188 | /* 99605 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSWDrr), |
| 35189 | /* 99608 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35190 | /* 99610 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35191 | /* 99612 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35192 | /* 99614 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35193 | /* 99616 */ GIR_RootConstrainSelectedInstOperands, |
| 35194 | /* 99617 */ // GIR_Coverage, 1619, |
| 35195 | /* 99617 */ GIR_EraseRootFromParent_Done, |
| 35196 | /* 99618 */ // Label 2102: @99618 |
| 35197 | /* 99618 */ GIM_Try, /*On fail goto*//*Label 2103*/ GIMT_Encode4(99672), // Rule ID 1621 // |
| 35198 | /* 99623 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35199 | /* 99626 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcsswd), |
| 35200 | /* 99631 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35201 | /* 99634 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 35202 | /* 99637 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 35203 | /* 99640 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 35204 | /* 99643 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35205 | /* 99647 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35206 | /* 99651 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35207 | /* 99655 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35208 | /* 99659 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15055:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMADCSSWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 35209 | /* 99659 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSSWDrr), |
| 35210 | /* 99662 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35211 | /* 99664 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35212 | /* 99666 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35213 | /* 99668 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35214 | /* 99670 */ GIR_RootConstrainSelectedInstOperands, |
| 35215 | /* 99671 */ // GIR_Coverage, 1621, |
| 35216 | /* 99671 */ GIR_EraseRootFromParent_Done, |
| 35217 | /* 99672 */ // Label 2103: @99672 |
| 35218 | /* 99672 */ GIM_Try, /*On fail goto*//*Label 2104*/ GIMT_Encode4(99726), // Rule ID 1623 // |
| 35219 | /* 99677 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35220 | /* 99680 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsww), |
| 35221 | /* 99685 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 35222 | /* 99688 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 35223 | /* 99691 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 35224 | /* 99694 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 35225 | /* 99697 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35226 | /* 99701 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35227 | /* 99705 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35228 | /* 99709 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35229 | /* 99713 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15054:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) => (VPMACSWWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 35230 | /* 99713 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWWrr), |
| 35231 | /* 99716 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35232 | /* 99718 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35233 | /* 99720 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35234 | /* 99722 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35235 | /* 99724 */ GIR_RootConstrainSelectedInstOperands, |
| 35236 | /* 99725 */ // GIR_Coverage, 1623, |
| 35237 | /* 99725 */ GIR_EraseRootFromParent_Done, |
| 35238 | /* 99726 */ // Label 2104: @99726 |
| 35239 | /* 99726 */ GIM_Try, /*On fail goto*//*Label 2105*/ GIMT_Encode4(99780), // Rule ID 1625 // |
| 35240 | /* 99731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35241 | /* 99734 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacswd), |
| 35242 | /* 99739 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35243 | /* 99742 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 35244 | /* 99745 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 35245 | /* 99748 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 35246 | /* 99751 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35247 | /* 99755 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35248 | /* 99759 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35249 | /* 99763 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35250 | /* 99767 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15053:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMACSWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 35251 | /* 99767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWDrr), |
| 35252 | /* 99770 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35253 | /* 99772 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35254 | /* 99774 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35255 | /* 99776 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35256 | /* 99778 */ GIR_RootConstrainSelectedInstOperands, |
| 35257 | /* 99779 */ // GIR_Coverage, 1625, |
| 35258 | /* 99779 */ GIR_EraseRootFromParent_Done, |
| 35259 | /* 99780 */ // Label 2105: @99780 |
| 35260 | /* 99780 */ GIM_Try, /*On fail goto*//*Label 2106*/ GIMT_Encode4(99834), // Rule ID 1627 // |
| 35261 | /* 99785 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35262 | /* 99788 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssww), |
| 35263 | /* 99793 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 35264 | /* 99796 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 35265 | /* 99799 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 35266 | /* 99802 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 35267 | /* 99805 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35268 | /* 99809 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35269 | /* 99813 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35270 | /* 99817 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35271 | /* 99821 */ // (intrinsic_wo_chain:{ *:[v8i16] } 15052:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) => (VPMACSSWWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 35272 | /* 99821 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWWrr), |
| 35273 | /* 99824 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35274 | /* 99826 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35275 | /* 99828 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35276 | /* 99830 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35277 | /* 99832 */ GIR_RootConstrainSelectedInstOperands, |
| 35278 | /* 99833 */ // GIR_Coverage, 1627, |
| 35279 | /* 99833 */ GIR_EraseRootFromParent_Done, |
| 35280 | /* 99834 */ // Label 2106: @99834 |
| 35281 | /* 99834 */ GIM_Try, /*On fail goto*//*Label 2107*/ GIMT_Encode4(99888), // Rule ID 1629 // |
| 35282 | /* 99839 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35283 | /* 99842 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsswd), |
| 35284 | /* 99847 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35285 | /* 99850 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 35286 | /* 99853 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 35287 | /* 99856 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 35288 | /* 99859 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35289 | /* 99863 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35290 | /* 99867 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35291 | /* 99871 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35292 | /* 99875 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15051:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMACSSWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 35293 | /* 99875 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWDrr), |
| 35294 | /* 99878 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35295 | /* 99880 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35296 | /* 99882 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35297 | /* 99884 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35298 | /* 99886 */ GIR_RootConstrainSelectedInstOperands, |
| 35299 | /* 99887 */ // GIR_Coverage, 1629, |
| 35300 | /* 99887 */ GIR_EraseRootFromParent_Done, |
| 35301 | /* 99888 */ // Label 2107: @99888 |
| 35302 | /* 99888 */ GIM_Try, /*On fail goto*//*Label 2108*/ GIMT_Encode4(99942), // Rule ID 1631 // |
| 35303 | /* 99893 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35304 | /* 99896 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdql), |
| 35305 | /* 99901 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 35306 | /* 99904 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35307 | /* 99907 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35308 | /* 99910 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 35309 | /* 99913 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35310 | /* 99917 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35311 | /* 99921 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35312 | /* 99925 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35313 | /* 99929 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15050:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) => (VPMACSSDQLrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 35314 | /* 99929 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQLrr), |
| 35315 | /* 99932 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35316 | /* 99934 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35317 | /* 99936 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35318 | /* 99938 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35319 | /* 99940 */ GIR_RootConstrainSelectedInstOperands, |
| 35320 | /* 99941 */ // GIR_Coverage, 1631, |
| 35321 | /* 99941 */ GIR_EraseRootFromParent_Done, |
| 35322 | /* 99942 */ // Label 2108: @99942 |
| 35323 | /* 99942 */ GIM_Try, /*On fail goto*//*Label 2109*/ GIMT_Encode4(99996), // Rule ID 1633 // |
| 35324 | /* 99947 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35325 | /* 99950 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdqh), |
| 35326 | /* 99955 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 35327 | /* 99958 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35328 | /* 99961 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35329 | /* 99964 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 35330 | /* 99967 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35331 | /* 99971 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35332 | /* 99975 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35333 | /* 99979 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35334 | /* 99983 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15049:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) => (VPMACSSDQHrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 35335 | /* 99983 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQHrr), |
| 35336 | /* 99986 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35337 | /* 99988 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35338 | /* 99990 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35339 | /* 99992 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35340 | /* 99994 */ GIR_RootConstrainSelectedInstOperands, |
| 35341 | /* 99995 */ // GIR_Coverage, 1633, |
| 35342 | /* 99995 */ GIR_EraseRootFromParent_Done, |
| 35343 | /* 99996 */ // Label 2109: @99996 |
| 35344 | /* 99996 */ GIM_Try, /*On fail goto*//*Label 2110*/ GIMT_Encode4(100050), // Rule ID 1635 // |
| 35345 | /* 100001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35346 | /* 100004 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdd), |
| 35347 | /* 100009 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35348 | /* 100012 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35349 | /* 100015 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35350 | /* 100018 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 35351 | /* 100021 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35352 | /* 100025 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35353 | /* 100029 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35354 | /* 100033 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35355 | /* 100037 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15048:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMACSSDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 35356 | /* 100037 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDDrr), |
| 35357 | /* 100040 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35358 | /* 100042 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35359 | /* 100044 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35360 | /* 100046 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35361 | /* 100048 */ GIR_RootConstrainSelectedInstOperands, |
| 35362 | /* 100049 */ // GIR_Coverage, 1635, |
| 35363 | /* 100049 */ GIR_EraseRootFromParent_Done, |
| 35364 | /* 100050 */ // Label 2110: @100050 |
| 35365 | /* 100050 */ GIM_Try, /*On fail goto*//*Label 2111*/ GIMT_Encode4(100104), // Rule ID 1637 // |
| 35366 | /* 100055 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35367 | /* 100058 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdql), |
| 35368 | /* 100063 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 35369 | /* 100066 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35370 | /* 100069 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35371 | /* 100072 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 35372 | /* 100075 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35373 | /* 100079 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35374 | /* 100083 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35375 | /* 100087 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35376 | /* 100091 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15047:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) => (VPMACSDQLrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 35377 | /* 100091 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQLrr), |
| 35378 | /* 100094 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35379 | /* 100096 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35380 | /* 100098 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35381 | /* 100100 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35382 | /* 100102 */ GIR_RootConstrainSelectedInstOperands, |
| 35383 | /* 100103 */ // GIR_Coverage, 1637, |
| 35384 | /* 100103 */ GIR_EraseRootFromParent_Done, |
| 35385 | /* 100104 */ // Label 2111: @100104 |
| 35386 | /* 100104 */ GIM_Try, /*On fail goto*//*Label 2112*/ GIMT_Encode4(100158), // Rule ID 1639 // |
| 35387 | /* 100109 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35388 | /* 100112 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdqh), |
| 35389 | /* 100117 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 35390 | /* 100120 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35391 | /* 100123 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35392 | /* 100126 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 35393 | /* 100129 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35394 | /* 100133 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35395 | /* 100137 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35396 | /* 100141 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35397 | /* 100145 */ // (intrinsic_wo_chain:{ *:[v2i64] } 15046:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) => (VPMACSDQHrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 35398 | /* 100145 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQHrr), |
| 35399 | /* 100148 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35400 | /* 100150 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35401 | /* 100152 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35402 | /* 100154 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35403 | /* 100156 */ GIR_RootConstrainSelectedInstOperands, |
| 35404 | /* 100157 */ // GIR_Coverage, 1639, |
| 35405 | /* 100157 */ GIR_EraseRootFromParent_Done, |
| 35406 | /* 100158 */ // Label 2112: @100158 |
| 35407 | /* 100158 */ GIM_Try, /*On fail goto*//*Label 2113*/ GIMT_Encode4(100212), // Rule ID 1641 // |
| 35408 | /* 100163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 35409 | /* 100166 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdd), |
| 35410 | /* 100171 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35411 | /* 100174 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35412 | /* 100177 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35413 | /* 100180 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 35414 | /* 100183 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35415 | /* 100187 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35416 | /* 100191 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35417 | /* 100195 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35418 | /* 100199 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15045:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMACSDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 35419 | /* 100199 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDDrr), |
| 35420 | /* 100202 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35421 | /* 100204 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35422 | /* 100206 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35423 | /* 100208 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35424 | /* 100210 */ GIR_RootConstrainSelectedInstOperands, |
| 35425 | /* 100211 */ // GIR_Coverage, 1641, |
| 35426 | /* 100211 */ GIR_EraseRootFromParent_Done, |
| 35427 | /* 100212 */ // Label 2113: @100212 |
| 35428 | /* 100212 */ GIM_Try, /*On fail goto*//*Label 2114*/ GIMT_Encode4(100278), // Rule ID 3333 // |
| 35429 | /* 100217 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 35430 | /* 100220 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha256rnds2), |
| 35431 | /* 100225 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35432 | /* 100228 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35433 | /* 100231 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35434 | /* 100234 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 35435 | /* 100237 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35436 | /* 100241 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35437 | /* 100245 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35438 | /* 100249 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35439 | /* 100253 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14700:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, XMM0:{ *:[v4i32] }) => (SHA256RNDS2rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 35440 | /* 100253 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 35441 | /* 100257 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::XMM0), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 35442 | /* 100263 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/4, // XMM0 |
| 35443 | /* 100267 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA256RNDS2rr), |
| 35444 | /* 100270 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35445 | /* 100272 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35446 | /* 100274 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35447 | /* 100276 */ GIR_RootConstrainSelectedInstOperands, |
| 35448 | /* 100277 */ // GIR_Coverage, 3333, |
| 35449 | /* 100277 */ GIR_EraseRootFromParent_Done, |
| 35450 | /* 100278 */ // Label 2114: @100278 |
| 35451 | /* 100278 */ GIM_Try, /*On fail goto*//*Label 2115*/ GIMT_Encode4(100332), // Rule ID 3557 // |
| 35452 | /* 100283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA512), |
| 35453 | /* 100286 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsha512rnds2), |
| 35454 | /* 100291 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 35455 | /* 100294 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 35456 | /* 100297 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 35457 | /* 100300 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 35458 | /* 100303 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 35459 | /* 100307 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 35460 | /* 100311 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 35461 | /* 100315 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35462 | /* 100319 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14995:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2, VR128:{ *:[v2i64] }:$src3) => (VSHA512RNDS2rr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 35463 | /* 100319 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSHA512RNDS2rr), |
| 35464 | /* 100322 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35465 | /* 100324 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35466 | /* 100326 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35467 | /* 100328 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35468 | /* 100330 */ GIR_RootConstrainSelectedInstOperands, |
| 35469 | /* 100331 */ // GIR_Coverage, 3557, |
| 35470 | /* 100331 */ GIR_EraseRootFromParent_Done, |
| 35471 | /* 100332 */ // Label 2115: @100332 |
| 35472 | /* 100332 */ GIM_Try, /*On fail goto*//*Label 2116*/ GIMT_Encode4(100386), // Rule ID 3558 // |
| 35473 | /* 100337 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 35474 | /* 100340 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm3msg1), |
| 35475 | /* 100345 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35476 | /* 100348 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35477 | /* 100351 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35478 | /* 100354 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 35479 | /* 100357 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35480 | /* 100361 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35481 | /* 100365 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35482 | /* 100369 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35483 | /* 100373 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14996:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VSM3MSG1rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 35484 | /* 100373 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3MSG1rr), |
| 35485 | /* 100376 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35486 | /* 100378 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35487 | /* 100380 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35488 | /* 100382 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35489 | /* 100384 */ GIR_RootConstrainSelectedInstOperands, |
| 35490 | /* 100385 */ // GIR_Coverage, 3558, |
| 35491 | /* 100385 */ GIR_EraseRootFromParent_Done, |
| 35492 | /* 100386 */ // Label 2116: @100386 |
| 35493 | /* 100386 */ GIM_Try, /*On fail goto*//*Label 2117*/ GIMT_Encode4(100440), // Rule ID 3560 // |
| 35494 | /* 100391 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 35495 | /* 100394 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm3msg2), |
| 35496 | /* 100399 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35497 | /* 100402 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35498 | /* 100405 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35499 | /* 100408 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 35500 | /* 100411 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35501 | /* 100415 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35502 | /* 100419 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35503 | /* 100423 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35504 | /* 100427 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14997:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VSM3MSG2rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 35505 | /* 100427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3MSG2rr), |
| 35506 | /* 100430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35507 | /* 100432 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35508 | /* 100434 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35509 | /* 100436 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35510 | /* 100438 */ GIR_RootConstrainSelectedInstOperands, |
| 35511 | /* 100439 */ // GIR_Coverage, 3560, |
| 35512 | /* 100439 */ GIR_EraseRootFromParent_Done, |
| 35513 | /* 100440 */ // Label 2117: @100440 |
| 35514 | /* 100440 */ GIM_Reject, |
| 35515 | /* 100441 */ // Label 2052: @100441 |
| 35516 | /* 100441 */ GIM_Try, /*On fail goto*//*Label 2118*/ GIMT_Encode4(100570), |
| 35517 | /* 100446 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/6, |
| 35518 | /* 100449 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm3rnds2), |
| 35519 | /* 100454 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35520 | /* 100457 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 35521 | /* 100460 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 35522 | /* 100463 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 35523 | /* 100466 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35524 | /* 100470 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35525 | /* 100474 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35526 | /* 100478 */ GIM_Try, /*On fail goto*//*Label 2119*/ GIMT_Encode4(100539), // Rule ID 3563 // |
| 35527 | /* 100483 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 35528 | /* 100486 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/4, // MIs[1] |
| 35529 | /* 100490 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 35530 | /* 100494 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 35531 | /* 100497 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 35532 | /* 100501 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 35533 | /* 100505 */ // MIs[0] src4 |
| 35534 | /* 100505 */ GIM_CheckIsImm, /*MI*/0, /*Op*/5, |
| 35535 | /* 100508 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 35536 | /* 100510 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35537 | /* 100517 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14998:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i32] }):$src4) => (VSM3RNDS2rmi:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, addr:{ *:[iPTR] }:$src3, (timm:{ *:[i32] }):$src4) |
| 35538 | /* 100517 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3RNDS2rmi), |
| 35539 | /* 100520 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35540 | /* 100522 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35541 | /* 100524 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35542 | /* 100526 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 35543 | /* 100530 */ GIR_RootToRootCopy, /*OpIdx*/5, // src4 |
| 35544 | /* 100532 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 35545 | /* 100537 */ GIR_RootConstrainSelectedInstOperands, |
| 35546 | /* 100538 */ // GIR_Coverage, 3563, |
| 35547 | /* 100538 */ GIR_EraseRootFromParent_Done, |
| 35548 | /* 100539 */ // Label 2119: @100539 |
| 35549 | /* 100539 */ GIM_Try, /*On fail goto*//*Label 2120*/ GIMT_Encode4(100569), // Rule ID 3562 // |
| 35550 | /* 100544 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 35551 | /* 100547 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35552 | /* 100551 */ // MIs[0] src4 |
| 35553 | /* 100551 */ GIM_CheckIsImm, /*MI*/0, /*Op*/5, |
| 35554 | /* 100554 */ // (intrinsic_wo_chain:{ *:[v4i32] } 14998:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3, (timm:{ *:[i32] }):$src4) => (VSM3RNDS2rri:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3, (timm:{ *:[i32] }):$src4) |
| 35555 | /* 100554 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3RNDS2rri), |
| 35556 | /* 100557 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35557 | /* 100559 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 35558 | /* 100561 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 35559 | /* 100563 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 35560 | /* 100565 */ GIR_RootToRootCopy, /*OpIdx*/5, // src4 |
| 35561 | /* 100567 */ GIR_RootConstrainSelectedInstOperands, |
| 35562 | /* 100568 */ // GIR_Coverage, 3562, |
| 35563 | /* 100568 */ GIR_EraseRootFromParent_Done, |
| 35564 | /* 100569 */ // Label 2120: @100569 |
| 35565 | /* 100569 */ GIM_Reject, |
| 35566 | /* 100570 */ // Label 2118: @100570 |
| 35567 | /* 100570 */ GIM_Reject, |
| 35568 | /* 100571 */ // Label 18: @100571 |
| 35569 | /* 100571 */ GIM_Try, /*On fail goto*//*Label 2121*/ GIMT_Encode4(101130), |
| 35570 | /* 100576 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/1, |
| 35571 | /* 100579 */ GIM_Try, /*On fail goto*//*Label 2122*/ GIMT_Encode4(100601), // Rule ID 149 // |
| 35572 | /* 100584 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSERIALIZE), |
| 35573 | /* 100587 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_serialize), |
| 35574 | /* 100592 */ // (intrinsic_void 14692:{ *:[iPTR] }) => (SERIALIZE) |
| 35575 | /* 100592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SERIALIZE), |
| 35576 | /* 100595 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35577 | /* 100599 */ GIR_RootConstrainSelectedInstOperands, |
| 35578 | /* 100600 */ // GIR_Coverage, 149, |
| 35579 | /* 100600 */ GIR_EraseRootFromParent_Done, |
| 35580 | /* 100601 */ // Label 2122: @100601 |
| 35581 | /* 100601 */ GIM_Try, /*On fail goto*//*Label 2123*/ GIMT_Encode4(100623), // Rule ID 150 // |
| 35582 | /* 100606 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTSXLDTRK), |
| 35583 | /* 100609 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsusldtrk), |
| 35584 | /* 100614 */ // (intrinsic_void 15080:{ *:[iPTR] }) => (XSUSLDTRK) |
| 35585 | /* 100614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSUSLDTRK), |
| 35586 | /* 100617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35587 | /* 100621 */ GIR_RootConstrainSelectedInstOperands, |
| 35588 | /* 100622 */ // GIR_Coverage, 150, |
| 35589 | /* 100622 */ GIR_EraseRootFromParent_Done, |
| 35590 | /* 100623 */ // Label 2123: @100623 |
| 35591 | /* 100623 */ GIM_Try, /*On fail goto*//*Label 2124*/ GIMT_Encode4(100645), // Rule ID 151 // |
| 35592 | /* 100628 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTSXLDTRK), |
| 35593 | /* 100631 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xresldtrk), |
| 35594 | /* 100636 */ // (intrinsic_void 15066:{ *:[iPTR] }) => (XRESLDTRK) |
| 35595 | /* 100636 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XRESLDTRK), |
| 35596 | /* 100639 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35597 | /* 100643 */ GIR_RootConstrainSelectedInstOperands, |
| 35598 | /* 100644 */ // GIR_Coverage, 151, |
| 35599 | /* 100644 */ GIR_EraseRootFromParent_Done, |
| 35600 | /* 100645 */ // Label 2124: @100645 |
| 35601 | /* 100645 */ GIM_Try, /*On fail goto*//*Label 2125*/ GIMT_Encode4(100667), // Rule ID 152 // |
| 35602 | /* 100650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasUINTR_In64BitMode), |
| 35603 | /* 100653 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_clui), |
| 35604 | /* 100658 */ // (intrinsic_void 14550:{ *:[iPTR] }) => (CLUI) |
| 35605 | /* 100658 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLUI), |
| 35606 | /* 100661 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35607 | /* 100665 */ GIR_RootConstrainSelectedInstOperands, |
| 35608 | /* 100666 */ // GIR_Coverage, 152, |
| 35609 | /* 100666 */ GIR_EraseRootFromParent_Done, |
| 35610 | /* 100667 */ // Label 2125: @100667 |
| 35611 | /* 100667 */ GIM_Try, /*On fail goto*//*Label 2126*/ GIMT_Encode4(100689), // Rule ID 153 // |
| 35612 | /* 100672 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasUINTR_In64BitMode), |
| 35613 | /* 100675 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_stui), |
| 35614 | /* 100680 */ // (intrinsic_void 14874:{ *:[iPTR] }) => (STUI) |
| 35615 | /* 100680 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::STUI), |
| 35616 | /* 100683 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35617 | /* 100687 */ GIR_RootConstrainSelectedInstOperands, |
| 35618 | /* 100688 */ // GIR_Coverage, 153, |
| 35619 | /* 100688 */ GIR_EraseRootFromParent_Done, |
| 35620 | /* 100689 */ // Label 2126: @100689 |
| 35621 | /* 100689 */ GIM_Try, /*On fail goto*//*Label 2127*/ GIMT_Encode4(100708), // Rule ID 2510 // |
| 35622 | /* 100694 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_pause), |
| 35623 | /* 100699 */ // (intrinsic_void 14769:{ *:[iPTR] }) => (PAUSE) |
| 35624 | /* 100699 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PAUSE), |
| 35625 | /* 100702 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35626 | /* 100706 */ GIR_RootConstrainSelectedInstOperands, |
| 35627 | /* 100707 */ // GIR_Coverage, 2510, |
| 35628 | /* 100707 */ GIR_EraseRootFromParent_Done, |
| 35629 | /* 100708 */ // Label 2127: @100708 |
| 35630 | /* 100708 */ GIM_Try, /*On fail goto*//*Label 2128*/ GIMT_Encode4(100730), // Rule ID 2511 // |
| 35631 | /* 100713 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE1), |
| 35632 | /* 100716 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse_sfence), |
| 35633 | /* 100721 */ // (intrinsic_void 14731:{ *:[iPTR] }) => (SFENCE) |
| 35634 | /* 100721 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SFENCE), |
| 35635 | /* 100724 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35636 | /* 100728 */ GIR_RootConstrainSelectedInstOperands, |
| 35637 | /* 100729 */ // GIR_Coverage, 2511, |
| 35638 | /* 100729 */ GIR_EraseRootFromParent_Done, |
| 35639 | /* 100730 */ // Label 2128: @100730 |
| 35640 | /* 100730 */ GIM_Try, /*On fail goto*//*Label 2129*/ GIMT_Encode4(100752), // Rule ID 2512 // |
| 35641 | /* 100735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE2), |
| 35642 | /* 100738 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_lfence), |
| 35643 | /* 100743 */ // (intrinsic_void 14758:{ *:[iPTR] }) => (LFENCE) |
| 35644 | /* 100743 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LFENCE), |
| 35645 | /* 100746 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35646 | /* 100750 */ GIR_RootConstrainSelectedInstOperands, |
| 35647 | /* 100751 */ // GIR_Coverage, 2512, |
| 35648 | /* 100751 */ GIR_EraseRootFromParent_Done, |
| 35649 | /* 100752 */ // Label 2129: @100752 |
| 35650 | /* 100752 */ GIM_Try, /*On fail goto*//*Label 2130*/ GIMT_Encode4(100774), // Rule ID 2513 // |
| 35651 | /* 100757 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMFence), |
| 35652 | /* 100760 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_mfence), |
| 35653 | /* 100765 */ // (intrinsic_void 14762:{ *:[iPTR] }) => (MFENCE) |
| 35654 | /* 100765 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MFENCE), |
| 35655 | /* 100768 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35656 | /* 100772 */ GIR_RootConstrainSelectedInstOperands, |
| 35657 | /* 100773 */ // GIR_Coverage, 2513, |
| 35658 | /* 100773 */ GIR_EraseRootFromParent_Done, |
| 35659 | /* 100774 */ // Label 2130: @100774 |
| 35660 | /* 100774 */ GIM_Try, /*On fail goto*//*Label 2131*/ GIMT_Encode4(100840), // Rule ID 3427 // |
| 35661 | /* 100779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 35662 | /* 100782 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_vzeroall), |
| 35663 | /* 100787 */ // (intrinsic_void 13464:{ *:[iPTR] }) => (VZEROALL) |
| 35664 | /* 100787 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VZEROALL), |
| 35665 | /* 100790 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM0*/0, |
| 35666 | /* 100793 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM1*/1, |
| 35667 | /* 100796 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM2*/2, |
| 35668 | /* 100799 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM3*/3, |
| 35669 | /* 100802 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM4*/4, |
| 35670 | /* 100805 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM5*/5, |
| 35671 | /* 100808 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM6*/6, |
| 35672 | /* 100811 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM7*/7, |
| 35673 | /* 100814 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM8*/8, |
| 35674 | /* 100817 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM9*/9, |
| 35675 | /* 100820 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM10*/10, |
| 35676 | /* 100823 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM11*/11, |
| 35677 | /* 100826 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM12*/12, |
| 35678 | /* 100829 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM13*/13, |
| 35679 | /* 100832 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM14*/14, |
| 35680 | /* 100835 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM15*/15, |
| 35681 | /* 100838 */ GIR_RootConstrainSelectedInstOperands, |
| 35682 | /* 100839 */ // GIR_Coverage, 3427, |
| 35683 | /* 100839 */ GIR_EraseRootFromParent_Done, |
| 35684 | /* 100840 */ // Label 2131: @100840 |
| 35685 | /* 100840 */ GIM_Try, /*On fail goto*//*Label 2132*/ GIMT_Encode4(100906), // Rule ID 3428 // |
| 35686 | /* 100845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 35687 | /* 100848 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_vzeroupper), |
| 35688 | /* 100853 */ // (intrinsic_void 13465:{ *:[iPTR] }) => (VZEROUPPER) |
| 35689 | /* 100853 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VZEROUPPER), |
| 35690 | /* 100856 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM0*/0, |
| 35691 | /* 100859 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM1*/1, |
| 35692 | /* 100862 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM2*/2, |
| 35693 | /* 100865 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM3*/3, |
| 35694 | /* 100868 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM4*/4, |
| 35695 | /* 100871 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM5*/5, |
| 35696 | /* 100874 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM6*/6, |
| 35697 | /* 100877 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM7*/7, |
| 35698 | /* 100880 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM8*/8, |
| 35699 | /* 100883 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM9*/9, |
| 35700 | /* 100886 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM10*/10, |
| 35701 | /* 100889 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM11*/11, |
| 35702 | /* 100892 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM12*/12, |
| 35703 | /* 100895 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM13*/13, |
| 35704 | /* 100898 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM14*/14, |
| 35705 | /* 100901 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM15*/15, |
| 35706 | /* 100904 */ GIR_RootConstrainSelectedInstOperands, |
| 35707 | /* 100905 */ // GIR_Coverage, 3428, |
| 35708 | /* 100905 */ GIR_EraseRootFromParent_Done, |
| 35709 | /* 100906 */ // Label 2132: @100906 |
| 35710 | /* 100906 */ GIM_Try, /*On fail goto*//*Label 2133*/ GIMT_Encode4(100976), // Rule ID 16802 // |
| 35711 | /* 100911 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMMX), |
| 35712 | /* 100914 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_mmx_emms), |
| 35713 | /* 100919 */ // (intrinsic_void 14585:{ *:[iPTR] }) => (MMX_EMMS:{ *:[x86mmx] }) |
| 35714 | /* 100919 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MMX_EMMS), |
| 35715 | /* 100922 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM0*/0, |
| 35716 | /* 100925 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM1*/1, |
| 35717 | /* 100928 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM2*/2, |
| 35718 | /* 100931 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM3*/3, |
| 35719 | /* 100934 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM4*/4, |
| 35720 | /* 100937 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM5*/5, |
| 35721 | /* 100940 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM6*/6, |
| 35722 | /* 100943 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM7*/7, |
| 35723 | /* 100946 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST0*/8, |
| 35724 | /* 100949 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST1*/9, |
| 35725 | /* 100952 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST2*/10, |
| 35726 | /* 100955 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST3*/11, |
| 35727 | /* 100958 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST4*/12, |
| 35728 | /* 100961 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST5*/13, |
| 35729 | /* 100964 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST6*/14, |
| 35730 | /* 100967 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST7*/15, |
| 35731 | /* 100970 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35732 | /* 100974 */ GIR_RootConstrainSelectedInstOperands, |
| 35733 | /* 100975 */ // GIR_Coverage, 16802, |
| 35734 | /* 100975 */ GIR_EraseRootFromParent_Done, |
| 35735 | /* 100976 */ // Label 2133: @100976 |
| 35736 | /* 100976 */ GIM_Try, /*On fail goto*//*Label 2134*/ GIMT_Encode4(100998), // Rule ID 16985 // |
| 35737 | /* 100981 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasRTM), |
| 35738 | /* 100984 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xend), |
| 35739 | /* 100989 */ // (intrinsic_void 15018:{ *:[iPTR] }) => (XEND) |
| 35740 | /* 100989 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XEND), |
| 35741 | /* 100992 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35742 | /* 100996 */ GIR_RootConstrainSelectedInstOperands, |
| 35743 | /* 100997 */ // GIR_Coverage, 16985, |
| 35744 | /* 100997 */ GIR_EraseRootFromParent_Done, |
| 35745 | /* 100998 */ // Label 2134: @100998 |
| 35746 | /* 100998 */ GIM_Try, /*On fail goto*//*Label 2135*/ GIMT_Encode4(101044), // Rule ID 16997 // |
| 35747 | /* 101003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_In64BitMode), |
| 35748 | /* 101006 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tilerelease), |
| 35749 | /* 101011 */ // (intrinsic_void 14944:{ *:[iPTR] }) => (TILERELEASE:{ *:[x86amx] }) |
| 35750 | /* 101011 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TILERELEASE), |
| 35751 | /* 101014 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM0*/0, |
| 35752 | /* 101017 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM1*/1, |
| 35753 | /* 101020 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM2*/2, |
| 35754 | /* 101023 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM3*/3, |
| 35755 | /* 101026 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM4*/4, |
| 35756 | /* 101029 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM5*/5, |
| 35757 | /* 101032 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM6*/6, |
| 35758 | /* 101035 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM7*/7, |
| 35759 | /* 101038 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35760 | /* 101042 */ GIR_RootConstrainSelectedInstOperands, |
| 35761 | /* 101043 */ // GIR_Coverage, 16997, |
| 35762 | /* 101043 */ GIR_EraseRootFromParent_Done, |
| 35763 | /* 101044 */ // Label 2135: @101044 |
| 35764 | /* 101044 */ GIM_Try, /*On fail goto*//*Label 2136*/ GIMT_Encode4(101063), // Rule ID 17086 // |
| 35765 | /* 101049 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wbinvd), |
| 35766 | /* 101054 */ // (intrinsic_void 15005:{ *:[iPTR] }) => (WBINVD) |
| 35767 | /* 101054 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WBINVD), |
| 35768 | /* 101057 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35769 | /* 101061 */ GIR_RootConstrainSelectedInstOperands, |
| 35770 | /* 101062 */ // GIR_Coverage, 17086, |
| 35771 | /* 101062 */ GIR_EraseRootFromParent_Done, |
| 35772 | /* 101063 */ // Label 2136: @101063 |
| 35773 | /* 101063 */ GIM_Try, /*On fail goto*//*Label 2137*/ GIMT_Encode4(101085), // Rule ID 17087 // |
| 35774 | /* 101068 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasWBNOINVD), |
| 35775 | /* 101071 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wbnoinvd), |
| 35776 | /* 101076 */ // (intrinsic_void 15006:{ *:[iPTR] }) => (WBNOINVD) |
| 35777 | /* 101076 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WBNOINVD), |
| 35778 | /* 101079 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35779 | /* 101083 */ GIR_RootConstrainSelectedInstOperands, |
| 35780 | /* 101084 */ // GIR_Coverage, 17087, |
| 35781 | /* 101084 */ GIR_EraseRootFromParent_Done, |
| 35782 | /* 101085 */ // Label 2137: @101085 |
| 35783 | /* 101085 */ GIM_Try, /*On fail goto*//*Label 2138*/ GIMT_Encode4(101107), // Rule ID 17092 // |
| 35784 | /* 101090 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_saveprevssp), |
| 35785 | /* 101095 */ // (intrinsic_void 14687:{ *:[iPTR] }) => (SAVEPREVSSP) |
| 35786 | /* 101095 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAVEPREVSSP), |
| 35787 | /* 101098 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 35788 | /* 101101 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35789 | /* 101105 */ GIR_RootConstrainSelectedInstOperands, |
| 35790 | /* 101106 */ // GIR_Coverage, 17092, |
| 35791 | /* 101106 */ GIR_EraseRootFromParent_Done, |
| 35792 | /* 101107 */ // Label 2138: @101107 |
| 35793 | /* 101107 */ GIM_Try, /*On fail goto*//*Label 2139*/ GIMT_Encode4(101129), // Rule ID 17102 // |
| 35794 | /* 101112 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_setssbsy), |
| 35795 | /* 101117 */ // (intrinsic_void 14693:{ *:[iPTR] }) => (SETSSBSY) |
| 35796 | /* 101117 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SETSSBSY), |
| 35797 | /* 101120 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 35798 | /* 101123 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35799 | /* 101127 */ GIR_RootConstrainSelectedInstOperands, |
| 35800 | /* 101128 */ // GIR_Coverage, 17102, |
| 35801 | /* 101128 */ GIR_EraseRootFromParent_Done, |
| 35802 | /* 101129 */ // Label 2139: @101129 |
| 35803 | /* 101129 */ GIM_Reject, |
| 35804 | /* 101130 */ // Label 2121: @101130 |
| 35805 | /* 101130 */ GIM_Try, /*On fail goto*//*Label 2140*/ GIMT_Encode4(103018), |
| 35806 | /* 101135 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/2, |
| 35807 | /* 101138 */ GIM_Try, /*On fail goto*//*Label 2141*/ GIMT_Encode4(101196), // Rule ID 17130 // |
| 35808 | /* 101143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPTWRITE_In64BitMode), |
| 35809 | /* 101146 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ptwrite64), |
| 35810 | /* 101151 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 35811 | /* 101154 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 35812 | /* 101158 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 35813 | /* 101162 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 35814 | /* 101165 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 35815 | /* 101169 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 35816 | /* 101173 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 35817 | /* 101175 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35818 | /* 101182 */ // (intrinsic_void 14667:{ *:[iPTR] }, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (PTWRITE64m addr:{ *:[iPTR] }:$dst) |
| 35819 | /* 101182 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTWRITE64m), |
| 35820 | /* 101185 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35821 | /* 101189 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 35822 | /* 101194 */ GIR_RootConstrainSelectedInstOperands, |
| 35823 | /* 101195 */ // GIR_Coverage, 17130, |
| 35824 | /* 101195 */ GIR_EraseRootFromParent_Done, |
| 35825 | /* 101196 */ // Label 2141: @101196 |
| 35826 | /* 101196 */ GIM_Try, /*On fail goto*//*Label 2142*/ GIMT_Encode4(101254), // Rule ID 17129 // |
| 35827 | /* 101201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPTWRITE), |
| 35828 | /* 101204 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ptwrite32), |
| 35829 | /* 101209 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 35830 | /* 101212 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 35831 | /* 101216 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 35832 | /* 101220 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 35833 | /* 101223 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 35834 | /* 101227 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 35835 | /* 101231 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 35836 | /* 101233 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35837 | /* 101240 */ // (intrinsic_void 14666:{ *:[iPTR] }, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (PTWRITEm addr:{ *:[iPTR] }:$dst) |
| 35838 | /* 101240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTWRITEm), |
| 35839 | /* 101243 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35840 | /* 101247 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 35841 | /* 101252 */ GIR_RootConstrainSelectedInstOperands, |
| 35842 | /* 101253 */ // GIR_Coverage, 17129, |
| 35843 | /* 101253 */ GIR_EraseRootFromParent_Done, |
| 35844 | /* 101254 */ // Label 2142: @101254 |
| 35845 | /* 101254 */ GIM_Try, /*On fail goto*//*Label 2143*/ GIMT_Encode4(101291), // Rule ID 162 // |
| 35846 | /* 101259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCLFLUSHOPT), |
| 35847 | /* 101262 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_clflushopt), |
| 35848 | /* 101267 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35849 | /* 101271 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35850 | /* 101278 */ // (intrinsic_void 14548:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (CLFLUSHOPT addr:{ *:[iPTR] }:$src) |
| 35851 | /* 101278 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLFLUSHOPT), |
| 35852 | /* 101281 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35853 | /* 101285 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35854 | /* 101289 */ GIR_RootConstrainSelectedInstOperands, |
| 35855 | /* 101290 */ // GIR_Coverage, 162, |
| 35856 | /* 101290 */ GIR_EraseRootFromParent_Done, |
| 35857 | /* 101291 */ // Label 2143: @101291 |
| 35858 | /* 101291 */ GIM_Try, /*On fail goto*//*Label 2144*/ GIMT_Encode4(101328), // Rule ID 163 // |
| 35859 | /* 101296 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCLWB), |
| 35860 | /* 101299 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_clwb), |
| 35861 | /* 101304 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35862 | /* 101308 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35863 | /* 101315 */ // (intrinsic_void 14551:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (CLWB addr:{ *:[iPTR] }:$src) |
| 35864 | /* 101315 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLWB), |
| 35865 | /* 101318 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35866 | /* 101322 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35867 | /* 101326 */ GIR_RootConstrainSelectedInstOperands, |
| 35868 | /* 101327 */ // GIR_Coverage, 163, |
| 35869 | /* 101327 */ GIR_EraseRootFromParent_Done, |
| 35870 | /* 101328 */ // Label 2144: @101328 |
| 35871 | /* 101328 */ GIM_Try, /*On fail goto*//*Label 2145*/ GIMT_Encode4(101365), // Rule ID 164 // |
| 35872 | /* 101333 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCLDEMOTE), |
| 35873 | /* 101336 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_cldemote), |
| 35874 | /* 101341 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35875 | /* 101345 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35876 | /* 101352 */ // (intrinsic_void 14547:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (CLDEMOTE addr:{ *:[iPTR] }:$src) |
| 35877 | /* 101352 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLDEMOTE), |
| 35878 | /* 101355 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35879 | /* 101359 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35880 | /* 101363 */ GIR_RootConstrainSelectedInstOperands, |
| 35881 | /* 101364 */ // GIR_Coverage, 164, |
| 35882 | /* 101364 */ GIR_EraseRootFromParent_Done, |
| 35883 | /* 101365 */ // Label 2145: @101365 |
| 35884 | /* 101365 */ GIM_Try, /*On fail goto*//*Label 2146*/ GIMT_Encode4(101402), // Rule ID 169 // |
| 35885 | /* 101370 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVRS), |
| 35886 | /* 101373 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_prefetchrs), |
| 35887 | /* 101378 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35888 | /* 101382 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35889 | /* 101389 */ // (intrinsic_void 14665:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (PREFETCHRST2 addr:{ *:[iPTR] }:$src) |
| 35890 | /* 101389 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHRST2), |
| 35891 | /* 101392 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35892 | /* 101396 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35893 | /* 101400 */ GIR_RootConstrainSelectedInstOperands, |
| 35894 | /* 101401 */ // GIR_Coverage, 169, |
| 35895 | /* 101401 */ GIR_EraseRootFromParent_Done, |
| 35896 | /* 101402 */ // Label 2146: @101402 |
| 35897 | /* 101402 */ GIM_Try, /*On fail goto*//*Label 2147*/ GIMT_Encode4(101439), // Rule ID 1133 // |
| 35898 | /* 101407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFXSR), |
| 35899 | /* 101410 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_fxsave), |
| 35900 | /* 101415 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35901 | /* 101419 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35902 | /* 101426 */ // (intrinsic_void 14571:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst) => (FXSAVE addr:{ *:[iPTR] }:$dst) |
| 35903 | /* 101426 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FXSAVE), |
| 35904 | /* 101429 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35905 | /* 101433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35906 | /* 101437 */ GIR_RootConstrainSelectedInstOperands, |
| 35907 | /* 101438 */ // GIR_Coverage, 1133, |
| 35908 | /* 101438 */ GIR_EraseRootFromParent_Done, |
| 35909 | /* 101439 */ // Label 2147: @101439 |
| 35910 | /* 101439 */ GIM_Try, /*On fail goto*//*Label 2148*/ GIMT_Encode4(101476), // Rule ID 1134 // |
| 35911 | /* 101444 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFXSR_In64BitMode), |
| 35912 | /* 101447 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_fxsave64), |
| 35913 | /* 101452 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35914 | /* 101456 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35915 | /* 101463 */ // (intrinsic_void 14572:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst) => (FXSAVE64 addr:{ *:[iPTR] }:$dst) |
| 35916 | /* 101463 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FXSAVE64), |
| 35917 | /* 101466 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35918 | /* 101470 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35919 | /* 101474 */ GIR_RootConstrainSelectedInstOperands, |
| 35920 | /* 101475 */ // GIR_Coverage, 1134, |
| 35921 | /* 101475 */ GIR_EraseRootFromParent_Done, |
| 35922 | /* 101476 */ // Label 2148: @101476 |
| 35923 | /* 101476 */ GIM_Try, /*On fail goto*//*Label 2149*/ GIMT_Encode4(101519), // Rule ID 1135 // |
| 35924 | /* 101481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFXSR), |
| 35925 | /* 101484 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_fxrstor), |
| 35926 | /* 101489 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35927 | /* 101493 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35928 | /* 101500 */ // (intrinsic_void 14569:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (FXRSTOR:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 35929 | /* 101500 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FXRSTOR), |
| 35930 | /* 101503 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35931 | /* 101507 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 35932 | /* 101510 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPCW*/1, |
| 35933 | /* 101513 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35934 | /* 101517 */ GIR_RootConstrainSelectedInstOperands, |
| 35935 | /* 101518 */ // GIR_Coverage, 1135, |
| 35936 | /* 101518 */ GIR_EraseRootFromParent_Done, |
| 35937 | /* 101519 */ // Label 2149: @101519 |
| 35938 | /* 101519 */ GIM_Try, /*On fail goto*//*Label 2150*/ GIMT_Encode4(101562), // Rule ID 1136 // |
| 35939 | /* 101524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFXSR_In64BitMode), |
| 35940 | /* 101527 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_fxrstor64), |
| 35941 | /* 101532 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35942 | /* 101536 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35943 | /* 101543 */ // (intrinsic_void 14570:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (FXRSTOR64:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 35944 | /* 101543 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FXRSTOR64), |
| 35945 | /* 101546 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35946 | /* 101550 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 35947 | /* 101553 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPCW*/1, |
| 35948 | /* 101556 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35949 | /* 101560 */ GIR_RootConstrainSelectedInstOperands, |
| 35950 | /* 101561 */ // GIR_Coverage, 1136, |
| 35951 | /* 101561 */ GIR_EraseRootFromParent_Done, |
| 35952 | /* 101562 */ // Label 2150: @101562 |
| 35953 | /* 101562 */ GIM_Try, /*On fail goto*//*Label 2151*/ GIMT_Encode4(101599), // Rule ID 2509 // |
| 35954 | /* 101567 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCLFLUSH), |
| 35955 | /* 101570 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_clflush), |
| 35956 | /* 101575 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35957 | /* 101579 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35958 | /* 101586 */ // (intrinsic_void 14739:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (CLFLUSH addr:{ *:[iPTR] }:$src) |
| 35959 | /* 101586 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLFLUSH), |
| 35960 | /* 101589 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35961 | /* 101593 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35962 | /* 101597 */ GIR_RootConstrainSelectedInstOperands, |
| 35963 | /* 101598 */ // GIR_Coverage, 2509, |
| 35964 | /* 101598 */ GIR_EraseRootFromParent_Done, |
| 35965 | /* 101599 */ // Label 2151: @101599 |
| 35966 | /* 101599 */ GIM_Try, /*On fail goto*//*Label 2152*/ GIMT_Encode4(101639), // Rule ID 2514 // |
| 35967 | /* 101604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 35968 | /* 101607 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse_ldmxcsr), |
| 35969 | /* 101612 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35970 | /* 101616 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35971 | /* 101623 */ // (intrinsic_void 14720:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VLDMXCSR addr:{ *:[iPTR] }:$src) |
| 35972 | /* 101623 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VLDMXCSR), |
| 35973 | /* 101626 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35974 | /* 101630 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MXCSR*/0, |
| 35975 | /* 101633 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35976 | /* 101637 */ GIR_RootConstrainSelectedInstOperands, |
| 35977 | /* 101638 */ // GIR_Coverage, 2514, |
| 35978 | /* 101638 */ GIR_EraseRootFromParent_Done, |
| 35979 | /* 101639 */ // Label 2152: @101639 |
| 35980 | /* 101639 */ GIM_Try, /*On fail goto*//*Label 2153*/ GIMT_Encode4(101676), // Rule ID 2515 // |
| 35981 | /* 101644 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 35982 | /* 101647 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse_stmxcsr), |
| 35983 | /* 101652 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35984 | /* 101656 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35985 | /* 101663 */ // (intrinsic_void 14732:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst) => (VSTMXCSR addr:{ *:[iPTR] }:$dst) |
| 35986 | /* 101663 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSTMXCSR), |
| 35987 | /* 101666 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35988 | /* 101670 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35989 | /* 101674 */ GIR_RootConstrainSelectedInstOperands, |
| 35990 | /* 101675 */ // GIR_Coverage, 2515, |
| 35991 | /* 101675 */ GIR_EraseRootFromParent_Done, |
| 35992 | /* 101676 */ // Label 2153: @101676 |
| 35993 | /* 101676 */ GIM_Try, /*On fail goto*//*Label 2154*/ GIMT_Encode4(101713), // Rule ID 2516 // |
| 35994 | /* 101681 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse_ldmxcsr), |
| 35995 | /* 101686 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35996 | /* 101690 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35997 | /* 101697 */ // (intrinsic_void 14720:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (LDMXCSR addr:{ *:[iPTR] }:$src) |
| 35998 | /* 101697 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LDMXCSR), |
| 35999 | /* 101700 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36000 | /* 101704 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MXCSR*/0, |
| 36001 | /* 101707 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36002 | /* 101711 */ GIR_RootConstrainSelectedInstOperands, |
| 36003 | /* 101712 */ // GIR_Coverage, 2516, |
| 36004 | /* 101712 */ GIR_EraseRootFromParent_Done, |
| 36005 | /* 101713 */ // Label 2154: @101713 |
| 36006 | /* 101713 */ GIM_Try, /*On fail goto*//*Label 2155*/ GIMT_Encode4(101747), // Rule ID 2517 // |
| 36007 | /* 101718 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse_stmxcsr), |
| 36008 | /* 101723 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36009 | /* 101727 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36010 | /* 101734 */ // (intrinsic_void 14732:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst) => (STMXCSR addr:{ *:[iPTR] }:$dst) |
| 36011 | /* 101734 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::STMXCSR), |
| 36012 | /* 101737 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36013 | /* 101741 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36014 | /* 101745 */ GIR_RootConstrainSelectedInstOperands, |
| 36015 | /* 101746 */ // GIR_Coverage, 2517, |
| 36016 | /* 101746 */ GIR_EraseRootFromParent_Done, |
| 36017 | /* 101747 */ // Label 2155: @101747 |
| 36018 | /* 101747 */ GIM_Try, /*On fail goto*//*Label 2156*/ GIMT_Encode4(101808), // Rule ID 16993 // |
| 36019 | /* 101752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_In64BitMode_NoEGPR), |
| 36020 | /* 101755 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ldtilecfg), |
| 36021 | /* 101760 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36022 | /* 101764 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36023 | /* 101771 */ // (intrinsic_void 14577:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (LDTILECFG:{ *:[x86amx] } addr:{ *:[iPTR] }:$src) |
| 36024 | /* 101771 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LDTILECFG), |
| 36025 | /* 101774 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36026 | /* 101778 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM0*/0, |
| 36027 | /* 101781 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM1*/1, |
| 36028 | /* 101784 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM2*/2, |
| 36029 | /* 101787 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM3*/3, |
| 36030 | /* 101790 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM4*/4, |
| 36031 | /* 101793 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM5*/5, |
| 36032 | /* 101796 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM6*/6, |
| 36033 | /* 101799 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM7*/7, |
| 36034 | /* 101802 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36035 | /* 101806 */ GIR_RootConstrainSelectedInstOperands, |
| 36036 | /* 101807 */ // GIR_Coverage, 16993, |
| 36037 | /* 101807 */ GIR_EraseRootFromParent_Done, |
| 36038 | /* 101808 */ // Label 2156: @101808 |
| 36039 | /* 101808 */ GIM_Try, /*On fail goto*//*Label 2157*/ GIMT_Encode4(101845), // Rule ID 16994 // |
| 36040 | /* 101813 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_In64BitMode_NoEGPR), |
| 36041 | /* 101816 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sttilecfg), |
| 36042 | /* 101821 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36043 | /* 101825 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36044 | /* 101832 */ // (intrinsic_void 14873:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (STTILECFG addr:{ *:[iPTR] }:$src) |
| 36045 | /* 101832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::STTILECFG), |
| 36046 | /* 101835 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36047 | /* 101839 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36048 | /* 101843 */ GIR_RootConstrainSelectedInstOperands, |
| 36049 | /* 101844 */ // GIR_Coverage, 16994, |
| 36050 | /* 101844 */ GIR_EraseRootFromParent_Done, |
| 36051 | /* 101845 */ // Label 2157: @101845 |
| 36052 | /* 101845 */ GIM_Try, /*On fail goto*//*Label 2158*/ GIMT_Encode4(101906), // Rule ID 16995 // |
| 36053 | /* 101850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_HasEGPR_In64BitMode), |
| 36054 | /* 101853 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ldtilecfg), |
| 36055 | /* 101858 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36056 | /* 101862 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36057 | /* 101869 */ // (intrinsic_void 14577:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (LDTILECFG_EVEX:{ *:[x86amx] } addr:{ *:[iPTR] }:$src) |
| 36058 | /* 101869 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LDTILECFG_EVEX), |
| 36059 | /* 101872 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36060 | /* 101876 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM0*/0, |
| 36061 | /* 101879 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM1*/1, |
| 36062 | /* 101882 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM2*/2, |
| 36063 | /* 101885 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM3*/3, |
| 36064 | /* 101888 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM4*/4, |
| 36065 | /* 101891 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM5*/5, |
| 36066 | /* 101894 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM6*/6, |
| 36067 | /* 101897 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM7*/7, |
| 36068 | /* 101900 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36069 | /* 101904 */ GIR_RootConstrainSelectedInstOperands, |
| 36070 | /* 101905 */ // GIR_Coverage, 16995, |
| 36071 | /* 101905 */ GIR_EraseRootFromParent_Done, |
| 36072 | /* 101906 */ // Label 2158: @101906 |
| 36073 | /* 101906 */ GIM_Try, /*On fail goto*//*Label 2159*/ GIMT_Encode4(101943), // Rule ID 16996 // |
| 36074 | /* 101911 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_HasEGPR_In64BitMode), |
| 36075 | /* 101914 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sttilecfg), |
| 36076 | /* 101919 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36077 | /* 101923 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36078 | /* 101930 */ // (intrinsic_void 14873:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (STTILECFG_EVEX addr:{ *:[iPTR] }:$src) |
| 36079 | /* 101930 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::STTILECFG_EVEX), |
| 36080 | /* 101933 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36081 | /* 101937 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36082 | /* 101941 */ GIR_RootConstrainSelectedInstOperands, |
| 36083 | /* 101942 */ // GIR_Coverage, 16996, |
| 36084 | /* 101942 */ GIR_EraseRootFromParent_Done, |
| 36085 | /* 101943 */ // Label 2159: @101943 |
| 36086 | /* 101943 */ GIM_Try, /*On fail goto*//*Label 2160*/ GIMT_Encode4(101980), // Rule ID 17093 // |
| 36087 | /* 101948 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_rstorssp), |
| 36088 | /* 101953 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36089 | /* 101957 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36090 | /* 101964 */ // (intrinsic_void 14686:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (RSTORSSP addr:{ *:[iPTR] }:$src) |
| 36091 | /* 101964 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RSTORSSP), |
| 36092 | /* 101967 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36093 | /* 101971 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 36094 | /* 101974 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36095 | /* 101978 */ GIR_RootConstrainSelectedInstOperands, |
| 36096 | /* 101979 */ // GIR_Coverage, 17093, |
| 36097 | /* 101979 */ GIR_EraseRootFromParent_Done, |
| 36098 | /* 101980 */ // Label 2160: @101980 |
| 36099 | /* 101980 */ GIM_Try, /*On fail goto*//*Label 2161*/ GIMT_Encode4(102017), // Rule ID 17103 // |
| 36100 | /* 101985 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_clrssbsy), |
| 36101 | /* 101990 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36102 | /* 101994 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36103 | /* 102001 */ // (intrinsic_void 14549:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (CLRSSBSY addr:{ *:[iPTR] }:$src) |
| 36104 | /* 102001 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLRSSBSY), |
| 36105 | /* 102004 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36106 | /* 102008 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 36107 | /* 102011 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36108 | /* 102015 */ GIR_RootConstrainSelectedInstOperands, |
| 36109 | /* 102016 */ // GIR_Coverage, 17103, |
| 36110 | /* 102016 */ GIR_EraseRootFromParent_Done, |
| 36111 | /* 102017 */ // Label 2161: @102017 |
| 36112 | /* 102017 */ GIM_Try, /*On fail goto*//*Label 2162*/ GIMT_Encode4(102047), // Rule ID 17075 // |
| 36113 | /* 102022 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_int), |
| 36114 | /* 102027 */ // MIs[0] Operand 1 |
| 36115 | /* 102027 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(3), |
| 36116 | /* 102038 */ // (intrinsic_void 14575:{ *:[iPTR] }, 3:{ *:[i8] }) => (INT3) |
| 36117 | /* 102038 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INT3), |
| 36118 | /* 102041 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36119 | /* 102045 */ GIR_RootConstrainSelectedInstOperands, |
| 36120 | /* 102046 */ // GIR_Coverage, 17075, |
| 36121 | /* 102046 */ GIR_EraseRootFromParent_Done, |
| 36122 | /* 102047 */ // Label 2162: @102047 |
| 36123 | /* 102047 */ GIM_Try, /*On fail goto*//*Label 2163*/ GIMT_Encode4(102074), // Rule ID 16987 // |
| 36124 | /* 102052 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasRTM), |
| 36125 | /* 102055 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xabort), |
| 36126 | /* 102060 */ // MIs[0] imm |
| 36127 | /* 102060 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 36128 | /* 102063 */ // (intrinsic_void 15016:{ *:[iPTR] }, (timm:{ *:[i8] }):$imm) => (XABORT (timm:{ *:[i8] }):$imm) |
| 36129 | /* 102063 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XABORT), |
| 36130 | /* 102066 */ GIR_RootToRootCopy, /*OpIdx*/1, // imm |
| 36131 | /* 102068 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36132 | /* 102072 */ GIR_RootConstrainSelectedInstOperands, |
| 36133 | /* 102073 */ // GIR_Coverage, 16987, |
| 36134 | /* 102073 */ GIR_EraseRootFromParent_Done, |
| 36135 | /* 102074 */ // Label 2163: @102074 |
| 36136 | /* 102074 */ GIM_Try, /*On fail goto*//*Label 2164*/ GIMT_Encode4(102101), // Rule ID 16999 // |
| 36137 | /* 102079 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_In64BitMode), |
| 36138 | /* 102082 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tilezero), |
| 36139 | /* 102087 */ // MIs[0] src |
| 36140 | /* 102087 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 36141 | /* 102090 */ // (intrinsic_void 14947:{ *:[iPTR] }, (timm:{ *:[i8] }):$src) => (PTILEZERO (timm:{ *:[i8] }):$src) |
| 36142 | /* 102090 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTILEZERO), |
| 36143 | /* 102093 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36144 | /* 102095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36145 | /* 102099 */ GIR_RootConstrainSelectedInstOperands, |
| 36146 | /* 102100 */ // GIR_Coverage, 16999, |
| 36147 | /* 102100 */ GIR_EraseRootFromParent_Done, |
| 36148 | /* 102101 */ // Label 2164: @102101 |
| 36149 | /* 102101 */ GIM_Try, /*On fail goto*//*Label 2165*/ GIMT_Encode4(102125), // Rule ID 17077 // |
| 36150 | /* 102106 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_int), |
| 36151 | /* 102111 */ // MIs[0] trap |
| 36152 | /* 102111 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 36153 | /* 102114 */ // (intrinsic_void 14575:{ *:[iPTR] }, (timm:{ *:[i8] }):$trap) => (INT (timm:{ *:[i8] }):$trap) |
| 36154 | /* 102114 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INT), |
| 36155 | /* 102117 */ GIR_RootToRootCopy, /*OpIdx*/1, // trap |
| 36156 | /* 102119 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36157 | /* 102123 */ GIR_RootConstrainSelectedInstOperands, |
| 36158 | /* 102124 */ // GIR_Coverage, 17077, |
| 36159 | /* 102124 */ GIR_EraseRootFromParent_Done, |
| 36160 | /* 102125 */ // Label 2165: @102125 |
| 36161 | /* 102125 */ GIM_Try, /*On fail goto*//*Label 2166*/ GIMT_Encode4(102159), // Rule ID 1 // |
| 36162 | /* 102130 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode), |
| 36163 | /* 102133 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_flags_read_u32), |
| 36164 | /* 102138 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 36165 | /* 102141 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36166 | /* 102145 */ // (intrinsic_w_chain:{ *:[i32] } 14561:{ *:[iPTR] }) => (RDFLAGS32:{ *:[i32] }:{ *:[i32] }) |
| 36167 | /* 102145 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDFLAGS32), |
| 36168 | /* 102148 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36169 | /* 102150 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ESP*/0, |
| 36170 | /* 102153 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36171 | /* 102157 */ GIR_RootConstrainSelectedInstOperands, |
| 36172 | /* 102158 */ // GIR_Coverage, 1, |
| 36173 | /* 102158 */ GIR_EraseRootFromParent_Done, |
| 36174 | /* 102159 */ // Label 2166: @102159 |
| 36175 | /* 102159 */ GIM_Try, /*On fail goto*//*Label 2167*/ GIMT_Encode4(102193), // Rule ID 2 // |
| 36176 | /* 102164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 36177 | /* 102167 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_flags_read_u64), |
| 36178 | /* 102172 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 36179 | /* 102175 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36180 | /* 102179 */ // (intrinsic_w_chain:{ *:[i64] } 14562:{ *:[iPTR] }) => (RDFLAGS64:{ *:[i64] }:{ *:[i32] }) |
| 36181 | /* 102179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDFLAGS64), |
| 36182 | /* 102182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36183 | /* 102184 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ESP*/0, |
| 36184 | /* 102187 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36185 | /* 102191 */ GIR_RootConstrainSelectedInstOperands, |
| 36186 | /* 102192 */ // GIR_Coverage, 2, |
| 36187 | /* 102192 */ GIR_EraseRootFromParent_Done, |
| 36188 | /* 102193 */ // Label 2167: @102193 |
| 36189 | /* 102193 */ GIM_Try, /*On fail goto*//*Label 2168*/ GIMT_Encode4(102224), // Rule ID 115 // |
| 36190 | /* 102198 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 36191 | /* 102201 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_slwpcb), |
| 36192 | /* 102206 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 36193 | /* 102209 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36194 | /* 102213 */ // (intrinsic_w_chain:{ *:[i32] } 14701:{ *:[iPTR] }) => (SLWPCB:{ *:[i32] }) |
| 36195 | /* 102213 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SLWPCB), |
| 36196 | /* 102216 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36197 | /* 102218 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36198 | /* 102222 */ GIR_RootConstrainSelectedInstOperands, |
| 36199 | /* 102223 */ // GIR_Coverage, 115, |
| 36200 | /* 102223 */ GIR_EraseRootFromParent_Done, |
| 36201 | /* 102224 */ // Label 2168: @102224 |
| 36202 | /* 102224 */ GIM_Try, /*On fail goto*//*Label 2169*/ GIMT_Encode4(102255), // Rule ID 117 // |
| 36203 | /* 102229 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 36204 | /* 102232 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_slwpcb), |
| 36205 | /* 102237 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 36206 | /* 102240 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36207 | /* 102244 */ // (intrinsic_w_chain:{ *:[i64] } 14701:{ *:[iPTR] }) => (SLWPCB64:{ *:[i64] }) |
| 36208 | /* 102244 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SLWPCB64), |
| 36209 | /* 102247 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36210 | /* 102249 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36211 | /* 102253 */ GIR_RootConstrainSelectedInstOperands, |
| 36212 | /* 102254 */ // GIR_Coverage, 117, |
| 36213 | /* 102254 */ GIR_EraseRootFromParent_Done, |
| 36214 | /* 102255 */ // Label 2169: @102255 |
| 36215 | /* 102255 */ GIM_Try, /*On fail goto*//*Label 2170*/ GIMT_Encode4(102286), // Rule ID 16984 // |
| 36216 | /* 102260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasRTM), |
| 36217 | /* 102263 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xbegin), |
| 36218 | /* 102268 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 36219 | /* 102271 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36220 | /* 102275 */ // (intrinsic_w_chain:{ *:[i32] } 15017:{ *:[iPTR] }) => (XBEGIN:{ *:[i32] }) |
| 36221 | /* 102275 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XBEGIN), |
| 36222 | /* 102278 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36223 | /* 102280 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36224 | /* 102284 */ GIR_RootConstrainSelectedInstOperands, |
| 36225 | /* 102285 */ // GIR_Coverage, 16984, |
| 36226 | /* 102285 */ GIR_EraseRootFromParent_Done, |
| 36227 | /* 102286 */ // Label 2170: @102286 |
| 36228 | /* 102286 */ GIM_Try, /*On fail goto*//*Label 2171*/ GIMT_Encode4(102317), // Rule ID 17119 // |
| 36229 | /* 102291 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 36230 | /* 102294 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdfsbase_32), |
| 36231 | /* 102299 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 36232 | /* 102302 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36233 | /* 102306 */ // (intrinsic_w_chain:{ *:[i32] } 14668:{ *:[iPTR] }) => (RDFSBASE:{ *:[i32] }) |
| 36234 | /* 102306 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDFSBASE), |
| 36235 | /* 102309 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36236 | /* 102311 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36237 | /* 102315 */ GIR_RootConstrainSelectedInstOperands, |
| 36238 | /* 102316 */ // GIR_Coverage, 17119, |
| 36239 | /* 102316 */ GIR_EraseRootFromParent_Done, |
| 36240 | /* 102317 */ // Label 2171: @102317 |
| 36241 | /* 102317 */ GIM_Try, /*On fail goto*//*Label 2172*/ GIMT_Encode4(102348), // Rule ID 17120 // |
| 36242 | /* 102322 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 36243 | /* 102325 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdfsbase_64), |
| 36244 | /* 102330 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 36245 | /* 102333 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36246 | /* 102337 */ // (intrinsic_w_chain:{ *:[i64] } 14669:{ *:[iPTR] }) => (RDFSBASE64:{ *:[i64] }) |
| 36247 | /* 102337 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDFSBASE64), |
| 36248 | /* 102340 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36249 | /* 102342 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36250 | /* 102346 */ GIR_RootConstrainSelectedInstOperands, |
| 36251 | /* 102347 */ // GIR_Coverage, 17120, |
| 36252 | /* 102347 */ GIR_EraseRootFromParent_Done, |
| 36253 | /* 102348 */ // Label 2172: @102348 |
| 36254 | /* 102348 */ GIM_Try, /*On fail goto*//*Label 2173*/ GIMT_Encode4(102379), // Rule ID 17121 // |
| 36255 | /* 102353 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 36256 | /* 102356 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdgsbase_32), |
| 36257 | /* 102361 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 36258 | /* 102364 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36259 | /* 102368 */ // (intrinsic_w_chain:{ *:[i32] } 14670:{ *:[iPTR] }) => (RDGSBASE:{ *:[i32] }) |
| 36260 | /* 102368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDGSBASE), |
| 36261 | /* 102371 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36262 | /* 102373 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36263 | /* 102377 */ GIR_RootConstrainSelectedInstOperands, |
| 36264 | /* 102378 */ // GIR_Coverage, 17121, |
| 36265 | /* 102378 */ GIR_EraseRootFromParent_Done, |
| 36266 | /* 102379 */ // Label 2173: @102379 |
| 36267 | /* 102379 */ GIM_Try, /*On fail goto*//*Label 2174*/ GIMT_Encode4(102410), // Rule ID 17122 // |
| 36268 | /* 102384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 36269 | /* 102387 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdgsbase_64), |
| 36270 | /* 102392 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 36271 | /* 102395 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36272 | /* 102399 */ // (intrinsic_w_chain:{ *:[i64] } 14671:{ *:[iPTR] }) => (RDGSBASE64:{ *:[i64] }) |
| 36273 | /* 102399 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDGSBASE64), |
| 36274 | /* 102402 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36275 | /* 102404 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36276 | /* 102408 */ GIR_RootConstrainSelectedInstOperands, |
| 36277 | /* 102409 */ // GIR_Coverage, 17122, |
| 36278 | /* 102409 */ GIR_EraseRootFromParent_Done, |
| 36279 | /* 102410 */ // Label 2174: @102410 |
| 36280 | /* 102410 */ GIM_Try, /*On fail goto*//*Label 2175*/ GIMT_Encode4(102441), // Rule ID 17128 // |
| 36281 | /* 102415 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasRDPID_Not64BitMode), |
| 36282 | /* 102418 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdpid), |
| 36283 | /* 102423 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 36284 | /* 102426 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36285 | /* 102430 */ // (intrinsic_w_chain:{ *:[i32] } 14672:{ *:[iPTR] }) => (RDPID32:{ *:[i32] }) |
| 36286 | /* 102430 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDPID32), |
| 36287 | /* 102433 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36288 | /* 102435 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36289 | /* 102439 */ GIR_RootConstrainSelectedInstOperands, |
| 36290 | /* 102440 */ // GIR_Coverage, 17128, |
| 36291 | /* 102440 */ GIR_EraseRootFromParent_Done, |
| 36292 | /* 102441 */ // Label 2175: @102441 |
| 36293 | /* 102441 */ GIM_Try, /*On fail goto*//*Label 2176*/ GIMT_Encode4(102498), // Rule ID 22381 // |
| 36294 | /* 102446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasRDPID_In64BitMode), |
| 36295 | /* 102449 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdpid), |
| 36296 | /* 102454 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 36297 | /* 102457 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36298 | /* 102461 */ // (intrinsic_w_chain:{ *:[i32] } 14672:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[i32] } (RDPID64:{ *:[i64] }), sub_32bit:{ *:[i32] }) |
| 36299 | /* 102461 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 36300 | /* 102464 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::RDPID64), |
| 36301 | /* 102468 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 36302 | /* 102473 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 36303 | /* 102475 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 36304 | /* 102478 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36305 | /* 102480 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_32bit), |
| 36306 | /* 102487 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 36307 | /* 102492 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 36308 | /* 102497 */ // GIR_Coverage, 22381, |
| 36309 | /* 102497 */ GIR_EraseRootFromParent_Done, |
| 36310 | /* 102498 */ // Label 2176: @102498 |
| 36311 | /* 102498 */ GIM_Try, /*On fail goto*//*Label 2177*/ GIMT_Encode4(102538), // Rule ID 3 // |
| 36312 | /* 102503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode), |
| 36313 | /* 102506 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_flags_write_u32), |
| 36314 | /* 102511 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36315 | /* 102514 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36316 | /* 102518 */ // (intrinsic_void 14563:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (WRFLAGS32:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 36317 | /* 102518 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRFLAGS32), |
| 36318 | /* 102521 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36319 | /* 102523 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ESP*/0, |
| 36320 | /* 102526 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/1, |
| 36321 | /* 102529 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::DF*/2, |
| 36322 | /* 102532 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36323 | /* 102536 */ GIR_RootConstrainSelectedInstOperands, |
| 36324 | /* 102537 */ // GIR_Coverage, 3, |
| 36325 | /* 102537 */ GIR_EraseRootFromParent_Done, |
| 36326 | /* 102538 */ // Label 2177: @102538 |
| 36327 | /* 102538 */ GIM_Try, /*On fail goto*//*Label 2178*/ GIMT_Encode4(102578), // Rule ID 4 // |
| 36328 | /* 102543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 36329 | /* 102546 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_flags_write_u64), |
| 36330 | /* 102551 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36331 | /* 102554 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36332 | /* 102558 */ // (intrinsic_void 14564:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (WRFLAGS64:{ *:[i64] } GR64:{ *:[i64] }:$src) |
| 36333 | /* 102558 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRFLAGS64), |
| 36334 | /* 102561 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36335 | /* 102563 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::RSP*/0, |
| 36336 | /* 102566 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/1, |
| 36337 | /* 102569 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::DF*/2, |
| 36338 | /* 102572 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36339 | /* 102576 */ GIR_RootConstrainSelectedInstOperands, |
| 36340 | /* 102577 */ // GIR_Coverage, 4, |
| 36341 | /* 102577 */ GIR_EraseRootFromParent_Done, |
| 36342 | /* 102578 */ // Label 2178: @102578 |
| 36343 | /* 102578 */ GIM_Try, /*On fail goto*//*Label 2179*/ GIMT_Encode4(102609), // Rule ID 154 // |
| 36344 | /* 102583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasUINTR_In64BitMode), |
| 36345 | /* 102586 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_senduipi), |
| 36346 | /* 102591 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36347 | /* 102594 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36348 | /* 102598 */ // (intrinsic_void 14691:{ *:[iPTR] }, GR64:{ *:[i64] }:$arg) => (SENDUIPI GR64:{ *:[i64] }:$arg) |
| 36349 | /* 102598 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SENDUIPI), |
| 36350 | /* 102601 */ GIR_RootToRootCopy, /*OpIdx*/1, // arg |
| 36351 | /* 102603 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36352 | /* 102607 */ GIR_RootConstrainSelectedInstOperands, |
| 36353 | /* 102608 */ // GIR_Coverage, 154, |
| 36354 | /* 102608 */ GIR_EraseRootFromParent_Done, |
| 36355 | /* 102609 */ // Label 2179: @102609 |
| 36356 | /* 102609 */ GIM_Try, /*On fail goto*//*Label 2180*/ GIMT_Encode4(102640), // Rule ID 17088 // |
| 36357 | /* 102614 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_incsspd), |
| 36358 | /* 102619 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36359 | /* 102622 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36360 | /* 102626 */ // (intrinsic_void 14573:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (INCSSPD GR32:{ *:[i32] }:$src) |
| 36361 | /* 102626 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INCSSPD), |
| 36362 | /* 102629 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36363 | /* 102631 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 36364 | /* 102634 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36365 | /* 102638 */ GIR_RootConstrainSelectedInstOperands, |
| 36366 | /* 102639 */ // GIR_Coverage, 17088, |
| 36367 | /* 102639 */ GIR_EraseRootFromParent_Done, |
| 36368 | /* 102640 */ // Label 2180: @102640 |
| 36369 | /* 102640 */ GIM_Try, /*On fail goto*//*Label 2181*/ GIMT_Encode4(102671), // Rule ID 17089 // |
| 36370 | /* 102645 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_incsspq), |
| 36371 | /* 102650 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36372 | /* 102653 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36373 | /* 102657 */ // (intrinsic_void 14574:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (INCSSPQ GR64:{ *:[i64] }:$src) |
| 36374 | /* 102657 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INCSSPQ), |
| 36375 | /* 102660 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36376 | /* 102662 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 36377 | /* 102665 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36378 | /* 102669 */ GIR_RootConstrainSelectedInstOperands, |
| 36379 | /* 102670 */ // GIR_Coverage, 17089, |
| 36380 | /* 102670 */ GIR_EraseRootFromParent_Done, |
| 36381 | /* 102671 */ // Label 2181: @102671 |
| 36382 | /* 102671 */ GIM_Try, /*On fail goto*//*Label 2182*/ GIMT_Encode4(102702), // Rule ID 17123 // |
| 36383 | /* 102676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 36384 | /* 102679 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrfsbase_32), |
| 36385 | /* 102684 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36386 | /* 102687 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36387 | /* 102691 */ // (intrinsic_void 15007:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (WRFSBASE GR32:{ *:[i32] }:$src) |
| 36388 | /* 102691 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRFSBASE), |
| 36389 | /* 102694 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36390 | /* 102696 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36391 | /* 102700 */ GIR_RootConstrainSelectedInstOperands, |
| 36392 | /* 102701 */ // GIR_Coverage, 17123, |
| 36393 | /* 102701 */ GIR_EraseRootFromParent_Done, |
| 36394 | /* 102702 */ // Label 2182: @102702 |
| 36395 | /* 102702 */ GIM_Try, /*On fail goto*//*Label 2183*/ GIMT_Encode4(102733), // Rule ID 17124 // |
| 36396 | /* 102707 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 36397 | /* 102710 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrfsbase_64), |
| 36398 | /* 102715 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36399 | /* 102718 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36400 | /* 102722 */ // (intrinsic_void 15008:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (WRFSBASE64 GR64:{ *:[i64] }:$src) |
| 36401 | /* 102722 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRFSBASE64), |
| 36402 | /* 102725 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36403 | /* 102727 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36404 | /* 102731 */ GIR_RootConstrainSelectedInstOperands, |
| 36405 | /* 102732 */ // GIR_Coverage, 17124, |
| 36406 | /* 102732 */ GIR_EraseRootFromParent_Done, |
| 36407 | /* 102733 */ // Label 2183: @102733 |
| 36408 | /* 102733 */ GIM_Try, /*On fail goto*//*Label 2184*/ GIMT_Encode4(102764), // Rule ID 17125 // |
| 36409 | /* 102738 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 36410 | /* 102741 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrgsbase_32), |
| 36411 | /* 102746 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36412 | /* 102749 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36413 | /* 102753 */ // (intrinsic_void 15009:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (WRGSBASE GR32:{ *:[i32] }:$src) |
| 36414 | /* 102753 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRGSBASE), |
| 36415 | /* 102756 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36416 | /* 102758 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36417 | /* 102762 */ GIR_RootConstrainSelectedInstOperands, |
| 36418 | /* 102763 */ // GIR_Coverage, 17125, |
| 36419 | /* 102763 */ GIR_EraseRootFromParent_Done, |
| 36420 | /* 102764 */ // Label 2184: @102764 |
| 36421 | /* 102764 */ GIM_Try, /*On fail goto*//*Label 2185*/ GIMT_Encode4(102795), // Rule ID 17126 // |
| 36422 | /* 102769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 36423 | /* 102772 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrgsbase_64), |
| 36424 | /* 102777 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36425 | /* 102780 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36426 | /* 102784 */ // (intrinsic_void 15010:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (WRGSBASE64 GR64:{ *:[i64] }:$src) |
| 36427 | /* 102784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRGSBASE64), |
| 36428 | /* 102787 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36429 | /* 102789 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36430 | /* 102793 */ GIR_RootConstrainSelectedInstOperands, |
| 36431 | /* 102794 */ // GIR_Coverage, 17126, |
| 36432 | /* 102794 */ GIR_EraseRootFromParent_Done, |
| 36433 | /* 102795 */ // Label 2185: @102795 |
| 36434 | /* 102795 */ GIM_Try, /*On fail goto*//*Label 2186*/ GIMT_Encode4(102826), // Rule ID 17131 // |
| 36435 | /* 102800 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPTWRITE), |
| 36436 | /* 102803 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ptwrite32), |
| 36437 | /* 102808 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36438 | /* 102811 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36439 | /* 102815 */ // (intrinsic_void 14666:{ *:[iPTR] }, GR32:{ *:[i32] }:$dst) => (PTWRITEr GR32:{ *:[i32] }:$dst) |
| 36440 | /* 102815 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTWRITEr), |
| 36441 | /* 102818 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 36442 | /* 102820 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36443 | /* 102824 */ GIR_RootConstrainSelectedInstOperands, |
| 36444 | /* 102825 */ // GIR_Coverage, 17131, |
| 36445 | /* 102825 */ GIR_EraseRootFromParent_Done, |
| 36446 | /* 102826 */ // Label 2186: @102826 |
| 36447 | /* 102826 */ GIM_Try, /*On fail goto*//*Label 2187*/ GIMT_Encode4(102857), // Rule ID 17132 // |
| 36448 | /* 102831 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPTWRITE_In64BitMode), |
| 36449 | /* 102834 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ptwrite64), |
| 36450 | /* 102839 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36451 | /* 102842 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36452 | /* 102846 */ // (intrinsic_void 14667:{ *:[iPTR] }, GR64:{ *:[i64] }:$dst) => (PTWRITE64r GR64:{ *:[i64] }:$dst) |
| 36453 | /* 102846 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTWRITE64r), |
| 36454 | /* 102849 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 36455 | /* 102851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36456 | /* 102855 */ GIR_RootConstrainSelectedInstOperands, |
| 36457 | /* 102856 */ // GIR_Coverage, 17132, |
| 36458 | /* 102856 */ GIR_EraseRootFromParent_Done, |
| 36459 | /* 102857 */ // Label 2187: @102857 |
| 36460 | /* 102857 */ GIM_Try, /*On fail goto*//*Label 2188*/ GIMT_Encode4(102889), // Rule ID 114 // |
| 36461 | /* 102862 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 36462 | /* 102865 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_llwpcb), |
| 36463 | /* 102870 */ // MIs[0] src |
| 36464 | /* 102870 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 36465 | /* 102874 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36466 | /* 102878 */ // (intrinsic_void 14579:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (LLWPCB GR32:{ *:[i32] }:$src) |
| 36467 | /* 102878 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LLWPCB), |
| 36468 | /* 102881 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36469 | /* 102883 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36470 | /* 102887 */ GIR_RootConstrainSelectedInstOperands, |
| 36471 | /* 102888 */ // GIR_Coverage, 114, |
| 36472 | /* 102888 */ GIR_EraseRootFromParent_Done, |
| 36473 | /* 102889 */ // Label 2188: @102889 |
| 36474 | /* 102889 */ GIM_Try, /*On fail goto*//*Label 2189*/ GIMT_Encode4(102921), // Rule ID 116 // |
| 36475 | /* 102894 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 36476 | /* 102897 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_llwpcb), |
| 36477 | /* 102902 */ // MIs[0] src |
| 36478 | /* 102902 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/64, |
| 36479 | /* 102906 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36480 | /* 102910 */ // (intrinsic_void 14579:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (LLWPCB64 GR64:{ *:[i64] }:$src) |
| 36481 | /* 102910 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LLWPCB64), |
| 36482 | /* 102913 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36483 | /* 102915 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36484 | /* 102919 */ GIR_RootConstrainSelectedInstOperands, |
| 36485 | /* 102920 */ // GIR_Coverage, 116, |
| 36486 | /* 102920 */ GIR_EraseRootFromParent_Done, |
| 36487 | /* 102921 */ // Label 2189: @102921 |
| 36488 | /* 102921 */ GIM_Try, /*On fail goto*//*Label 2190*/ GIMT_Encode4(102953), // Rule ID 126 // |
| 36489 | /* 102926 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasWAITPKG_Not64BitMode), |
| 36490 | /* 102929 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_umonitor), |
| 36491 | /* 102934 */ // MIs[0] src |
| 36492 | /* 102934 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/16, |
| 36493 | /* 102938 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 36494 | /* 102942 */ // (intrinsic_void 14964:{ *:[iPTR] }, GR16:{ *:[i16] }:$src) => (UMONITOR16 GR16:{ *:[i16] }:$src) |
| 36495 | /* 102942 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::UMONITOR16), |
| 36496 | /* 102945 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36497 | /* 102947 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36498 | /* 102951 */ GIR_RootConstrainSelectedInstOperands, |
| 36499 | /* 102952 */ // GIR_Coverage, 126, |
| 36500 | /* 102952 */ GIR_EraseRootFromParent_Done, |
| 36501 | /* 102953 */ // Label 2190: @102953 |
| 36502 | /* 102953 */ GIM_Try, /*On fail goto*//*Label 2191*/ GIMT_Encode4(102985), // Rule ID 127 // |
| 36503 | /* 102958 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasWAITPKG), |
| 36504 | /* 102961 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_umonitor), |
| 36505 | /* 102966 */ // MIs[0] src |
| 36506 | /* 102966 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 36507 | /* 102970 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36508 | /* 102974 */ // (intrinsic_void 14964:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (UMONITOR32 GR32:{ *:[i32] }:$src) |
| 36509 | /* 102974 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::UMONITOR32), |
| 36510 | /* 102977 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36511 | /* 102979 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36512 | /* 102983 */ GIR_RootConstrainSelectedInstOperands, |
| 36513 | /* 102984 */ // GIR_Coverage, 127, |
| 36514 | /* 102984 */ GIR_EraseRootFromParent_Done, |
| 36515 | /* 102985 */ // Label 2191: @102985 |
| 36516 | /* 102985 */ GIM_Try, /*On fail goto*//*Label 2192*/ GIMT_Encode4(103017), // Rule ID 128 // |
| 36517 | /* 102990 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasWAITPKG_In64BitMode), |
| 36518 | /* 102993 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_umonitor), |
| 36519 | /* 102998 */ // MIs[0] src |
| 36520 | /* 102998 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/64, |
| 36521 | /* 103002 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36522 | /* 103006 */ // (intrinsic_void 14964:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (UMONITOR64 GR64:{ *:[i64] }:$src) |
| 36523 | /* 103006 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::UMONITOR64), |
| 36524 | /* 103009 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36525 | /* 103011 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36526 | /* 103015 */ GIR_RootConstrainSelectedInstOperands, |
| 36527 | /* 103016 */ // GIR_Coverage, 128, |
| 36528 | /* 103016 */ GIR_EraseRootFromParent_Done, |
| 36529 | /* 103017 */ // Label 2192: @103017 |
| 36530 | /* 103017 */ GIM_Reject, |
| 36531 | /* 103018 */ // Label 2140: @103018 |
| 36532 | /* 103018 */ GIM_Try, /*On fail goto*//*Label 2193*/ GIMT_Encode4(106012), |
| 36533 | /* 103023 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/3, |
| 36534 | /* 103026 */ GIM_Try, /*On fail goto*//*Label 2194*/ GIMT_Encode4(103072), // Rule ID 165 // |
| 36535 | /* 103031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVRS_In64BitMode_NoEGPR), |
| 36536 | /* 103034 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrsqi), |
| 36537 | /* 103039 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s8, |
| 36538 | /* 103042 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 36539 | /* 103046 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36540 | /* 103050 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36541 | /* 103057 */ // (intrinsic_w_chain:{ *:[i8] } 14659:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS8rm:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 36542 | /* 103057 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS8rm), |
| 36543 | /* 103060 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36544 | /* 103062 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36545 | /* 103066 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36546 | /* 103070 */ GIR_RootConstrainSelectedInstOperands, |
| 36547 | /* 103071 */ // GIR_Coverage, 165, |
| 36548 | /* 103071 */ GIR_EraseRootFromParent_Done, |
| 36549 | /* 103072 */ // Label 2194: @103072 |
| 36550 | /* 103072 */ GIM_Try, /*On fail goto*//*Label 2195*/ GIMT_Encode4(103118), // Rule ID 166 // |
| 36551 | /* 103077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVRS_In64BitMode_NoEGPR), |
| 36552 | /* 103080 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrshi), |
| 36553 | /* 103085 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s16, |
| 36554 | /* 103088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 36555 | /* 103092 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36556 | /* 103096 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36557 | /* 103103 */ // (intrinsic_w_chain:{ *:[i16] } 14658:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS16rm:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 36558 | /* 103103 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS16rm), |
| 36559 | /* 103106 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36560 | /* 103108 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36561 | /* 103112 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36562 | /* 103116 */ GIR_RootConstrainSelectedInstOperands, |
| 36563 | /* 103117 */ // GIR_Coverage, 166, |
| 36564 | /* 103117 */ GIR_EraseRootFromParent_Done, |
| 36565 | /* 103118 */ // Label 2195: @103118 |
| 36566 | /* 103118 */ GIM_Try, /*On fail goto*//*Label 2196*/ GIMT_Encode4(103164), // Rule ID 167 // |
| 36567 | /* 103123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVRS_In64BitMode_NoEGPR), |
| 36568 | /* 103126 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrssi), |
| 36569 | /* 103131 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 36570 | /* 103134 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36571 | /* 103138 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36572 | /* 103142 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36573 | /* 103149 */ // (intrinsic_w_chain:{ *:[i32] } 14660:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 36574 | /* 103149 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS32rm), |
| 36575 | /* 103152 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36576 | /* 103154 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36577 | /* 103158 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36578 | /* 103162 */ GIR_RootConstrainSelectedInstOperands, |
| 36579 | /* 103163 */ // GIR_Coverage, 167, |
| 36580 | /* 103163 */ GIR_EraseRootFromParent_Done, |
| 36581 | /* 103164 */ // Label 2196: @103164 |
| 36582 | /* 103164 */ GIM_Try, /*On fail goto*//*Label 2197*/ GIMT_Encode4(103210), // Rule ID 168 // |
| 36583 | /* 103169 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVRS_In64BitMode_NoEGPR), |
| 36584 | /* 103172 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrsdi), |
| 36585 | /* 103177 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 36586 | /* 103180 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36587 | /* 103184 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36588 | /* 103188 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36589 | /* 103195 */ // (intrinsic_w_chain:{ *:[i64] } 14657:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 36590 | /* 103195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS64rm), |
| 36591 | /* 103198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36592 | /* 103200 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36593 | /* 103204 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36594 | /* 103208 */ GIR_RootConstrainSelectedInstOperands, |
| 36595 | /* 103209 */ // GIR_Coverage, 168, |
| 36596 | /* 103209 */ GIR_EraseRootFromParent_Done, |
| 36597 | /* 103210 */ // Label 2197: @103210 |
| 36598 | /* 103210 */ GIM_Try, /*On fail goto*//*Label 2198*/ GIMT_Encode4(103256), // Rule ID 170 // |
| 36599 | /* 103215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVRS_In64BitMode), |
| 36600 | /* 103218 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrsqi), |
| 36601 | /* 103223 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s8, |
| 36602 | /* 103226 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 36603 | /* 103230 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36604 | /* 103234 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36605 | /* 103241 */ // (intrinsic_w_chain:{ *:[i8] } 14659:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS8rm_EVEX:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 36606 | /* 103241 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS8rm_EVEX), |
| 36607 | /* 103244 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36608 | /* 103246 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36609 | /* 103250 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36610 | /* 103254 */ GIR_RootConstrainSelectedInstOperands, |
| 36611 | /* 103255 */ // GIR_Coverage, 170, |
| 36612 | /* 103255 */ GIR_EraseRootFromParent_Done, |
| 36613 | /* 103256 */ // Label 2198: @103256 |
| 36614 | /* 103256 */ GIM_Try, /*On fail goto*//*Label 2199*/ GIMT_Encode4(103302), // Rule ID 171 // |
| 36615 | /* 103261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVRS_In64BitMode), |
| 36616 | /* 103264 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrshi), |
| 36617 | /* 103269 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s16, |
| 36618 | /* 103272 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 36619 | /* 103276 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36620 | /* 103280 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36621 | /* 103287 */ // (intrinsic_w_chain:{ *:[i16] } 14658:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS16rm_EVEX:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 36622 | /* 103287 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS16rm_EVEX), |
| 36623 | /* 103290 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36624 | /* 103292 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36625 | /* 103296 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36626 | /* 103300 */ GIR_RootConstrainSelectedInstOperands, |
| 36627 | /* 103301 */ // GIR_Coverage, 171, |
| 36628 | /* 103301 */ GIR_EraseRootFromParent_Done, |
| 36629 | /* 103302 */ // Label 2199: @103302 |
| 36630 | /* 103302 */ GIM_Try, /*On fail goto*//*Label 2200*/ GIMT_Encode4(103348), // Rule ID 172 // |
| 36631 | /* 103307 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVRS_In64BitMode), |
| 36632 | /* 103310 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrssi), |
| 36633 | /* 103315 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 36634 | /* 103318 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36635 | /* 103322 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36636 | /* 103326 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36637 | /* 103333 */ // (intrinsic_w_chain:{ *:[i32] } 14660:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS32rm_EVEX:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 36638 | /* 103333 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS32rm_EVEX), |
| 36639 | /* 103336 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36640 | /* 103338 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36641 | /* 103342 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36642 | /* 103346 */ GIR_RootConstrainSelectedInstOperands, |
| 36643 | /* 103347 */ // GIR_Coverage, 172, |
| 36644 | /* 103347 */ GIR_EraseRootFromParent_Done, |
| 36645 | /* 103348 */ // Label 2200: @103348 |
| 36646 | /* 103348 */ GIM_Try, /*On fail goto*//*Label 2201*/ GIMT_Encode4(103394), // Rule ID 173 // |
| 36647 | /* 103353 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVRS_In64BitMode), |
| 36648 | /* 103356 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrsdi), |
| 36649 | /* 103361 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 36650 | /* 103364 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36651 | /* 103368 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36652 | /* 103372 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36653 | /* 103379 */ // (intrinsic_w_chain:{ *:[i64] } 14657:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS64rm_EVEX:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 36654 | /* 103379 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS64rm_EVEX), |
| 36655 | /* 103382 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36656 | /* 103384 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36657 | /* 103388 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36658 | /* 103392 */ GIR_RootConstrainSelectedInstOperands, |
| 36659 | /* 103393 */ // GIR_Coverage, 173, |
| 36660 | /* 103393 */ GIR_EraseRootFromParent_Done, |
| 36661 | /* 103394 */ // Label 2201: @103394 |
| 36662 | /* 103394 */ GIM_Try, /*On fail goto*//*Label 2202*/ GIMT_Encode4(103440), // Rule ID 2951 // |
| 36663 | /* 103399 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 36664 | /* 103402 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse3_ldu_dq), |
| 36665 | /* 103407 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 36666 | /* 103410 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36667 | /* 103414 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36668 | /* 103418 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36669 | /* 103425 */ // (intrinsic_w_chain:{ *:[v16i8] } 14805:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VLDDQUrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 36670 | /* 103425 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VLDDQUrm), |
| 36671 | /* 103428 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36672 | /* 103430 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36673 | /* 103434 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36674 | /* 103438 */ GIR_RootConstrainSelectedInstOperands, |
| 36675 | /* 103439 */ // GIR_Coverage, 2951, |
| 36676 | /* 103439 */ GIR_EraseRootFromParent_Done, |
| 36677 | /* 103440 */ // Label 2202: @103440 |
| 36678 | /* 103440 */ GIM_Try, /*On fail goto*//*Label 2203*/ GIMT_Encode4(103486), // Rule ID 2952 // |
| 36679 | /* 103445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 36680 | /* 103448 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_ldu_dq_256), |
| 36681 | /* 103453 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s8, |
| 36682 | /* 103456 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36683 | /* 103460 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36684 | /* 103464 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36685 | /* 103471 */ // (intrinsic_w_chain:{ *:[v32i8] } 13426:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VLDDQUYrm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 36686 | /* 103471 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VLDDQUYrm), |
| 36687 | /* 103474 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36688 | /* 103476 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36689 | /* 103480 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36690 | /* 103484 */ GIR_RootConstrainSelectedInstOperands, |
| 36691 | /* 103485 */ // GIR_Coverage, 2952, |
| 36692 | /* 103485 */ GIR_EraseRootFromParent_Done, |
| 36693 | /* 103486 */ // Label 2203: @103486 |
| 36694 | /* 103486 */ GIM_Try, /*On fail goto*//*Label 2204*/ GIMT_Encode4(103532), // Rule ID 2953 // |
| 36695 | /* 103491 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE3), |
| 36696 | /* 103494 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse3_ldu_dq), |
| 36697 | /* 103499 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 36698 | /* 103502 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36699 | /* 103506 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36700 | /* 103510 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36701 | /* 103517 */ // (intrinsic_w_chain:{ *:[v16i8] } 14805:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (LDDQUrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 36702 | /* 103517 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LDDQUrm), |
| 36703 | /* 103520 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36704 | /* 103522 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36705 | /* 103526 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36706 | /* 103530 */ GIR_RootConstrainSelectedInstOperands, |
| 36707 | /* 103531 */ // GIR_Coverage, 2953, |
| 36708 | /* 103531 */ GIR_EraseRootFromParent_Done, |
| 36709 | /* 103532 */ // Label 2204: @103532 |
| 36710 | /* 103532 */ GIM_Try, /*On fail goto*//*Label 2205*/ GIMT_Encode4(103578), // Rule ID 3543 // |
| 36711 | /* 103537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36712 | /* 103540 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vbcstnebf162ps128), |
| 36713 | /* 103545 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36714 | /* 103548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36715 | /* 103552 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36716 | /* 103556 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36717 | /* 103563 */ // (intrinsic_w_chain:{ *:[v4f32] } 14968:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VBCSTNEBF162PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 36718 | /* 103563 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VBCSTNEBF162PSrm), |
| 36719 | /* 103566 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36720 | /* 103568 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36721 | /* 103572 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36722 | /* 103576 */ GIR_RootConstrainSelectedInstOperands, |
| 36723 | /* 103577 */ // GIR_Coverage, 3543, |
| 36724 | /* 103577 */ GIR_EraseRootFromParent_Done, |
| 36725 | /* 103578 */ // Label 2205: @103578 |
| 36726 | /* 103578 */ GIM_Try, /*On fail goto*//*Label 2206*/ GIMT_Encode4(103624), // Rule ID 3544 // |
| 36727 | /* 103583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36728 | /* 103586 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vbcstnebf162ps256), |
| 36729 | /* 103591 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36730 | /* 103594 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36731 | /* 103598 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36732 | /* 103602 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36733 | /* 103609 */ // (intrinsic_w_chain:{ *:[v8f32] } 14969:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VBCSTNEBF162PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 36734 | /* 103609 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VBCSTNEBF162PSYrm), |
| 36735 | /* 103612 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36736 | /* 103614 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36737 | /* 103618 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36738 | /* 103622 */ GIR_RootConstrainSelectedInstOperands, |
| 36739 | /* 103623 */ // GIR_Coverage, 3544, |
| 36740 | /* 103623 */ GIR_EraseRootFromParent_Done, |
| 36741 | /* 103624 */ // Label 2206: @103624 |
| 36742 | /* 103624 */ GIM_Try, /*On fail goto*//*Label 2207*/ GIMT_Encode4(103670), // Rule ID 3545 // |
| 36743 | /* 103629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36744 | /* 103632 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vbcstnesh2ps128), |
| 36745 | /* 103637 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36746 | /* 103640 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36747 | /* 103644 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36748 | /* 103648 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36749 | /* 103655 */ // (intrinsic_w_chain:{ *:[v4f32] } 14970:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VBCSTNESH2PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 36750 | /* 103655 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VBCSTNESH2PSrm), |
| 36751 | /* 103658 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36752 | /* 103660 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36753 | /* 103664 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36754 | /* 103668 */ GIR_RootConstrainSelectedInstOperands, |
| 36755 | /* 103669 */ // GIR_Coverage, 3545, |
| 36756 | /* 103669 */ GIR_EraseRootFromParent_Done, |
| 36757 | /* 103670 */ // Label 2207: @103670 |
| 36758 | /* 103670 */ GIM_Try, /*On fail goto*//*Label 2208*/ GIMT_Encode4(103716), // Rule ID 3546 // |
| 36759 | /* 103675 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36760 | /* 103678 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vbcstnesh2ps256), |
| 36761 | /* 103683 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36762 | /* 103686 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36763 | /* 103690 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36764 | /* 103694 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36765 | /* 103701 */ // (intrinsic_w_chain:{ *:[v8f32] } 14971:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VBCSTNESH2PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 36766 | /* 103701 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VBCSTNESH2PSYrm), |
| 36767 | /* 103704 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36768 | /* 103706 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36769 | /* 103710 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36770 | /* 103714 */ GIR_RootConstrainSelectedInstOperands, |
| 36771 | /* 103715 */ // GIR_Coverage, 3546, |
| 36772 | /* 103715 */ GIR_EraseRootFromParent_Done, |
| 36773 | /* 103716 */ // Label 2208: @103716 |
| 36774 | /* 103716 */ GIM_Try, /*On fail goto*//*Label 2209*/ GIMT_Encode4(103762), // Rule ID 3547 // |
| 36775 | /* 103721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36776 | /* 103724 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneebf162ps128), |
| 36777 | /* 103729 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36778 | /* 103732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36779 | /* 103736 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36780 | /* 103740 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36781 | /* 103747 */ // (intrinsic_w_chain:{ *:[v4f32] } 14972:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEEBF162PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 36782 | /* 103747 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEEBF162PSrm), |
| 36783 | /* 103750 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36784 | /* 103752 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36785 | /* 103756 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36786 | /* 103760 */ GIR_RootConstrainSelectedInstOperands, |
| 36787 | /* 103761 */ // GIR_Coverage, 3547, |
| 36788 | /* 103761 */ GIR_EraseRootFromParent_Done, |
| 36789 | /* 103762 */ // Label 2209: @103762 |
| 36790 | /* 103762 */ GIM_Try, /*On fail goto*//*Label 2210*/ GIMT_Encode4(103808), // Rule ID 3548 // |
| 36791 | /* 103767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36792 | /* 103770 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneebf162ps256), |
| 36793 | /* 103775 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36794 | /* 103778 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36795 | /* 103782 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36796 | /* 103786 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36797 | /* 103793 */ // (intrinsic_w_chain:{ *:[v8f32] } 14973:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEEBF162PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 36798 | /* 103793 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEEBF162PSYrm), |
| 36799 | /* 103796 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36800 | /* 103798 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36801 | /* 103802 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36802 | /* 103806 */ GIR_RootConstrainSelectedInstOperands, |
| 36803 | /* 103807 */ // GIR_Coverage, 3548, |
| 36804 | /* 103807 */ GIR_EraseRootFromParent_Done, |
| 36805 | /* 103808 */ // Label 2210: @103808 |
| 36806 | /* 103808 */ GIM_Try, /*On fail goto*//*Label 2211*/ GIMT_Encode4(103854), // Rule ID 3549 // |
| 36807 | /* 103813 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36808 | /* 103816 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneeph2ps128), |
| 36809 | /* 103821 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36810 | /* 103824 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36811 | /* 103828 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36812 | /* 103832 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36813 | /* 103839 */ // (intrinsic_w_chain:{ *:[v4f32] } 14974:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEEPH2PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 36814 | /* 103839 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEEPH2PSrm), |
| 36815 | /* 103842 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36816 | /* 103844 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36817 | /* 103848 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36818 | /* 103852 */ GIR_RootConstrainSelectedInstOperands, |
| 36819 | /* 103853 */ // GIR_Coverage, 3549, |
| 36820 | /* 103853 */ GIR_EraseRootFromParent_Done, |
| 36821 | /* 103854 */ // Label 2211: @103854 |
| 36822 | /* 103854 */ GIM_Try, /*On fail goto*//*Label 2212*/ GIMT_Encode4(103900), // Rule ID 3550 // |
| 36823 | /* 103859 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36824 | /* 103862 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneeph2ps256), |
| 36825 | /* 103867 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36826 | /* 103870 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36827 | /* 103874 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36828 | /* 103878 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36829 | /* 103885 */ // (intrinsic_w_chain:{ *:[v8f32] } 14975:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEEPH2PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 36830 | /* 103885 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEEPH2PSYrm), |
| 36831 | /* 103888 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36832 | /* 103890 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36833 | /* 103894 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36834 | /* 103898 */ GIR_RootConstrainSelectedInstOperands, |
| 36835 | /* 103899 */ // GIR_Coverage, 3550, |
| 36836 | /* 103899 */ GIR_EraseRootFromParent_Done, |
| 36837 | /* 103900 */ // Label 2212: @103900 |
| 36838 | /* 103900 */ GIM_Try, /*On fail goto*//*Label 2213*/ GIMT_Encode4(103946), // Rule ID 3551 // |
| 36839 | /* 103905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36840 | /* 103908 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneobf162ps128), |
| 36841 | /* 103913 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36842 | /* 103916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36843 | /* 103920 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36844 | /* 103924 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36845 | /* 103931 */ // (intrinsic_w_chain:{ *:[v4f32] } 14976:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEOBF162PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 36846 | /* 103931 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEOBF162PSrm), |
| 36847 | /* 103934 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36848 | /* 103936 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36849 | /* 103940 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36850 | /* 103944 */ GIR_RootConstrainSelectedInstOperands, |
| 36851 | /* 103945 */ // GIR_Coverage, 3551, |
| 36852 | /* 103945 */ GIR_EraseRootFromParent_Done, |
| 36853 | /* 103946 */ // Label 2213: @103946 |
| 36854 | /* 103946 */ GIM_Try, /*On fail goto*//*Label 2214*/ GIMT_Encode4(103992), // Rule ID 3552 // |
| 36855 | /* 103951 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36856 | /* 103954 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneobf162ps256), |
| 36857 | /* 103959 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36858 | /* 103962 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36859 | /* 103966 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36860 | /* 103970 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36861 | /* 103977 */ // (intrinsic_w_chain:{ *:[v8f32] } 14977:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEOBF162PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 36862 | /* 103977 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEOBF162PSYrm), |
| 36863 | /* 103980 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36864 | /* 103982 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36865 | /* 103986 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36866 | /* 103990 */ GIR_RootConstrainSelectedInstOperands, |
| 36867 | /* 103991 */ // GIR_Coverage, 3552, |
| 36868 | /* 103991 */ GIR_EraseRootFromParent_Done, |
| 36869 | /* 103992 */ // Label 2214: @103992 |
| 36870 | /* 103992 */ GIM_Try, /*On fail goto*//*Label 2215*/ GIMT_Encode4(104038), // Rule ID 3553 // |
| 36871 | /* 103997 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36872 | /* 104000 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneoph2ps128), |
| 36873 | /* 104005 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36874 | /* 104008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36875 | /* 104012 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36876 | /* 104016 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36877 | /* 104023 */ // (intrinsic_w_chain:{ *:[v4f32] } 14978:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEOPH2PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 36878 | /* 104023 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEOPH2PSrm), |
| 36879 | /* 104026 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36880 | /* 104028 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36881 | /* 104032 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36882 | /* 104036 */ GIR_RootConstrainSelectedInstOperands, |
| 36883 | /* 104037 */ // GIR_Coverage, 3553, |
| 36884 | /* 104037 */ GIR_EraseRootFromParent_Done, |
| 36885 | /* 104038 */ // Label 2215: @104038 |
| 36886 | /* 104038 */ GIM_Try, /*On fail goto*//*Label 2216*/ GIMT_Encode4(104084), // Rule ID 3554 // |
| 36887 | /* 104043 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36888 | /* 104046 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneoph2ps256), |
| 36889 | /* 104051 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36890 | /* 104054 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36891 | /* 104058 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36892 | /* 104062 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36893 | /* 104069 */ // (intrinsic_w_chain:{ *:[v8f32] } 14979:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEOPH2PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 36894 | /* 104069 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEOPH2PSYrm), |
| 36895 | /* 104072 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36896 | /* 104074 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36897 | /* 104078 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36898 | /* 104082 */ GIR_RootConstrainSelectedInstOperands, |
| 36899 | /* 104083 */ // GIR_Coverage, 3554, |
| 36900 | /* 104083 */ GIR_EraseRootFromParent_Done, |
| 36901 | /* 104084 */ // Label 2216: @104084 |
| 36902 | /* 104084 */ GIM_Try, /*On fail goto*//*Label 2217*/ GIMT_Encode4(104130), // Rule ID 16753 // |
| 36903 | /* 104089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_512_HasMOVRS_In64BitMode), |
| 36904 | /* 104092 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsb512), |
| 36905 | /* 104097 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v64s8, |
| 36906 | /* 104100 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 36907 | /* 104104 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36908 | /* 104108 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36909 | /* 104115 */ // (intrinsic_w_chain:{ *:[v64i8] } 13682:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSBZm:{ *:[v64i8] } addr:{ *:[iPTR] }:$src) |
| 36910 | /* 104115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSBZm), |
| 36911 | /* 104118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36912 | /* 104120 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36913 | /* 104124 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36914 | /* 104128 */ GIR_RootConstrainSelectedInstOperands, |
| 36915 | /* 104129 */ // GIR_Coverage, 16753, |
| 36916 | /* 104129 */ GIR_EraseRootFromParent_Done, |
| 36917 | /* 104130 */ // Label 2217: @104130 |
| 36918 | /* 104130 */ GIM_Try, /*On fail goto*//*Label 2218*/ GIMT_Encode4(104176), // Rule ID 16756 // |
| 36919 | /* 104135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36920 | /* 104138 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsb128), |
| 36921 | /* 104143 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 36922 | /* 104146 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 36923 | /* 104150 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36924 | /* 104154 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36925 | /* 104161 */ // (intrinsic_w_chain:{ *:[v16i8] } 13680:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSBZ128m:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 36926 | /* 104161 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSBZ128m), |
| 36927 | /* 104164 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36928 | /* 104166 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36929 | /* 104170 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36930 | /* 104174 */ GIR_RootConstrainSelectedInstOperands, |
| 36931 | /* 104175 */ // GIR_Coverage, 16756, |
| 36932 | /* 104175 */ GIR_EraseRootFromParent_Done, |
| 36933 | /* 104176 */ // Label 2218: @104176 |
| 36934 | /* 104176 */ GIM_Try, /*On fail goto*//*Label 2219*/ GIMT_Encode4(104222), // Rule ID 16759 // |
| 36935 | /* 104181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36936 | /* 104184 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsb256), |
| 36937 | /* 104189 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s8, |
| 36938 | /* 104192 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 36939 | /* 104196 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36940 | /* 104200 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36941 | /* 104207 */ // (intrinsic_w_chain:{ *:[v32i8] } 13681:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSBZ256m:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 36942 | /* 104207 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSBZ256m), |
| 36943 | /* 104210 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36944 | /* 104212 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36945 | /* 104216 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36946 | /* 104220 */ GIR_RootConstrainSelectedInstOperands, |
| 36947 | /* 104221 */ // GIR_Coverage, 16759, |
| 36948 | /* 104221 */ GIR_EraseRootFromParent_Done, |
| 36949 | /* 104222 */ // Label 2219: @104222 |
| 36950 | /* 104222 */ GIM_Try, /*On fail goto*//*Label 2220*/ GIMT_Encode4(104268), // Rule ID 16762 // |
| 36951 | /* 104227 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_512_HasMOVRS_In64BitMode), |
| 36952 | /* 104230 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsw512), |
| 36953 | /* 104235 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s16, |
| 36954 | /* 104238 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 36955 | /* 104242 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36956 | /* 104246 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36957 | /* 104253 */ // (intrinsic_w_chain:{ *:[v32i16] } 13691:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSWZm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 36958 | /* 104253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSWZm), |
| 36959 | /* 104256 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36960 | /* 104258 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36961 | /* 104262 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36962 | /* 104266 */ GIR_RootConstrainSelectedInstOperands, |
| 36963 | /* 104267 */ // GIR_Coverage, 16762, |
| 36964 | /* 104267 */ GIR_EraseRootFromParent_Done, |
| 36965 | /* 104268 */ // Label 2220: @104268 |
| 36966 | /* 104268 */ GIM_Try, /*On fail goto*//*Label 2221*/ GIMT_Encode4(104314), // Rule ID 16765 // |
| 36967 | /* 104273 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36968 | /* 104276 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsw128), |
| 36969 | /* 104281 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 36970 | /* 104284 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 36971 | /* 104288 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36972 | /* 104292 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36973 | /* 104299 */ // (intrinsic_w_chain:{ *:[v8i16] } 13689:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSWZ128m:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 36974 | /* 104299 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSWZ128m), |
| 36975 | /* 104302 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36976 | /* 104304 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36977 | /* 104308 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36978 | /* 104312 */ GIR_RootConstrainSelectedInstOperands, |
| 36979 | /* 104313 */ // GIR_Coverage, 16765, |
| 36980 | /* 104313 */ GIR_EraseRootFromParent_Done, |
| 36981 | /* 104314 */ // Label 2221: @104314 |
| 36982 | /* 104314 */ GIM_Try, /*On fail goto*//*Label 2222*/ GIMT_Encode4(104360), // Rule ID 16768 // |
| 36983 | /* 104319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36984 | /* 104322 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsw256), |
| 36985 | /* 104327 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s16, |
| 36986 | /* 104330 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 36987 | /* 104334 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36988 | /* 104338 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36989 | /* 104345 */ // (intrinsic_w_chain:{ *:[v16i16] } 13690:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSWZ256m:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 36990 | /* 104345 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSWZ256m), |
| 36991 | /* 104348 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36992 | /* 104350 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36993 | /* 104354 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36994 | /* 104358 */ GIR_RootConstrainSelectedInstOperands, |
| 36995 | /* 104359 */ // GIR_Coverage, 16768, |
| 36996 | /* 104359 */ GIR_EraseRootFromParent_Done, |
| 36997 | /* 104360 */ // Label 2222: @104360 |
| 36998 | /* 104360 */ GIM_Try, /*On fail goto*//*Label 2223*/ GIMT_Encode4(104406), // Rule ID 16771 // |
| 36999 | /* 104365 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_512_HasMOVRS_In64BitMode), |
| 37000 | /* 104368 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsd512), |
| 37001 | /* 104373 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 37002 | /* 104376 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 37003 | /* 104380 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37004 | /* 104384 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37005 | /* 104391 */ // (intrinsic_w_chain:{ *:[v16i32] } 13685:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSDZm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 37006 | /* 104391 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSDZm), |
| 37007 | /* 104394 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37008 | /* 104396 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 37009 | /* 104400 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37010 | /* 104404 */ GIR_RootConstrainSelectedInstOperands, |
| 37011 | /* 104405 */ // GIR_Coverage, 16771, |
| 37012 | /* 104405 */ GIR_EraseRootFromParent_Done, |
| 37013 | /* 104406 */ // Label 2223: @104406 |
| 37014 | /* 104406 */ GIM_Try, /*On fail goto*//*Label 2224*/ GIMT_Encode4(104452), // Rule ID 16774 // |
| 37015 | /* 104411 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 37016 | /* 104414 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsd128), |
| 37017 | /* 104419 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 37018 | /* 104422 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 37019 | /* 104426 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37020 | /* 104430 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37021 | /* 104437 */ // (intrinsic_w_chain:{ *:[v4i32] } 13683:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSDZ128m:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 37022 | /* 104437 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSDZ128m), |
| 37023 | /* 104440 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37024 | /* 104442 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 37025 | /* 104446 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37026 | /* 104450 */ GIR_RootConstrainSelectedInstOperands, |
| 37027 | /* 104451 */ // GIR_Coverage, 16774, |
| 37028 | /* 104451 */ GIR_EraseRootFromParent_Done, |
| 37029 | /* 104452 */ // Label 2224: @104452 |
| 37030 | /* 104452 */ GIM_Try, /*On fail goto*//*Label 2225*/ GIMT_Encode4(104498), // Rule ID 16777 // |
| 37031 | /* 104457 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 37032 | /* 104460 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsd256), |
| 37033 | /* 104465 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 37034 | /* 104468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 37035 | /* 104472 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37036 | /* 104476 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37037 | /* 104483 */ // (intrinsic_w_chain:{ *:[v8i32] } 13684:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSDZ256m:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 37038 | /* 104483 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSDZ256m), |
| 37039 | /* 104486 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37040 | /* 104488 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 37041 | /* 104492 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37042 | /* 104496 */ GIR_RootConstrainSelectedInstOperands, |
| 37043 | /* 104497 */ // GIR_Coverage, 16777, |
| 37044 | /* 104497 */ GIR_EraseRootFromParent_Done, |
| 37045 | /* 104498 */ // Label 2225: @104498 |
| 37046 | /* 104498 */ GIM_Try, /*On fail goto*//*Label 2226*/ GIMT_Encode4(104544), // Rule ID 16780 // |
| 37047 | /* 104503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_512_HasMOVRS_In64BitMode), |
| 37048 | /* 104506 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsq512), |
| 37049 | /* 104511 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 37050 | /* 104514 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 37051 | /* 104518 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37052 | /* 104522 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37053 | /* 104529 */ // (intrinsic_w_chain:{ *:[v8i64] } 13688:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSQZm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 37054 | /* 104529 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSQZm), |
| 37055 | /* 104532 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37056 | /* 104534 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 37057 | /* 104538 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37058 | /* 104542 */ GIR_RootConstrainSelectedInstOperands, |
| 37059 | /* 104543 */ // GIR_Coverage, 16780, |
| 37060 | /* 104543 */ GIR_EraseRootFromParent_Done, |
| 37061 | /* 104544 */ // Label 2226: @104544 |
| 37062 | /* 104544 */ GIM_Try, /*On fail goto*//*Label 2227*/ GIMT_Encode4(104590), // Rule ID 16783 // |
| 37063 | /* 104549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 37064 | /* 104552 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsq128), |
| 37065 | /* 104557 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 37066 | /* 104560 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 37067 | /* 104564 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37068 | /* 104568 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37069 | /* 104575 */ // (intrinsic_w_chain:{ *:[v2i64] } 13686:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSQZ128m:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 37070 | /* 104575 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSQZ128m), |
| 37071 | /* 104578 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37072 | /* 104580 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 37073 | /* 104584 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37074 | /* 104588 */ GIR_RootConstrainSelectedInstOperands, |
| 37075 | /* 104589 */ // GIR_Coverage, 16783, |
| 37076 | /* 104589 */ GIR_EraseRootFromParent_Done, |
| 37077 | /* 104590 */ // Label 2227: @104590 |
| 37078 | /* 104590 */ GIM_Try, /*On fail goto*//*Label 2228*/ GIMT_Encode4(104636), // Rule ID 16786 // |
| 37079 | /* 104595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 37080 | /* 104598 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsq256), |
| 37081 | /* 104603 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 37082 | /* 104606 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 37083 | /* 104610 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37084 | /* 104614 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37085 | /* 104621 */ // (intrinsic_w_chain:{ *:[v4i64] } 13687:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSQZ256m:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 37086 | /* 104621 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSQZ256m), |
| 37087 | /* 104624 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37088 | /* 104626 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 37089 | /* 104630 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37090 | /* 104634 */ GIR_RootConstrainSelectedInstOperands, |
| 37091 | /* 104635 */ // GIR_Coverage, 16786, |
| 37092 | /* 104635 */ GIR_EraseRootFromParent_Done, |
| 37093 | /* 104636 */ // Label 2228: @104636 |
| 37094 | /* 104636 */ GIM_Try, /*On fail goto*//*Label 2229*/ GIMT_Encode4(104682), // Rule ID 17094 // |
| 37095 | /* 104641 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoEGPR), |
| 37096 | /* 104644 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrssd), |
| 37097 | /* 104649 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37098 | /* 104652 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37099 | /* 104656 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37100 | /* 104660 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37101 | /* 104667 */ // (intrinsic_void 15012:{ *:[iPTR] }, GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst) => (WRSSD addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 37102 | /* 104667 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRSSD), |
| 37103 | /* 104670 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37104 | /* 104674 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37105 | /* 104676 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37106 | /* 104680 */ GIR_RootConstrainSelectedInstOperands, |
| 37107 | /* 104681 */ // GIR_Coverage, 17094, |
| 37108 | /* 104681 */ GIR_EraseRootFromParent_Done, |
| 37109 | /* 104682 */ // Label 2229: @104682 |
| 37110 | /* 104682 */ GIM_Try, /*On fail goto*//*Label 2230*/ GIMT_Encode4(104728), // Rule ID 17095 // |
| 37111 | /* 104687 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoEGPR), |
| 37112 | /* 104690 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrssq), |
| 37113 | /* 104695 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 37114 | /* 104698 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37115 | /* 104702 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37116 | /* 104706 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37117 | /* 104713 */ // (intrinsic_void 15013:{ *:[iPTR] }, GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst) => (WRSSQ addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 37118 | /* 104713 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRSSQ), |
| 37119 | /* 104716 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37120 | /* 104720 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37121 | /* 104722 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37122 | /* 104726 */ GIR_RootConstrainSelectedInstOperands, |
| 37123 | /* 104727 */ // GIR_Coverage, 17095, |
| 37124 | /* 104727 */ GIR_EraseRootFromParent_Done, |
| 37125 | /* 104728 */ // Label 2230: @104728 |
| 37126 | /* 104728 */ GIM_Try, /*On fail goto*//*Label 2231*/ GIMT_Encode4(104774), // Rule ID 17096 // |
| 37127 | /* 104733 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoEGPR), |
| 37128 | /* 104736 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrussd), |
| 37129 | /* 104741 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37130 | /* 104744 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37131 | /* 104748 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37132 | /* 104752 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37133 | /* 104759 */ // (intrinsic_void 15014:{ *:[iPTR] }, GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst) => (WRUSSD addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 37134 | /* 104759 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRUSSD), |
| 37135 | /* 104762 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37136 | /* 104766 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37137 | /* 104768 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37138 | /* 104772 */ GIR_RootConstrainSelectedInstOperands, |
| 37139 | /* 104773 */ // GIR_Coverage, 17096, |
| 37140 | /* 104773 */ GIR_EraseRootFromParent_Done, |
| 37141 | /* 104774 */ // Label 2231: @104774 |
| 37142 | /* 104774 */ GIM_Try, /*On fail goto*//*Label 2232*/ GIMT_Encode4(104820), // Rule ID 17097 // |
| 37143 | /* 104779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoEGPR), |
| 37144 | /* 104782 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrussq), |
| 37145 | /* 104787 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 37146 | /* 104790 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37147 | /* 104794 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37148 | /* 104798 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37149 | /* 104805 */ // (intrinsic_void 15015:{ *:[iPTR] }, GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst) => (WRUSSQ addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 37150 | /* 104805 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRUSSQ), |
| 37151 | /* 104808 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37152 | /* 104812 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37153 | /* 104814 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37154 | /* 104818 */ GIR_RootConstrainSelectedInstOperands, |
| 37155 | /* 104819 */ // GIR_Coverage, 17097, |
| 37156 | /* 104819 */ GIR_EraseRootFromParent_Done, |
| 37157 | /* 104820 */ // Label 2232: @104820 |
| 37158 | /* 104820 */ GIM_Try, /*On fail goto*//*Label 2233*/ GIMT_Encode4(104866), // Rule ID 17098 // |
| 37159 | /* 104825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_In64BitMode), |
| 37160 | /* 104828 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrssd), |
| 37161 | /* 104833 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37162 | /* 104836 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37163 | /* 104840 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37164 | /* 104844 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37165 | /* 104851 */ // (intrinsic_void 15012:{ *:[iPTR] }, GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst) => (WRSSD_EVEX addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 37166 | /* 104851 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRSSD_EVEX), |
| 37167 | /* 104854 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37168 | /* 104858 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37169 | /* 104860 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37170 | /* 104864 */ GIR_RootConstrainSelectedInstOperands, |
| 37171 | /* 104865 */ // GIR_Coverage, 17098, |
| 37172 | /* 104865 */ GIR_EraseRootFromParent_Done, |
| 37173 | /* 104866 */ // Label 2233: @104866 |
| 37174 | /* 104866 */ GIM_Try, /*On fail goto*//*Label 2234*/ GIMT_Encode4(104912), // Rule ID 17099 // |
| 37175 | /* 104871 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_In64BitMode), |
| 37176 | /* 104874 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrssq), |
| 37177 | /* 104879 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 37178 | /* 104882 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37179 | /* 104886 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37180 | /* 104890 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37181 | /* 104897 */ // (intrinsic_void 15013:{ *:[iPTR] }, GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst) => (WRSSQ_EVEX addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 37182 | /* 104897 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRSSQ_EVEX), |
| 37183 | /* 104900 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37184 | /* 104904 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37185 | /* 104906 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37186 | /* 104910 */ GIR_RootConstrainSelectedInstOperands, |
| 37187 | /* 104911 */ // GIR_Coverage, 17099, |
| 37188 | /* 104911 */ GIR_EraseRootFromParent_Done, |
| 37189 | /* 104912 */ // Label 2234: @104912 |
| 37190 | /* 104912 */ GIM_Try, /*On fail goto*//*Label 2235*/ GIMT_Encode4(104958), // Rule ID 17100 // |
| 37191 | /* 104917 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_In64BitMode), |
| 37192 | /* 104920 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrussd), |
| 37193 | /* 104925 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37194 | /* 104928 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37195 | /* 104932 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37196 | /* 104936 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37197 | /* 104943 */ // (intrinsic_void 15014:{ *:[iPTR] }, GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst) => (WRUSSD_EVEX addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 37198 | /* 104943 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRUSSD_EVEX), |
| 37199 | /* 104946 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37200 | /* 104950 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37201 | /* 104952 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37202 | /* 104956 */ GIR_RootConstrainSelectedInstOperands, |
| 37203 | /* 104957 */ // GIR_Coverage, 17100, |
| 37204 | /* 104957 */ GIR_EraseRootFromParent_Done, |
| 37205 | /* 104958 */ // Label 2235: @104958 |
| 37206 | /* 104958 */ GIM_Try, /*On fail goto*//*Label 2236*/ GIMT_Encode4(105004), // Rule ID 17101 // |
| 37207 | /* 104963 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_In64BitMode), |
| 37208 | /* 104966 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrussq), |
| 37209 | /* 104971 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 37210 | /* 104974 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37211 | /* 104978 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37212 | /* 104982 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37213 | /* 104989 */ // (intrinsic_void 15015:{ *:[iPTR] }, GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst) => (WRUSSQ_EVEX addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 37214 | /* 104989 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRUSSQ_EVEX), |
| 37215 | /* 104992 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37216 | /* 104996 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37217 | /* 104998 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37218 | /* 105002 */ GIR_RootConstrainSelectedInstOperands, |
| 37219 | /* 105003 */ // GIR_Coverage, 17101, |
| 37220 | /* 105003 */ GIR_EraseRootFromParent_Done, |
| 37221 | /* 105004 */ // Label 2236: @105004 |
| 37222 | /* 105004 */ GIM_Try, /*On fail goto*//*Label 2237*/ GIMT_Encode4(105050), // Rule ID 17127 // |
| 37223 | /* 105009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasINVPCID_Not64BitMode), |
| 37224 | /* 105012 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_invpcid), |
| 37225 | /* 105017 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37226 | /* 105020 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37227 | /* 105024 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37228 | /* 105028 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37229 | /* 105035 */ // (intrinsic_void 14576:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) => (INVPCID32 GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 37230 | /* 105035 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INVPCID32), |
| 37231 | /* 105038 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37232 | /* 105040 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37233 | /* 105044 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37234 | /* 105048 */ GIR_RootConstrainSelectedInstOperands, |
| 37235 | /* 105049 */ // GIR_Coverage, 17127, |
| 37236 | /* 105049 */ GIR_EraseRootFromParent_Done, |
| 37237 | /* 105050 */ // Label 2237: @105050 |
| 37238 | /* 105050 */ GIM_Try, /*On fail goto*//*Label 2238*/ GIMT_Encode4(105142), // Rule ID 22379 // |
| 37239 | /* 105055 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasINVPCID_NoEGPR), |
| 37240 | /* 105058 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_invpcid), |
| 37241 | /* 105063 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37242 | /* 105066 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37243 | /* 105070 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37244 | /* 105074 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37245 | /* 105081 */ // (intrinsic_void 14576:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) => (INVPCID64 (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOV32rr:{ *:[i32] } GR32:{ *:[i32] }:$src1), sub_32bit:{ *:[i32] }), addr:{ *:[iPTR] }:$src2) |
| 37246 | /* 105081 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 37247 | /* 105084 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(X86::MOV32rr), |
| 37248 | /* 105088 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 37249 | /* 105093 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 37250 | /* 105097 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 37251 | /* 105099 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 37252 | /* 105102 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 37253 | /* 105106 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 37254 | /* 105111 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 37255 | /* 105114 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 37256 | /* 105117 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/6, |
| 37257 | /* 105120 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 37258 | /* 105125 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 37259 | /* 105130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INVPCID64), |
| 37260 | /* 105133 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 37261 | /* 105136 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37262 | /* 105140 */ GIR_RootConstrainSelectedInstOperands, |
| 37263 | /* 105141 */ // GIR_Coverage, 22379, |
| 37264 | /* 105141 */ GIR_EraseRootFromParent_Done, |
| 37265 | /* 105142 */ // Label 2238: @105142 |
| 37266 | /* 105142 */ GIM_Try, /*On fail goto*//*Label 2239*/ GIMT_Encode4(105234), // Rule ID 22380 // |
| 37267 | /* 105147 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasINVPCID), |
| 37268 | /* 105150 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_invpcid), |
| 37269 | /* 105155 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37270 | /* 105158 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37271 | /* 105162 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37272 | /* 105166 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37273 | /* 105173 */ // (intrinsic_void 14576:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) => (INVPCID64_EVEX (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOV32rr:{ *:[i32] } GR32:{ *:[i32] }:$src1), sub_32bit:{ *:[i32] }), addr:{ *:[iPTR] }:$src2) |
| 37274 | /* 105173 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 37275 | /* 105176 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(X86::MOV32rr), |
| 37276 | /* 105180 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 37277 | /* 105185 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 37278 | /* 105189 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 37279 | /* 105191 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 37280 | /* 105194 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 37281 | /* 105198 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 37282 | /* 105203 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 37283 | /* 105206 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 37284 | /* 105209 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/6, |
| 37285 | /* 105212 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 37286 | /* 105217 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 37287 | /* 105222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INVPCID64_EVEX), |
| 37288 | /* 105225 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 37289 | /* 105228 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37290 | /* 105232 */ GIR_RootConstrainSelectedInstOperands, |
| 37291 | /* 105233 */ // GIR_Coverage, 22380, |
| 37292 | /* 105233 */ GIR_EraseRootFromParent_Done, |
| 37293 | /* 105234 */ // Label 2239: @105234 |
| 37294 | /* 105234 */ GIM_Try, /*On fail goto*//*Label 2240*/ GIMT_Encode4(105280), // Rule ID 131 // |
| 37295 | /* 105239 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVDIRI_NoEGPR), |
| 37296 | /* 105242 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_directstore32), |
| 37297 | /* 105247 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37298 | /* 105250 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37299 | /* 105254 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37300 | /* 105258 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37301 | /* 105265 */ // (intrinsic_void 14555:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) => (MOVDIRI32 addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 37302 | /* 105265 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIRI32), |
| 37303 | /* 105268 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37304 | /* 105272 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 37305 | /* 105274 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37306 | /* 105278 */ GIR_RootConstrainSelectedInstOperands, |
| 37307 | /* 105279 */ // GIR_Coverage, 131, |
| 37308 | /* 105279 */ GIR_EraseRootFromParent_Done, |
| 37309 | /* 105280 */ // Label 2240: @105280 |
| 37310 | /* 105280 */ GIM_Try, /*On fail goto*//*Label 2241*/ GIMT_Encode4(105326), // Rule ID 132 // |
| 37311 | /* 105285 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVDIRI_In64BitMode_NoEGPR), |
| 37312 | /* 105288 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_directstore64), |
| 37313 | /* 105293 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 37314 | /* 105296 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37315 | /* 105300 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37316 | /* 105304 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37317 | /* 105311 */ // (intrinsic_void 14556:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) => (MOVDIRI64 addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 37318 | /* 105311 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIRI64), |
| 37319 | /* 105314 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37320 | /* 105318 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 37321 | /* 105320 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37322 | /* 105324 */ GIR_RootConstrainSelectedInstOperands, |
| 37323 | /* 105325 */ // GIR_Coverage, 132, |
| 37324 | /* 105325 */ GIR_EraseRootFromParent_Done, |
| 37325 | /* 105326 */ // Label 2241: @105326 |
| 37326 | /* 105326 */ GIM_Try, /*On fail goto*//*Label 2242*/ GIMT_Encode4(105372), // Rule ID 133 // |
| 37327 | /* 105331 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVDIRI_In64BitMode), |
| 37328 | /* 105334 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_directstore32), |
| 37329 | /* 105339 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37330 | /* 105342 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37331 | /* 105346 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37332 | /* 105350 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37333 | /* 105357 */ // (intrinsic_void 14555:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) => (MOVDIRI32_EVEX addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 37334 | /* 105357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIRI32_EVEX), |
| 37335 | /* 105360 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37336 | /* 105364 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 37337 | /* 105366 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37338 | /* 105370 */ GIR_RootConstrainSelectedInstOperands, |
| 37339 | /* 105371 */ // GIR_Coverage, 133, |
| 37340 | /* 105371 */ GIR_EraseRootFromParent_Done, |
| 37341 | /* 105372 */ // Label 2242: @105372 |
| 37342 | /* 105372 */ GIM_Try, /*On fail goto*//*Label 2243*/ GIMT_Encode4(105418), // Rule ID 134 // |
| 37343 | /* 105377 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVDIRI_In64BitMode), |
| 37344 | /* 105380 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_directstore64), |
| 37345 | /* 105385 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 37346 | /* 105388 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37347 | /* 105392 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37348 | /* 105396 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37349 | /* 105403 */ // (intrinsic_void 14556:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) => (MOVDIRI64_EVEX addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 37350 | /* 105403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIRI64_EVEX), |
| 37351 | /* 105406 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37352 | /* 105410 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 37353 | /* 105412 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37354 | /* 105416 */ GIR_RootConstrainSelectedInstOperands, |
| 37355 | /* 105417 */ // GIR_Coverage, 134, |
| 37356 | /* 105417 */ GIR_EraseRootFromParent_Done, |
| 37357 | /* 105418 */ // Label 2243: @105418 |
| 37358 | /* 105418 */ GIM_Try, /*On fail goto*//*Label 2244*/ GIMT_Encode4(105465), // Rule ID 135 // |
| 37359 | /* 105423 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVDIR64B_NoEGPR), |
| 37360 | /* 105426 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_movdir64b), |
| 37361 | /* 105431 */ // MIs[0] dst |
| 37362 | /* 105431 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 37363 | /* 105435 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37364 | /* 105439 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37365 | /* 105443 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37366 | /* 105450 */ // (intrinsic_void 14656:{ *:[iPTR] }, GR32:{ *:[i32] }:$dst, addr:{ *:[iPTR] }:$src) => (MOVDIR64B32 GR32:{ *:[i32] }:$dst, addr:{ *:[iPTR] }:$src) |
| 37367 | /* 105450 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIR64B32), |
| 37368 | /* 105453 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 37369 | /* 105455 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 37370 | /* 105459 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37371 | /* 105463 */ GIR_RootConstrainSelectedInstOperands, |
| 37372 | /* 105464 */ // GIR_Coverage, 135, |
| 37373 | /* 105464 */ GIR_EraseRootFromParent_Done, |
| 37374 | /* 105465 */ // Label 2244: @105465 |
| 37375 | /* 105465 */ GIM_Try, /*On fail goto*//*Label 2245*/ GIMT_Encode4(105512), // Rule ID 136 // |
| 37376 | /* 105470 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVDIR64B_In64BitMode_NoEGPR), |
| 37377 | /* 105473 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_movdir64b), |
| 37378 | /* 105478 */ // MIs[0] dst |
| 37379 | /* 105478 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/64, |
| 37380 | /* 105482 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37381 | /* 105486 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37382 | /* 105490 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37383 | /* 105497 */ // (intrinsic_void 14656:{ *:[iPTR] }, GR64:{ *:[i64] }:$dst, addr:{ *:[iPTR] }:$src) => (MOVDIR64B64 GR64:{ *:[i64] }:$dst, addr:{ *:[iPTR] }:$src) |
| 37384 | /* 105497 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIR64B64), |
| 37385 | /* 105500 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 37386 | /* 105502 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 37387 | /* 105506 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37388 | /* 105510 */ GIR_RootConstrainSelectedInstOperands, |
| 37389 | /* 105511 */ // GIR_Coverage, 136, |
| 37390 | /* 105511 */ GIR_EraseRootFromParent_Done, |
| 37391 | /* 105512 */ // Label 2245: @105512 |
| 37392 | /* 105512 */ GIM_Try, /*On fail goto*//*Label 2246*/ GIMT_Encode4(105559), // Rule ID 137 // |
| 37393 | /* 105517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVDIR64B_In64BitMode), |
| 37394 | /* 105520 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_movdir64b), |
| 37395 | /* 105525 */ // MIs[0] dst |
| 37396 | /* 105525 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 37397 | /* 105529 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37398 | /* 105533 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37399 | /* 105537 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37400 | /* 105544 */ // (intrinsic_void 14656:{ *:[iPTR] }, GR32:{ *:[i32] }:$dst, addr:{ *:[iPTR] }:$src) => (MOVDIR64B32_EVEX GR32:{ *:[i32] }:$dst, addr:{ *:[iPTR] }:$src) |
| 37401 | /* 105544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIR64B32_EVEX), |
| 37402 | /* 105547 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 37403 | /* 105549 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 37404 | /* 105553 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37405 | /* 105557 */ GIR_RootConstrainSelectedInstOperands, |
| 37406 | /* 105558 */ // GIR_Coverage, 137, |
| 37407 | /* 105558 */ GIR_EraseRootFromParent_Done, |
| 37408 | /* 105559 */ // Label 2246: @105559 |
| 37409 | /* 105559 */ GIM_Try, /*On fail goto*//*Label 2247*/ GIMT_Encode4(105606), // Rule ID 138 // |
| 37410 | /* 105564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVDIR64B_In64BitMode), |
| 37411 | /* 105567 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_movdir64b), |
| 37412 | /* 105572 */ // MIs[0] dst |
| 37413 | /* 105572 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/64, |
| 37414 | /* 105576 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37415 | /* 105580 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37416 | /* 105584 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37417 | /* 105591 */ // (intrinsic_void 14656:{ *:[iPTR] }, GR64:{ *:[i64] }:$dst, addr:{ *:[iPTR] }:$src) => (MOVDIR64B64_EVEX GR64:{ *:[i64] }:$dst, addr:{ *:[iPTR] }:$src) |
| 37418 | /* 105591 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIR64B64_EVEX), |
| 37419 | /* 105594 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 37420 | /* 105596 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 37421 | /* 105600 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37422 | /* 105604 */ GIR_RootConstrainSelectedInstOperands, |
| 37423 | /* 105605 */ // GIR_Coverage, 138, |
| 37424 | /* 105605 */ GIR_EraseRootFromParent_Done, |
| 37425 | /* 105606 */ // Label 2247: @105606 |
| 37426 | /* 105606 */ GIM_Try, /*On fail goto*//*Label 2248*/ GIMT_Encode4(105638), // Rule ID 17025 // |
| 37427 | /* 105611 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTRANSPOSE_In64BitMode), |
| 37428 | /* 105614 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ttransposed), |
| 37429 | /* 105619 */ // MIs[0] dst |
| 37430 | /* 105619 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37431 | /* 105622 */ // MIs[0] src |
| 37432 | /* 105622 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37433 | /* 105625 */ // (intrinsic_void 14962:{ *:[iPTR] }, (timm:{ *:[i8] }):$dst, (timm:{ *:[i8] }):$src) => (PTTRANSPOSED (timm:{ *:[i8] }):$dst, (timm:{ *:[i8] }):$src) |
| 37434 | /* 105625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTTRANSPOSED), |
| 37435 | /* 105628 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 37436 | /* 105630 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 37437 | /* 105632 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37438 | /* 105636 */ GIR_RootConstrainSelectedInstOperands, |
| 37439 | /* 105637 */ // GIR_Coverage, 17025, |
| 37440 | /* 105637 */ GIR_EraseRootFromParent_Done, |
| 37441 | /* 105638 */ // Label 2248: @105638 |
| 37442 | /* 105638 */ GIM_Try, /*On fail goto*//*Label 2249*/ GIMT_Encode4(105670), // Rule ID 17037 // |
| 37443 | /* 105643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXCOMPLEX_HasAMXTRANSPOSE_In64BitMode), |
| 37444 | /* 105646 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tconjtfp16), |
| 37445 | /* 105651 */ // MIs[0] dst |
| 37446 | /* 105651 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37447 | /* 105654 */ // MIs[0] src |
| 37448 | /* 105654 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37449 | /* 105657 */ // (intrinsic_void 14901:{ *:[iPTR] }, (timm:{ *:[i8] }):$dst, (timm:{ *:[i8] }):$src) => (PTCONJTFP16 (timm:{ *:[i8] }):$dst, (timm:{ *:[i8] }):$src) |
| 37450 | /* 105657 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCONJTFP16), |
| 37451 | /* 105660 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 37452 | /* 105662 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 37453 | /* 105664 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37454 | /* 105668 */ GIR_RootConstrainSelectedInstOperands, |
| 37455 | /* 105669 */ // GIR_Coverage, 17037, |
| 37456 | /* 105669 */ GIR_EraseRootFromParent_Done, |
| 37457 | /* 105670 */ // Label 2249: @105670 |
| 37458 | /* 105670 */ GIM_Try, /*On fail goto*//*Label 2250*/ GIMT_Encode4(105713), // Rule ID 17152 // |
| 37459 | /* 105675 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::asan_check_memaccess), |
| 37460 | /* 105680 */ // MIs[0] addr |
| 37461 | /* 105680 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/64, |
| 37462 | /* 105684 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64PLTSafeRegClassID), |
| 37463 | /* 105688 */ // MIs[0] accessinfo |
| 37464 | /* 105688 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37465 | /* 105691 */ // (intrinsic_void 9:{ *:[iPTR] }, GR64PLTSafe:{ *:[i64] }:$addr, (timm:{ *:[i32] }):$accessinfo) => (ASAN_CHECK_MEMACCESS:{ *:[i64] } GR64PLTSafe:{ *:[i64] }:$addr, (timm:{ *:[i32] }):$accessinfo) |
| 37466 | /* 105691 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ASAN_CHECK_MEMACCESS), |
| 37467 | /* 105694 */ GIR_RootToRootCopy, /*OpIdx*/1, // addr |
| 37468 | /* 105696 */ GIR_RootToRootCopy, /*OpIdx*/2, // accessinfo |
| 37469 | /* 105698 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::R10*/0, |
| 37470 | /* 105701 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::R11*/1, |
| 37471 | /* 105704 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/2, |
| 37472 | /* 105707 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37473 | /* 105711 */ GIR_RootConstrainSelectedInstOperands, |
| 37474 | /* 105712 */ // GIR_Coverage, 17152, |
| 37475 | /* 105712 */ GIR_EraseRootFromParent_Done, |
| 37476 | /* 105713 */ // Label 2250: @105713 |
| 37477 | /* 105713 */ GIM_Try, /*On fail goto*//*Label 2251*/ GIMT_Encode4(105753), // Rule ID 17078 // |
| 37478 | /* 105718 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasUSERMSR_NoEGPR), |
| 37479 | /* 105721 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_urdmsr), |
| 37480 | /* 105726 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 37481 | /* 105729 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 37482 | /* 105732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37483 | /* 105736 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37484 | /* 105740 */ // (intrinsic_w_chain:{ *:[i64] } 14966:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (URDMSRrr:{ *:[i64] } GR64:{ *:[i64] }:$src) |
| 37485 | /* 105740 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::URDMSRrr), |
| 37486 | /* 105743 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37487 | /* 105745 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 37488 | /* 105747 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37489 | /* 105751 */ GIR_RootConstrainSelectedInstOperands, |
| 37490 | /* 105752 */ // GIR_Coverage, 17078, |
| 37491 | /* 105752 */ GIR_EraseRootFromParent_Done, |
| 37492 | /* 105753 */ // Label 2251: @105753 |
| 37493 | /* 105753 */ GIM_Try, /*On fail goto*//*Label 2252*/ GIMT_Encode4(105793), // Rule ID 17082 // |
| 37494 | /* 105758 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasUSERMSR_In64BitMode), |
| 37495 | /* 105761 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_urdmsr), |
| 37496 | /* 105766 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 37497 | /* 105769 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 37498 | /* 105772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37499 | /* 105776 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37500 | /* 105780 */ // (intrinsic_w_chain:{ *:[i64] } 14966:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (URDMSRrr_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src) |
| 37501 | /* 105780 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::URDMSRrr_EVEX), |
| 37502 | /* 105783 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37503 | /* 105785 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 37504 | /* 105787 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37505 | /* 105791 */ GIR_RootConstrainSelectedInstOperands, |
| 37506 | /* 105792 */ // GIR_Coverage, 17082, |
| 37507 | /* 105792 */ GIR_EraseRootFromParent_Done, |
| 37508 | /* 105793 */ // Label 2252: @105793 |
| 37509 | /* 105793 */ GIM_Try, /*On fail goto*//*Label 2253*/ GIMT_Encode4(105830), // Rule ID 17090 // |
| 37510 | /* 105798 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdsspd), |
| 37511 | /* 105803 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 37512 | /* 105806 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37513 | /* 105809 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37514 | /* 105813 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37515 | /* 105817 */ // (intrinsic_w_chain:{ *:[i32] } 14682:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (RDSSPD:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 37516 | /* 105817 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDSSPD), |
| 37517 | /* 105820 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37518 | /* 105822 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 37519 | /* 105824 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37520 | /* 105828 */ GIR_RootConstrainSelectedInstOperands, |
| 37521 | /* 105829 */ // GIR_Coverage, 17090, |
| 37522 | /* 105829 */ GIR_EraseRootFromParent_Done, |
| 37523 | /* 105830 */ // Label 2253: @105830 |
| 37524 | /* 105830 */ GIM_Try, /*On fail goto*//*Label 2254*/ GIMT_Encode4(105867), // Rule ID 17091 // |
| 37525 | /* 105835 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdsspq), |
| 37526 | /* 105840 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 37527 | /* 105843 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 37528 | /* 105846 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37529 | /* 105850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37530 | /* 105854 */ // (intrinsic_w_chain:{ *:[i64] } 14683:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (RDSSPQ:{ *:[i64] } GR64:{ *:[i64] }:$src) |
| 37531 | /* 105854 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDSSPQ), |
| 37532 | /* 105857 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37533 | /* 105859 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 37534 | /* 105861 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37535 | /* 105865 */ GIR_RootConstrainSelectedInstOperands, |
| 37536 | /* 105866 */ // GIR_Coverage, 17091, |
| 37537 | /* 105866 */ GIR_EraseRootFromParent_Done, |
| 37538 | /* 105867 */ // Label 2254: @105867 |
| 37539 | /* 105867 */ GIM_Try, /*On fail goto*//*Label 2255*/ GIMT_Encode4(105931), // Rule ID 3086 // |
| 37540 | /* 105872 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 37541 | /* 105875 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse3_mwait), |
| 37542 | /* 105880 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37543 | /* 105883 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37544 | /* 105886 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32_ArgRef_and_GR32_CBRegClassID), |
| 37545 | /* 105890 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37546 | /* 105894 */ // (intrinsic_void 14807:{ *:[iPTR] }, ECX:{ *:[i32] }, EAX:{ *:[i32] }) => (MWAITrr) |
| 37547 | /* 105894 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37548 | /* 105898 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 37549 | /* 105904 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // EAX |
| 37550 | /* 105908 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37551 | /* 105912 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::ECX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 37552 | /* 105918 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // ECX |
| 37553 | /* 105922 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MWAITrr), |
| 37554 | /* 105925 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37555 | /* 105929 */ GIR_RootConstrainSelectedInstOperands, |
| 37556 | /* 105930 */ // GIR_Coverage, 3086, |
| 37557 | /* 105930 */ GIR_EraseRootFromParent_Done, |
| 37558 | /* 105931 */ // Label 2255: @105931 |
| 37559 | /* 105931 */ GIM_Try, /*On fail goto*//*Label 2256*/ GIMT_Encode4(105971), // Rule ID 17080 // |
| 37560 | /* 105936 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasUSERMSR_NoEGPR), |
| 37561 | /* 105939 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_uwrmsr), |
| 37562 | /* 105944 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 37563 | /* 105947 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 37564 | /* 105950 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37565 | /* 105954 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37566 | /* 105958 */ // (intrinsic_void 14967:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (UWRMSRrr GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 37567 | /* 105958 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::UWRMSRrr), |
| 37568 | /* 105961 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37569 | /* 105963 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37570 | /* 105965 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37571 | /* 105969 */ GIR_RootConstrainSelectedInstOperands, |
| 37572 | /* 105970 */ // GIR_Coverage, 17080, |
| 37573 | /* 105970 */ GIR_EraseRootFromParent_Done, |
| 37574 | /* 105971 */ // Label 2256: @105971 |
| 37575 | /* 105971 */ GIM_Try, /*On fail goto*//*Label 2257*/ GIMT_Encode4(106011), // Rule ID 17084 // |
| 37576 | /* 105976 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasUSERMSR_In64BitMode), |
| 37577 | /* 105979 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_uwrmsr), |
| 37578 | /* 105984 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 37579 | /* 105987 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 37580 | /* 105990 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37581 | /* 105994 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37582 | /* 105998 */ // (intrinsic_void 14967:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (UWRMSRrr_EVEX GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 37583 | /* 105998 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::UWRMSRrr_EVEX), |
| 37584 | /* 106001 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37585 | /* 106003 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37586 | /* 106005 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37587 | /* 106009 */ GIR_RootConstrainSelectedInstOperands, |
| 37588 | /* 106010 */ // GIR_Coverage, 17084, |
| 37589 | /* 106010 */ GIR_EraseRootFromParent_Done, |
| 37590 | /* 106011 */ // Label 2257: @106011 |
| 37591 | /* 106011 */ GIM_Reject, |
| 37592 | /* 106012 */ // Label 2193: @106012 |
| 37593 | /* 106012 */ GIM_Try, /*On fail goto*//*Label 2258*/ GIMT_Encode4(109557), |
| 37594 | /* 106017 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/4, |
| 37595 | /* 106020 */ GIM_Try, /*On fail goto*//*Label 2259*/ GIMT_Encode4(106092), // Rule ID 123 // |
| 37596 | /* 106025 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 37597 | /* 106028 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_lwpval32), |
| 37598 | /* 106033 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37599 | /* 106036 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37600 | /* 106039 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37601 | /* 106043 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 37602 | /* 106047 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 37603 | /* 106051 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 37604 | /* 106054 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 37605 | /* 106058 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 37606 | /* 106062 */ // MIs[0] cntl |
| 37607 | /* 106062 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37608 | /* 106065 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 37609 | /* 106067 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37610 | /* 106074 */ // (intrinsic_void 14583:{ *:[iPTR] }, GR32:{ *:[i32] }:$src0, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (timm:{ *:[i32] }):$cntl) => (LWPVAL32rmi GR32:{ *:[i32] }:$src0, addr:{ *:[iPTR] }:$src1, (timm:{ *:[i32] }):$cntl) |
| 37611 | /* 106074 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LWPVAL32rmi), |
| 37612 | /* 106077 */ GIR_RootToRootCopy, /*OpIdx*/1, // src0 |
| 37613 | /* 106079 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 37614 | /* 106083 */ GIR_RootToRootCopy, /*OpIdx*/3, // cntl |
| 37615 | /* 106085 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 37616 | /* 106090 */ GIR_RootConstrainSelectedInstOperands, |
| 37617 | /* 106091 */ // GIR_Coverage, 123, |
| 37618 | /* 106091 */ GIR_EraseRootFromParent_Done, |
| 37619 | /* 106092 */ // Label 2259: @106092 |
| 37620 | /* 106092 */ GIM_Try, /*On fail goto*//*Label 2260*/ GIMT_Encode4(106164), // Rule ID 125 // |
| 37621 | /* 106097 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 37622 | /* 106100 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_lwpval64), |
| 37623 | /* 106105 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 37624 | /* 106108 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37625 | /* 106111 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37626 | /* 106115 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 37627 | /* 106119 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 37628 | /* 106123 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 37629 | /* 106126 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 37630 | /* 106130 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 37631 | /* 106134 */ // MIs[0] cntl |
| 37632 | /* 106134 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37633 | /* 106137 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 37634 | /* 106139 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37635 | /* 106146 */ // (intrinsic_void 14584:{ *:[iPTR] }, GR64:{ *:[i64] }:$src0, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (timm:{ *:[i32] }):$cntl) => (LWPVAL64rmi GR64:{ *:[i64] }:$src0, addr:{ *:[iPTR] }:$src1, (timm:{ *:[i32] }):$cntl) |
| 37636 | /* 106146 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LWPVAL64rmi), |
| 37637 | /* 106149 */ GIR_RootToRootCopy, /*OpIdx*/1, // src0 |
| 37638 | /* 106151 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 37639 | /* 106155 */ GIR_RootToRootCopy, /*OpIdx*/3, // cntl |
| 37640 | /* 106157 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 37641 | /* 106162 */ GIR_RootConstrainSelectedInstOperands, |
| 37642 | /* 106163 */ // GIR_Coverage, 125, |
| 37643 | /* 106163 */ GIR_EraseRootFromParent_Done, |
| 37644 | /* 106164 */ // Label 2260: @106164 |
| 37645 | /* 106164 */ GIM_Try, /*On fail goto*//*Label 2261*/ GIMT_Encode4(106219), // Rule ID 3387 // |
| 37646 | /* 106169 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37647 | /* 106172 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_maskload_ps), |
| 37648 | /* 106177 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 37649 | /* 106180 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 37650 | /* 106183 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37651 | /* 106187 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37652 | /* 106191 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37653 | /* 106195 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37654 | /* 106202 */ // (intrinsic_w_chain:{ *:[v4f32] } 13429:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src1) => (VMASKMOVPSrm:{ *:[v4f32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 37655 | /* 106202 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPSrm), |
| 37656 | /* 106205 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37657 | /* 106207 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 37658 | /* 106209 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37659 | /* 106213 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37660 | /* 106217 */ GIR_RootConstrainSelectedInstOperands, |
| 37661 | /* 106218 */ // GIR_Coverage, 3387, |
| 37662 | /* 106218 */ GIR_EraseRootFromParent_Done, |
| 37663 | /* 106219 */ // Label 2261: @106219 |
| 37664 | /* 106219 */ GIM_Try, /*On fail goto*//*Label 2262*/ GIMT_Encode4(106274), // Rule ID 3388 // |
| 37665 | /* 106224 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37666 | /* 106227 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_maskload_ps_256), |
| 37667 | /* 106232 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 37668 | /* 106235 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 37669 | /* 106238 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37670 | /* 106242 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37671 | /* 106246 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37672 | /* 106250 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37673 | /* 106257 */ // (intrinsic_w_chain:{ *:[v8f32] } 13430:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v8i32] }:$src1) => (VMASKMOVPSYrm:{ *:[v8f32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 37674 | /* 106257 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPSYrm), |
| 37675 | /* 106260 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37676 | /* 106262 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 37677 | /* 106264 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37678 | /* 106268 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37679 | /* 106272 */ GIR_RootConstrainSelectedInstOperands, |
| 37680 | /* 106273 */ // GIR_Coverage, 3388, |
| 37681 | /* 106273 */ GIR_EraseRootFromParent_Done, |
| 37682 | /* 106274 */ // Label 2262: @106274 |
| 37683 | /* 106274 */ GIM_Try, /*On fail goto*//*Label 2263*/ GIMT_Encode4(106329), // Rule ID 3391 // |
| 37684 | /* 106279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37685 | /* 106282 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_maskload_pd), |
| 37686 | /* 106287 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 37687 | /* 106290 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 37688 | /* 106293 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37689 | /* 106297 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37690 | /* 106301 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37691 | /* 106305 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37692 | /* 106312 */ // (intrinsic_w_chain:{ *:[v2f64] } 13427:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src1) => (VMASKMOVPDrm:{ *:[v2f64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 37693 | /* 106312 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPDrm), |
| 37694 | /* 106315 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37695 | /* 106317 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 37696 | /* 106319 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37697 | /* 106323 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37698 | /* 106327 */ GIR_RootConstrainSelectedInstOperands, |
| 37699 | /* 106328 */ // GIR_Coverage, 3391, |
| 37700 | /* 106328 */ GIR_EraseRootFromParent_Done, |
| 37701 | /* 106329 */ // Label 2263: @106329 |
| 37702 | /* 106329 */ GIM_Try, /*On fail goto*//*Label 2264*/ GIMT_Encode4(106384), // Rule ID 3392 // |
| 37703 | /* 106334 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37704 | /* 106337 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_maskload_pd_256), |
| 37705 | /* 106342 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 37706 | /* 106345 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 37707 | /* 106348 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37708 | /* 106352 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37709 | /* 106356 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37710 | /* 106360 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37711 | /* 106367 */ // (intrinsic_w_chain:{ *:[v4f64] } 13428:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v4i64] }:$src1) => (VMASKMOVPDYrm:{ *:[v4f64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 37712 | /* 106367 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPDYrm), |
| 37713 | /* 106370 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37714 | /* 106372 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 37715 | /* 106374 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37716 | /* 106378 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37717 | /* 106382 */ GIR_RootConstrainSelectedInstOperands, |
| 37718 | /* 106383 */ // GIR_Coverage, 3392, |
| 37719 | /* 106383 */ GIR_EraseRootFromParent_Done, |
| 37720 | /* 106384 */ // Label 2264: @106384 |
| 37721 | /* 106384 */ GIM_Try, /*On fail goto*//*Label 2265*/ GIMT_Encode4(106439), // Rule ID 3465 // |
| 37722 | /* 106389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37723 | /* 106392 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_maskload_d), |
| 37724 | /* 106397 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 37725 | /* 106400 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 37726 | /* 106403 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37727 | /* 106407 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37728 | /* 106411 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37729 | /* 106415 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37730 | /* 106422 */ // (intrinsic_w_chain:{ *:[v4i32] } 13727:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src1) => (VPMASKMOVDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 37731 | /* 106422 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVDrm), |
| 37732 | /* 106425 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37733 | /* 106427 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 37734 | /* 106429 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37735 | /* 106433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37736 | /* 106437 */ GIR_RootConstrainSelectedInstOperands, |
| 37737 | /* 106438 */ // GIR_Coverage, 3465, |
| 37738 | /* 106438 */ GIR_EraseRootFromParent_Done, |
| 37739 | /* 106439 */ // Label 2265: @106439 |
| 37740 | /* 106439 */ GIM_Try, /*On fail goto*//*Label 2266*/ GIMT_Encode4(106494), // Rule ID 3466 // |
| 37741 | /* 106444 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37742 | /* 106447 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_maskload_d_256), |
| 37743 | /* 106452 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 37744 | /* 106455 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 37745 | /* 106458 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37746 | /* 106462 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37747 | /* 106466 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37748 | /* 106470 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37749 | /* 106477 */ // (intrinsic_w_chain:{ *:[v8i32] } 13728:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v8i32] }:$src1) => (VPMASKMOVDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 37750 | /* 106477 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVDYrm), |
| 37751 | /* 106480 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37752 | /* 106482 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 37753 | /* 106484 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37754 | /* 106488 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37755 | /* 106492 */ GIR_RootConstrainSelectedInstOperands, |
| 37756 | /* 106493 */ // GIR_Coverage, 3466, |
| 37757 | /* 106493 */ GIR_EraseRootFromParent_Done, |
| 37758 | /* 106494 */ // Label 2266: @106494 |
| 37759 | /* 106494 */ GIM_Try, /*On fail goto*//*Label 2267*/ GIMT_Encode4(106549), // Rule ID 3469 // |
| 37760 | /* 106499 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37761 | /* 106502 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_maskload_q), |
| 37762 | /* 106507 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 37763 | /* 106510 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 37764 | /* 106513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37765 | /* 106517 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37766 | /* 106521 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37767 | /* 106525 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37768 | /* 106532 */ // (intrinsic_w_chain:{ *:[v2i64] } 13729:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src1) => (VPMASKMOVQrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 37769 | /* 106532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVQrm), |
| 37770 | /* 106535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37771 | /* 106537 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 37772 | /* 106539 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37773 | /* 106543 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37774 | /* 106547 */ GIR_RootConstrainSelectedInstOperands, |
| 37775 | /* 106548 */ // GIR_Coverage, 3469, |
| 37776 | /* 106548 */ GIR_EraseRootFromParent_Done, |
| 37777 | /* 106549 */ // Label 2267: @106549 |
| 37778 | /* 106549 */ GIM_Try, /*On fail goto*//*Label 2268*/ GIMT_Encode4(106604), // Rule ID 3470 // |
| 37779 | /* 106554 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37780 | /* 106557 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_maskload_q_256), |
| 37781 | /* 106562 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 37782 | /* 106565 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 37783 | /* 106568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37784 | /* 106572 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 37785 | /* 106576 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37786 | /* 106580 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37787 | /* 106587 */ // (intrinsic_w_chain:{ *:[v4i64] } 13730:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v4i64] }:$src1) => (VPMASKMOVQYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 37788 | /* 106587 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVQYrm), |
| 37789 | /* 106590 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37790 | /* 106592 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 37791 | /* 106594 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 37792 | /* 106598 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37793 | /* 106602 */ GIR_RootConstrainSelectedInstOperands, |
| 37794 | /* 106603 */ // GIR_Coverage, 3470, |
| 37795 | /* 106603 */ GIR_EraseRootFromParent_Done, |
| 37796 | /* 106604 */ // Label 2268: @106604 |
| 37797 | /* 106604 */ GIM_Try, /*On fail goto*//*Label 2269*/ GIMT_Encode4(106659), // Rule ID 3389 // |
| 37798 | /* 106609 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37799 | /* 106612 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_maskstore_ps), |
| 37800 | /* 106617 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 37801 | /* 106620 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 37802 | /* 106623 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37803 | /* 106627 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37804 | /* 106631 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37805 | /* 106635 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37806 | /* 106642 */ // (intrinsic_void 13433:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VMASKMOVPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 37807 | /* 106642 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPSmr), |
| 37808 | /* 106645 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37809 | /* 106649 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37810 | /* 106651 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37811 | /* 106653 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37812 | /* 106657 */ GIR_RootConstrainSelectedInstOperands, |
| 37813 | /* 106658 */ // GIR_Coverage, 3389, |
| 37814 | /* 106658 */ GIR_EraseRootFromParent_Done, |
| 37815 | /* 106659 */ // Label 2269: @106659 |
| 37816 | /* 106659 */ GIM_Try, /*On fail goto*//*Label 2270*/ GIMT_Encode4(106714), // Rule ID 3390 // |
| 37817 | /* 106664 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37818 | /* 106667 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_maskstore_ps_256), |
| 37819 | /* 106672 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 37820 | /* 106675 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 37821 | /* 106678 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37822 | /* 106682 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37823 | /* 106686 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37824 | /* 106690 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37825 | /* 106697 */ // (intrinsic_void 13434:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VMASKMOVPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 37826 | /* 106697 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPSYmr), |
| 37827 | /* 106700 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37828 | /* 106704 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37829 | /* 106706 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37830 | /* 106708 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37831 | /* 106712 */ GIR_RootConstrainSelectedInstOperands, |
| 37832 | /* 106713 */ // GIR_Coverage, 3390, |
| 37833 | /* 106713 */ GIR_EraseRootFromParent_Done, |
| 37834 | /* 106714 */ // Label 2270: @106714 |
| 37835 | /* 106714 */ GIM_Try, /*On fail goto*//*Label 2271*/ GIMT_Encode4(106769), // Rule ID 3393 // |
| 37836 | /* 106719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37837 | /* 106722 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_maskstore_pd), |
| 37838 | /* 106727 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 37839 | /* 106730 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 37840 | /* 106733 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37841 | /* 106737 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37842 | /* 106741 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37843 | /* 106745 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37844 | /* 106752 */ // (intrinsic_void 13431:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VMASKMOVPDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 37845 | /* 106752 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPDmr), |
| 37846 | /* 106755 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37847 | /* 106759 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37848 | /* 106761 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37849 | /* 106763 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37850 | /* 106767 */ GIR_RootConstrainSelectedInstOperands, |
| 37851 | /* 106768 */ // GIR_Coverage, 3393, |
| 37852 | /* 106768 */ GIR_EraseRootFromParent_Done, |
| 37853 | /* 106769 */ // Label 2271: @106769 |
| 37854 | /* 106769 */ GIM_Try, /*On fail goto*//*Label 2272*/ GIMT_Encode4(106824), // Rule ID 3394 // |
| 37855 | /* 106774 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37856 | /* 106777 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_maskstore_pd_256), |
| 37857 | /* 106782 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 37858 | /* 106785 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 37859 | /* 106788 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37860 | /* 106792 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37861 | /* 106796 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37862 | /* 106800 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37863 | /* 106807 */ // (intrinsic_void 13432:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VMASKMOVPDYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 37864 | /* 106807 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPDYmr), |
| 37865 | /* 106810 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37866 | /* 106814 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37867 | /* 106816 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37868 | /* 106818 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37869 | /* 106822 */ GIR_RootConstrainSelectedInstOperands, |
| 37870 | /* 106823 */ // GIR_Coverage, 3394, |
| 37871 | /* 106823 */ GIR_EraseRootFromParent_Done, |
| 37872 | /* 106824 */ // Label 2272: @106824 |
| 37873 | /* 106824 */ GIM_Try, /*On fail goto*//*Label 2273*/ GIMT_Encode4(106879), // Rule ID 3467 // |
| 37874 | /* 106829 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37875 | /* 106832 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx2_maskstore_d), |
| 37876 | /* 106837 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 37877 | /* 106840 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 37878 | /* 106843 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37879 | /* 106847 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37880 | /* 106851 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37881 | /* 106855 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37882 | /* 106862 */ // (intrinsic_void 13731:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMASKMOVDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 37883 | /* 106862 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVDmr), |
| 37884 | /* 106865 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37885 | /* 106869 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37886 | /* 106871 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37887 | /* 106873 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37888 | /* 106877 */ GIR_RootConstrainSelectedInstOperands, |
| 37889 | /* 106878 */ // GIR_Coverage, 3467, |
| 37890 | /* 106878 */ GIR_EraseRootFromParent_Done, |
| 37891 | /* 106879 */ // Label 2273: @106879 |
| 37892 | /* 106879 */ GIM_Try, /*On fail goto*//*Label 2274*/ GIMT_Encode4(106934), // Rule ID 3468 // |
| 37893 | /* 106884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37894 | /* 106887 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx2_maskstore_d_256), |
| 37895 | /* 106892 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 37896 | /* 106895 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 37897 | /* 106898 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37898 | /* 106902 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37899 | /* 106906 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37900 | /* 106910 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37901 | /* 106917 */ // (intrinsic_void 13732:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMASKMOVDYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 37902 | /* 106917 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVDYmr), |
| 37903 | /* 106920 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37904 | /* 106924 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37905 | /* 106926 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37906 | /* 106928 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37907 | /* 106932 */ GIR_RootConstrainSelectedInstOperands, |
| 37908 | /* 106933 */ // GIR_Coverage, 3468, |
| 37909 | /* 106933 */ GIR_EraseRootFromParent_Done, |
| 37910 | /* 106934 */ // Label 2274: @106934 |
| 37911 | /* 106934 */ GIM_Try, /*On fail goto*//*Label 2275*/ GIMT_Encode4(106989), // Rule ID 3471 // |
| 37912 | /* 106939 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37913 | /* 106942 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx2_maskstore_q), |
| 37914 | /* 106947 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 37915 | /* 106950 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 37916 | /* 106953 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37917 | /* 106957 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37918 | /* 106961 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37919 | /* 106965 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37920 | /* 106972 */ // (intrinsic_void 13733:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPMASKMOVQmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 37921 | /* 106972 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVQmr), |
| 37922 | /* 106975 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37923 | /* 106979 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37924 | /* 106981 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37925 | /* 106983 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37926 | /* 106987 */ GIR_RootConstrainSelectedInstOperands, |
| 37927 | /* 106988 */ // GIR_Coverage, 3471, |
| 37928 | /* 106988 */ GIR_EraseRootFromParent_Done, |
| 37929 | /* 106989 */ // Label 2275: @106989 |
| 37930 | /* 106989 */ GIM_Try, /*On fail goto*//*Label 2276*/ GIMT_Encode4(107044), // Rule ID 3472 // |
| 37931 | /* 106994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37932 | /* 106997 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx2_maskstore_q_256), |
| 37933 | /* 107002 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 37934 | /* 107005 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 37935 | /* 107008 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37936 | /* 107012 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37937 | /* 107016 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37938 | /* 107020 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37939 | /* 107027 */ // (intrinsic_void 13734:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPMASKMOVQYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 37940 | /* 107027 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVQYmr), |
| 37941 | /* 107030 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37942 | /* 107034 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37943 | /* 107036 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37944 | /* 107038 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37945 | /* 107042 */ GIR_RootConstrainSelectedInstOperands, |
| 37946 | /* 107043 */ // GIR_Coverage, 3472, |
| 37947 | /* 107043 */ GIR_EraseRootFromParent_Done, |
| 37948 | /* 107044 */ // Label 2276: @107044 |
| 37949 | /* 107044 */ GIM_Try, /*On fail goto*//*Label 2277*/ GIMT_Encode4(107123), // Rule ID 17105 // |
| 37950 | /* 107049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVE), |
| 37951 | /* 107052 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsave), |
| 37952 | /* 107057 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37953 | /* 107060 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37954 | /* 107063 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37955 | /* 107067 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37956 | /* 107071 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37957 | /* 107075 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37958 | /* 107082 */ // (intrinsic_void 15071:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVE addr:{ *:[iPTR] }:$dst) |
| 37959 | /* 107082 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37960 | /* 107086 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 37961 | /* 107092 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37962 | /* 107096 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37963 | /* 107100 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 37964 | /* 107106 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37965 | /* 107110 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVE), |
| 37966 | /* 107113 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37967 | /* 107117 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37968 | /* 107121 */ GIR_RootConstrainSelectedInstOperands, |
| 37969 | /* 107122 */ // GIR_Coverage, 17105, |
| 37970 | /* 107122 */ GIR_EraseRootFromParent_Done, |
| 37971 | /* 107123 */ // Label 2277: @107123 |
| 37972 | /* 107123 */ GIM_Try, /*On fail goto*//*Label 2278*/ GIMT_Encode4(107202), // Rule ID 17106 // |
| 37973 | /* 107128 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVE_In64BitMode), |
| 37974 | /* 107131 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsave64), |
| 37975 | /* 107136 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37976 | /* 107139 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37977 | /* 107142 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37978 | /* 107146 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37979 | /* 107150 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37980 | /* 107154 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37981 | /* 107161 */ // (intrinsic_void 15072:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVE64 addr:{ *:[iPTR] }:$dst) |
| 37982 | /* 107161 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37983 | /* 107165 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 37984 | /* 107171 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37985 | /* 107175 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37986 | /* 107179 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 37987 | /* 107185 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37988 | /* 107189 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVE64), |
| 37989 | /* 107192 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37990 | /* 107196 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37991 | /* 107200 */ GIR_RootConstrainSelectedInstOperands, |
| 37992 | /* 107201 */ // GIR_Coverage, 17106, |
| 37993 | /* 107201 */ GIR_EraseRootFromParent_Done, |
| 37994 | /* 107202 */ // Label 2278: @107202 |
| 37995 | /* 107202 */ GIM_Try, /*On fail goto*//*Label 2279*/ GIMT_Encode4(107281), // Rule ID 17107 // |
| 37996 | /* 107207 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVE), |
| 37997 | /* 107210 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xrstor), |
| 37998 | /* 107215 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37999 | /* 107218 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38000 | /* 107221 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 38001 | /* 107225 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38002 | /* 107229 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38003 | /* 107233 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38004 | /* 107240 */ // (intrinsic_void 15067:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XRSTOR addr:{ *:[iPTR] }:$dst) |
| 38005 | /* 107240 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38006 | /* 107244 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38007 | /* 107250 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38008 | /* 107254 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38009 | /* 107258 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38010 | /* 107264 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38011 | /* 107268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XRSTOR), |
| 38012 | /* 107271 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 38013 | /* 107275 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38014 | /* 107279 */ GIR_RootConstrainSelectedInstOperands, |
| 38015 | /* 107280 */ // GIR_Coverage, 17107, |
| 38016 | /* 107280 */ GIR_EraseRootFromParent_Done, |
| 38017 | /* 107281 */ // Label 2279: @107281 |
| 38018 | /* 107281 */ GIM_Try, /*On fail goto*//*Label 2280*/ GIMT_Encode4(107360), // Rule ID 17108 // |
| 38019 | /* 107286 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVE_In64BitMode), |
| 38020 | /* 107289 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xrstor64), |
| 38021 | /* 107294 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38022 | /* 107297 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38023 | /* 107300 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 38024 | /* 107304 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38025 | /* 107308 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38026 | /* 107312 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38027 | /* 107319 */ // (intrinsic_void 15068:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XRSTOR64 addr:{ *:[iPTR] }:$dst) |
| 38028 | /* 107319 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38029 | /* 107323 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38030 | /* 107329 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38031 | /* 107333 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38032 | /* 107337 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38033 | /* 107343 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38034 | /* 107347 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XRSTOR64), |
| 38035 | /* 107350 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 38036 | /* 107354 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38037 | /* 107358 */ GIR_RootConstrainSelectedInstOperands, |
| 38038 | /* 107359 */ // GIR_Coverage, 17108, |
| 38039 | /* 107359 */ GIR_EraseRootFromParent_Done, |
| 38040 | /* 107360 */ // Label 2280: @107360 |
| 38041 | /* 107360 */ GIM_Try, /*On fail goto*//*Label 2281*/ GIMT_Encode4(107439), // Rule ID 17109 // |
| 38042 | /* 107365 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVEOPT), |
| 38043 | /* 107368 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsaveopt), |
| 38044 | /* 107373 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38045 | /* 107376 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38046 | /* 107379 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 38047 | /* 107383 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38048 | /* 107387 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38049 | /* 107391 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38050 | /* 107398 */ // (intrinsic_void 15075:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVEOPT addr:{ *:[iPTR] }:$dst) |
| 38051 | /* 107398 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38052 | /* 107402 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38053 | /* 107408 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38054 | /* 107412 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38055 | /* 107416 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38056 | /* 107422 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38057 | /* 107426 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVEOPT), |
| 38058 | /* 107429 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 38059 | /* 107433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38060 | /* 107437 */ GIR_RootConstrainSelectedInstOperands, |
| 38061 | /* 107438 */ // GIR_Coverage, 17109, |
| 38062 | /* 107438 */ GIR_EraseRootFromParent_Done, |
| 38063 | /* 107439 */ // Label 2281: @107439 |
| 38064 | /* 107439 */ GIM_Try, /*On fail goto*//*Label 2282*/ GIMT_Encode4(107518), // Rule ID 17110 // |
| 38065 | /* 107444 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVEOPT_In64BitMode), |
| 38066 | /* 107447 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsaveopt64), |
| 38067 | /* 107452 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38068 | /* 107455 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38069 | /* 107458 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 38070 | /* 107462 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38071 | /* 107466 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38072 | /* 107470 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38073 | /* 107477 */ // (intrinsic_void 15076:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVEOPT64 addr:{ *:[iPTR] }:$dst) |
| 38074 | /* 107477 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38075 | /* 107481 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38076 | /* 107487 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38077 | /* 107491 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38078 | /* 107495 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38079 | /* 107501 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38080 | /* 107505 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVEOPT64), |
| 38081 | /* 107508 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 38082 | /* 107512 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38083 | /* 107516 */ GIR_RootConstrainSelectedInstOperands, |
| 38084 | /* 107517 */ // GIR_Coverage, 17110, |
| 38085 | /* 107517 */ GIR_EraseRootFromParent_Done, |
| 38086 | /* 107518 */ // Label 2282: @107518 |
| 38087 | /* 107518 */ GIM_Try, /*On fail goto*//*Label 2283*/ GIMT_Encode4(107597), // Rule ID 17111 // |
| 38088 | /* 107523 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVEC), |
| 38089 | /* 107526 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsavec), |
| 38090 | /* 107531 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38091 | /* 107534 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38092 | /* 107537 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 38093 | /* 107541 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38094 | /* 107545 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38095 | /* 107549 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38096 | /* 107556 */ // (intrinsic_void 15073:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVEC addr:{ *:[iPTR] }:$dst) |
| 38097 | /* 107556 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38098 | /* 107560 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38099 | /* 107566 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38100 | /* 107570 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38101 | /* 107574 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38102 | /* 107580 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38103 | /* 107584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVEC), |
| 38104 | /* 107587 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 38105 | /* 107591 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38106 | /* 107595 */ GIR_RootConstrainSelectedInstOperands, |
| 38107 | /* 107596 */ // GIR_Coverage, 17111, |
| 38108 | /* 107596 */ GIR_EraseRootFromParent_Done, |
| 38109 | /* 107597 */ // Label 2283: @107597 |
| 38110 | /* 107597 */ GIM_Try, /*On fail goto*//*Label 2284*/ GIMT_Encode4(107676), // Rule ID 17112 // |
| 38111 | /* 107602 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVEC_In64BitMode), |
| 38112 | /* 107605 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsavec64), |
| 38113 | /* 107610 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38114 | /* 107613 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38115 | /* 107616 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 38116 | /* 107620 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38117 | /* 107624 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38118 | /* 107628 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38119 | /* 107635 */ // (intrinsic_void 15074:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVEC64 addr:{ *:[iPTR] }:$dst) |
| 38120 | /* 107635 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38121 | /* 107639 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38122 | /* 107645 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38123 | /* 107649 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38124 | /* 107653 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38125 | /* 107659 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38126 | /* 107663 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVEC64), |
| 38127 | /* 107666 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 38128 | /* 107670 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38129 | /* 107674 */ GIR_RootConstrainSelectedInstOperands, |
| 38130 | /* 107675 */ // GIR_Coverage, 17112, |
| 38131 | /* 107675 */ GIR_EraseRootFromParent_Done, |
| 38132 | /* 107676 */ // Label 2284: @107676 |
| 38133 | /* 107676 */ GIM_Try, /*On fail goto*//*Label 2285*/ GIMT_Encode4(107755), // Rule ID 17113 // |
| 38134 | /* 107681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVES), |
| 38135 | /* 107684 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsaves), |
| 38136 | /* 107689 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38137 | /* 107692 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38138 | /* 107695 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 38139 | /* 107699 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38140 | /* 107703 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38141 | /* 107707 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38142 | /* 107714 */ // (intrinsic_void 15077:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVES addr:{ *:[iPTR] }:$dst) |
| 38143 | /* 107714 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38144 | /* 107718 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38145 | /* 107724 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38146 | /* 107728 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38147 | /* 107732 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38148 | /* 107738 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38149 | /* 107742 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVES), |
| 38150 | /* 107745 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 38151 | /* 107749 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38152 | /* 107753 */ GIR_RootConstrainSelectedInstOperands, |
| 38153 | /* 107754 */ // GIR_Coverage, 17113, |
| 38154 | /* 107754 */ GIR_EraseRootFromParent_Done, |
| 38155 | /* 107755 */ // Label 2285: @107755 |
| 38156 | /* 107755 */ GIM_Try, /*On fail goto*//*Label 2286*/ GIMT_Encode4(107834), // Rule ID 17114 // |
| 38157 | /* 107760 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVE_In64BitMode), |
| 38158 | /* 107763 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsaves64), |
| 38159 | /* 107768 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38160 | /* 107771 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38161 | /* 107774 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 38162 | /* 107778 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38163 | /* 107782 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38164 | /* 107786 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38165 | /* 107793 */ // (intrinsic_void 15078:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVES64 addr:{ *:[iPTR] }:$dst) |
| 38166 | /* 107793 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38167 | /* 107797 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38168 | /* 107803 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38169 | /* 107807 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38170 | /* 107811 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38171 | /* 107817 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38172 | /* 107821 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVES64), |
| 38173 | /* 107824 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 38174 | /* 107828 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38175 | /* 107832 */ GIR_RootConstrainSelectedInstOperands, |
| 38176 | /* 107833 */ // GIR_Coverage, 17114, |
| 38177 | /* 107833 */ GIR_EraseRootFromParent_Done, |
| 38178 | /* 107834 */ // Label 2286: @107834 |
| 38179 | /* 107834 */ GIM_Try, /*On fail goto*//*Label 2287*/ GIMT_Encode4(107913), // Rule ID 17115 // |
| 38180 | /* 107839 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVES), |
| 38181 | /* 107842 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xrstors), |
| 38182 | /* 107847 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38183 | /* 107850 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38184 | /* 107853 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 38185 | /* 107857 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38186 | /* 107861 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38187 | /* 107865 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38188 | /* 107872 */ // (intrinsic_void 15069:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XRSTORS addr:{ *:[iPTR] }:$dst) |
| 38189 | /* 107872 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38190 | /* 107876 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38191 | /* 107882 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38192 | /* 107886 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38193 | /* 107890 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38194 | /* 107896 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38195 | /* 107900 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XRSTORS), |
| 38196 | /* 107903 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 38197 | /* 107907 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38198 | /* 107911 */ GIR_RootConstrainSelectedInstOperands, |
| 38199 | /* 107912 */ // GIR_Coverage, 17115, |
| 38200 | /* 107912 */ GIR_EraseRootFromParent_Done, |
| 38201 | /* 107913 */ // Label 2287: @107913 |
| 38202 | /* 107913 */ GIM_Try, /*On fail goto*//*Label 2288*/ GIMT_Encode4(107992), // Rule ID 17116 // |
| 38203 | /* 107918 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVES_In64BitMode), |
| 38204 | /* 107921 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xrstors64), |
| 38205 | /* 107926 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38206 | /* 107929 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38207 | /* 107932 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 38208 | /* 107936 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38209 | /* 107940 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38210 | /* 107944 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38211 | /* 107951 */ // (intrinsic_void 15070:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XRSTORS64 addr:{ *:[iPTR] }:$dst) |
| 38212 | /* 107951 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38213 | /* 107955 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38214 | /* 107961 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38215 | /* 107965 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38216 | /* 107969 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38217 | /* 107975 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38218 | /* 107979 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XRSTORS64), |
| 38219 | /* 107982 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 38220 | /* 107986 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38221 | /* 107990 */ GIR_RootConstrainSelectedInstOperands, |
| 38222 | /* 107991 */ // GIR_Coverage, 17116, |
| 38223 | /* 107991 */ GIR_EraseRootFromParent_Done, |
| 38224 | /* 107992 */ // Label 2288: @107992 |
| 38225 | /* 107992 */ GIM_Try, /*On fail goto*//*Label 2289*/ GIMT_Encode4(108029), // Rule ID 17004 // |
| 38226 | /* 107997 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXINT8_In64BitMode), |
| 38227 | /* 108000 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbssd), |
| 38228 | /* 108005 */ // MIs[0] src1 |
| 38229 | /* 108005 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38230 | /* 108008 */ // MIs[0] src2 |
| 38231 | /* 108008 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38232 | /* 108011 */ // MIs[0] src3 |
| 38233 | /* 108011 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38234 | /* 108014 */ // (intrinsic_void 14919:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBSSD (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38235 | /* 108014 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBSSD), |
| 38236 | /* 108017 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38237 | /* 108019 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38238 | /* 108021 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38239 | /* 108023 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38240 | /* 108027 */ GIR_RootConstrainSelectedInstOperands, |
| 38241 | /* 108028 */ // GIR_Coverage, 17004, |
| 38242 | /* 108028 */ GIR_EraseRootFromParent_Done, |
| 38243 | /* 108029 */ // Label 2289: @108029 |
| 38244 | /* 108029 */ GIM_Try, /*On fail goto*//*Label 2290*/ GIMT_Encode4(108066), // Rule ID 17005 // |
| 38245 | /* 108034 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXINT8_In64BitMode), |
| 38246 | /* 108037 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbsud), |
| 38247 | /* 108042 */ // MIs[0] src1 |
| 38248 | /* 108042 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38249 | /* 108045 */ // MIs[0] src2 |
| 38250 | /* 108045 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38251 | /* 108048 */ // MIs[0] src3 |
| 38252 | /* 108048 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38253 | /* 108051 */ // (intrinsic_void 14921:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBSUD (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38254 | /* 108051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBSUD), |
| 38255 | /* 108054 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38256 | /* 108056 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38257 | /* 108058 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38258 | /* 108060 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38259 | /* 108064 */ GIR_RootConstrainSelectedInstOperands, |
| 38260 | /* 108065 */ // GIR_Coverage, 17005, |
| 38261 | /* 108065 */ GIR_EraseRootFromParent_Done, |
| 38262 | /* 108066 */ // Label 2290: @108066 |
| 38263 | /* 108066 */ GIM_Try, /*On fail goto*//*Label 2291*/ GIMT_Encode4(108103), // Rule ID 17006 // |
| 38264 | /* 108071 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXINT8_In64BitMode), |
| 38265 | /* 108074 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbusd), |
| 38266 | /* 108079 */ // MIs[0] src1 |
| 38267 | /* 108079 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38268 | /* 108082 */ // MIs[0] src2 |
| 38269 | /* 108082 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38270 | /* 108085 */ // MIs[0] src3 |
| 38271 | /* 108085 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38272 | /* 108088 */ // (intrinsic_void 14923:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBUSD (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38273 | /* 108088 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBUSD), |
| 38274 | /* 108091 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38275 | /* 108093 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38276 | /* 108095 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38277 | /* 108097 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38278 | /* 108101 */ GIR_RootConstrainSelectedInstOperands, |
| 38279 | /* 108102 */ // GIR_Coverage, 17006, |
| 38280 | /* 108102 */ GIR_EraseRootFromParent_Done, |
| 38281 | /* 108103 */ // Label 2291: @108103 |
| 38282 | /* 108103 */ GIM_Try, /*On fail goto*//*Label 2292*/ GIMT_Encode4(108140), // Rule ID 17007 // |
| 38283 | /* 108108 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXINT8_In64BitMode), |
| 38284 | /* 108111 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbuud), |
| 38285 | /* 108116 */ // MIs[0] src1 |
| 38286 | /* 108116 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38287 | /* 108119 */ // MIs[0] src2 |
| 38288 | /* 108119 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38289 | /* 108122 */ // MIs[0] src3 |
| 38290 | /* 108122 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38291 | /* 108125 */ // (intrinsic_void 14925:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBUUD (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38292 | /* 108125 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBUUD), |
| 38293 | /* 108128 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38294 | /* 108130 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38295 | /* 108132 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38296 | /* 108134 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38297 | /* 108138 */ GIR_RootConstrainSelectedInstOperands, |
| 38298 | /* 108139 */ // GIR_Coverage, 17007, |
| 38299 | /* 108139 */ GIR_EraseRootFromParent_Done, |
| 38300 | /* 108140 */ // Label 2292: @108140 |
| 38301 | /* 108140 */ GIM_Try, /*On fail goto*//*Label 2293*/ GIMT_Encode4(108177), // Rule ID 17009 // |
| 38302 | /* 108145 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXBF16_In64BitMode), |
| 38303 | /* 108148 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbf16ps), |
| 38304 | /* 108153 */ // MIs[0] src1 |
| 38305 | /* 108153 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38306 | /* 108156 */ // MIs[0] src2 |
| 38307 | /* 108156 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38308 | /* 108159 */ // MIs[0] src3 |
| 38309 | /* 108159 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38310 | /* 108162 */ // (intrinsic_void 14913:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBF16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38311 | /* 108162 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBF16PS), |
| 38312 | /* 108165 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38313 | /* 108167 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38314 | /* 108169 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38315 | /* 108171 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38316 | /* 108175 */ GIR_RootConstrainSelectedInstOperands, |
| 38317 | /* 108176 */ // GIR_Coverage, 17009, |
| 38318 | /* 108176 */ GIR_EraseRootFromParent_Done, |
| 38319 | /* 108177 */ // Label 2293: @108177 |
| 38320 | /* 108177 */ GIM_Try, /*On fail goto*//*Label 2294*/ GIMT_Encode4(108214), // Rule ID 17011 // |
| 38321 | /* 108182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP16_In64BitMode), |
| 38322 | /* 108185 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpfp16ps), |
| 38323 | /* 108190 */ // MIs[0] src1 |
| 38324 | /* 108190 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38325 | /* 108193 */ // MIs[0] src2 |
| 38326 | /* 108193 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38327 | /* 108196 */ // MIs[0] src3 |
| 38328 | /* 108196 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38329 | /* 108199 */ // (intrinsic_void 14927:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPFP16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38330 | /* 108199 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPFP16PS), |
| 38331 | /* 108202 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38332 | /* 108204 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38333 | /* 108206 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38334 | /* 108208 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38335 | /* 108212 */ GIR_RootConstrainSelectedInstOperands, |
| 38336 | /* 108213 */ // GIR_Coverage, 17011, |
| 38337 | /* 108213 */ GIR_EraseRootFromParent_Done, |
| 38338 | /* 108214 */ // Label 2294: @108214 |
| 38339 | /* 108214 */ GIM_Try, /*On fail goto*//*Label 2295*/ GIMT_Encode4(108251), // Rule ID 17014 // |
| 38340 | /* 108219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXCOMPLEX_In64BitMode), |
| 38341 | /* 108222 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tcmmimfp16ps), |
| 38342 | /* 108227 */ // MIs[0] src1 |
| 38343 | /* 108227 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38344 | /* 108230 */ // MIs[0] src2 |
| 38345 | /* 108230 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38346 | /* 108233 */ // MIs[0] src3 |
| 38347 | /* 108233 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38348 | /* 108236 */ // (intrinsic_void 14895:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTCMMIMFP16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38349 | /* 108236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCMMIMFP16PS), |
| 38350 | /* 108239 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38351 | /* 108241 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38352 | /* 108243 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38353 | /* 108245 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38354 | /* 108249 */ GIR_RootConstrainSelectedInstOperands, |
| 38355 | /* 108250 */ // GIR_Coverage, 17014, |
| 38356 | /* 108250 */ GIR_EraseRootFromParent_Done, |
| 38357 | /* 108251 */ // Label 2295: @108251 |
| 38358 | /* 108251 */ GIM_Try, /*On fail goto*//*Label 2296*/ GIMT_Encode4(108288), // Rule ID 17015 // |
| 38359 | /* 108256 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXCOMPLEX_In64BitMode), |
| 38360 | /* 108259 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tcmmrlfp16ps), |
| 38361 | /* 108264 */ // MIs[0] src1 |
| 38362 | /* 108264 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38363 | /* 108267 */ // MIs[0] src2 |
| 38364 | /* 108267 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38365 | /* 108270 */ // MIs[0] src3 |
| 38366 | /* 108270 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38367 | /* 108273 */ // (intrinsic_void 14897:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTCMMRLFP16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38368 | /* 108273 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCMMRLFP16PS), |
| 38369 | /* 108276 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38370 | /* 108278 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38371 | /* 108280 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38372 | /* 108282 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38373 | /* 108286 */ GIR_RootConstrainSelectedInstOperands, |
| 38374 | /* 108287 */ // GIR_Coverage, 17015, |
| 38375 | /* 108287 */ GIR_EraseRootFromParent_Done, |
| 38376 | /* 108288 */ // Label 2296: @108288 |
| 38377 | /* 108288 */ GIM_Try, /*On fail goto*//*Label 2297*/ GIMT_Encode4(108325), // Rule ID 17016 // |
| 38378 | /* 108293 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP8_In64BitMode), |
| 38379 | /* 108296 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbf8ps), |
| 38380 | /* 108301 */ // MIs[0] src1 |
| 38381 | /* 108301 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38382 | /* 108304 */ // MIs[0] src2 |
| 38383 | /* 108304 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38384 | /* 108307 */ // MIs[0] src3 |
| 38385 | /* 108307 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38386 | /* 108310 */ // (intrinsic_void 14915:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBF8PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38387 | /* 108310 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBF8PS), |
| 38388 | /* 108313 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38389 | /* 108315 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38390 | /* 108317 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38391 | /* 108319 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38392 | /* 108323 */ GIR_RootConstrainSelectedInstOperands, |
| 38393 | /* 108324 */ // GIR_Coverage, 17016, |
| 38394 | /* 108324 */ GIR_EraseRootFromParent_Done, |
| 38395 | /* 108325 */ // Label 2297: @108325 |
| 38396 | /* 108325 */ GIM_Try, /*On fail goto*//*Label 2298*/ GIMT_Encode4(108362), // Rule ID 17017 // |
| 38397 | /* 108330 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP8_In64BitMode), |
| 38398 | /* 108333 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbhf8ps), |
| 38399 | /* 108338 */ // MIs[0] src1 |
| 38400 | /* 108338 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38401 | /* 108341 */ // MIs[0] src2 |
| 38402 | /* 108341 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38403 | /* 108344 */ // MIs[0] src3 |
| 38404 | /* 108344 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38405 | /* 108347 */ // (intrinsic_void 14917:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBHF8PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38406 | /* 108347 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBHF8PS), |
| 38407 | /* 108350 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38408 | /* 108352 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38409 | /* 108354 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38410 | /* 108356 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38411 | /* 108360 */ GIR_RootConstrainSelectedInstOperands, |
| 38412 | /* 108361 */ // GIR_Coverage, 17017, |
| 38413 | /* 108361 */ GIR_EraseRootFromParent_Done, |
| 38414 | /* 108362 */ // Label 2298: @108362 |
| 38415 | /* 108362 */ GIM_Try, /*On fail goto*//*Label 2299*/ GIMT_Encode4(108399), // Rule ID 17018 // |
| 38416 | /* 108367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP8_In64BitMode), |
| 38417 | /* 108370 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdphbf8ps), |
| 38418 | /* 108375 */ // MIs[0] src1 |
| 38419 | /* 108375 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38420 | /* 108378 */ // MIs[0] src2 |
| 38421 | /* 108378 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38422 | /* 108381 */ // MIs[0] src3 |
| 38423 | /* 108381 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38424 | /* 108384 */ // (intrinsic_void 14929:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPHBF8PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38425 | /* 108384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPHBF8PS), |
| 38426 | /* 108387 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38427 | /* 108389 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38428 | /* 108391 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38429 | /* 108393 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38430 | /* 108397 */ GIR_RootConstrainSelectedInstOperands, |
| 38431 | /* 108398 */ // GIR_Coverage, 17018, |
| 38432 | /* 108398 */ GIR_EraseRootFromParent_Done, |
| 38433 | /* 108399 */ // Label 2299: @108399 |
| 38434 | /* 108399 */ GIM_Try, /*On fail goto*//*Label 2300*/ GIMT_Encode4(108436), // Rule ID 17019 // |
| 38435 | /* 108404 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP8_In64BitMode), |
| 38436 | /* 108407 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdphf8ps), |
| 38437 | /* 108412 */ // MIs[0] src1 |
| 38438 | /* 108412 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38439 | /* 108415 */ // MIs[0] src2 |
| 38440 | /* 108415 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38441 | /* 108418 */ // MIs[0] src3 |
| 38442 | /* 108418 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38443 | /* 108421 */ // (intrinsic_void 14931:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPHF8PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38444 | /* 108421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPHF8PS), |
| 38445 | /* 108424 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38446 | /* 108426 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38447 | /* 108428 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38448 | /* 108430 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38449 | /* 108434 */ GIR_RootConstrainSelectedInstOperands, |
| 38450 | /* 108435 */ // GIR_Coverage, 17019, |
| 38451 | /* 108435 */ GIR_EraseRootFromParent_Done, |
| 38452 | /* 108436 */ // Label 2300: @108436 |
| 38453 | /* 108436 */ GIM_Try, /*On fail goto*//*Label 2301*/ GIMT_Encode4(108473), // Rule ID 17027 // |
| 38454 | /* 108441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXBF16_HasAMXTRANSPOSE_In64BitMode), |
| 38455 | /* 108444 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ttdpbf16ps), |
| 38456 | /* 108449 */ // MIs[0] src1 |
| 38457 | /* 108449 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38458 | /* 108452 */ // MIs[0] src2 |
| 38459 | /* 108452 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38460 | /* 108455 */ // MIs[0] src3 |
| 38461 | /* 108455 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38462 | /* 108458 */ // (intrinsic_void 14956:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTTDPBF16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38463 | /* 108458 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTTDPBF16PS), |
| 38464 | /* 108461 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38465 | /* 108463 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38466 | /* 108465 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38467 | /* 108467 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38468 | /* 108471 */ GIR_RootConstrainSelectedInstOperands, |
| 38469 | /* 108472 */ // GIR_Coverage, 17027, |
| 38470 | /* 108472 */ GIR_EraseRootFromParent_Done, |
| 38471 | /* 108473 */ // Label 2301: @108473 |
| 38472 | /* 108473 */ GIM_Try, /*On fail goto*//*Label 2302*/ GIMT_Encode4(108510), // Rule ID 17029 // |
| 38473 | /* 108478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP16_HasAMXTRANSPOSE_In64BitMode), |
| 38474 | /* 108481 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ttdpfp16ps), |
| 38475 | /* 108486 */ // MIs[0] src1 |
| 38476 | /* 108486 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38477 | /* 108489 */ // MIs[0] src2 |
| 38478 | /* 108489 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38479 | /* 108492 */ // MIs[0] src3 |
| 38480 | /* 108492 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38481 | /* 108495 */ // (intrinsic_void 14958:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTTDPFP16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38482 | /* 108495 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTTDPFP16PS), |
| 38483 | /* 108498 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38484 | /* 108500 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38485 | /* 108502 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38486 | /* 108504 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38487 | /* 108508 */ GIR_RootConstrainSelectedInstOperands, |
| 38488 | /* 108509 */ // GIR_Coverage, 17029, |
| 38489 | /* 108509 */ GIR_EraseRootFromParent_Done, |
| 38490 | /* 108510 */ // Label 2302: @108510 |
| 38491 | /* 108510 */ GIM_Try, /*On fail goto*//*Label 2303*/ GIMT_Encode4(108547), // Rule ID 17034 // |
| 38492 | /* 108515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXCOMPLEX_HasAMXTRANSPOSE_In64BitMode), |
| 38493 | /* 108518 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ttcmmimfp16ps), |
| 38494 | /* 108523 */ // MIs[0] src1 |
| 38495 | /* 108523 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38496 | /* 108526 */ // MIs[0] src2 |
| 38497 | /* 108526 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38498 | /* 108529 */ // MIs[0] src3 |
| 38499 | /* 108529 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38500 | /* 108532 */ // (intrinsic_void 14952:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTTCMMIMFP16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38501 | /* 108532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTTCMMIMFP16PS), |
| 38502 | /* 108535 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38503 | /* 108537 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38504 | /* 108539 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38505 | /* 108541 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38506 | /* 108545 */ GIR_RootConstrainSelectedInstOperands, |
| 38507 | /* 108546 */ // GIR_Coverage, 17034, |
| 38508 | /* 108546 */ GIR_EraseRootFromParent_Done, |
| 38509 | /* 108547 */ // Label 2303: @108547 |
| 38510 | /* 108547 */ GIM_Try, /*On fail goto*//*Label 2304*/ GIMT_Encode4(108584), // Rule ID 17035 // |
| 38511 | /* 108552 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXCOMPLEX_HasAMXTRANSPOSE_In64BitMode), |
| 38512 | /* 108555 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ttcmmrlfp16ps), |
| 38513 | /* 108560 */ // MIs[0] src1 |
| 38514 | /* 108560 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38515 | /* 108563 */ // MIs[0] src2 |
| 38516 | /* 108563 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38517 | /* 108566 */ // MIs[0] src3 |
| 38518 | /* 108566 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38519 | /* 108569 */ // (intrinsic_void 14954:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTTCMMRLFP16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38520 | /* 108569 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTTCMMRLFP16PS), |
| 38521 | /* 108572 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38522 | /* 108574 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38523 | /* 108576 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38524 | /* 108578 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38525 | /* 108582 */ GIR_RootConstrainSelectedInstOperands, |
| 38526 | /* 108583 */ // GIR_Coverage, 17035, |
| 38527 | /* 108583 */ GIR_EraseRootFromParent_Done, |
| 38528 | /* 108584 */ // Label 2304: @108584 |
| 38529 | /* 108584 */ GIM_Try, /*On fail goto*//*Label 2305*/ GIMT_Encode4(108621), // Rule ID 17036 // |
| 38530 | /* 108589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXCOMPLEX_HasAMXTRANSPOSE_In64BitMode), |
| 38531 | /* 108592 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tconjtcmmimfp16ps), |
| 38532 | /* 108597 */ // MIs[0] src1 |
| 38533 | /* 108597 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38534 | /* 108600 */ // MIs[0] src2 |
| 38535 | /* 108600 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38536 | /* 108603 */ // MIs[0] src3 |
| 38537 | /* 108603 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38538 | /* 108606 */ // (intrinsic_void 14899:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTCONJTCMMIMFP16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38539 | /* 108606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCONJTCMMIMFP16PS), |
| 38540 | /* 108609 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38541 | /* 108611 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38542 | /* 108613 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38543 | /* 108615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38544 | /* 108619 */ GIR_RootConstrainSelectedInstOperands, |
| 38545 | /* 108620 */ // GIR_Coverage, 17036, |
| 38546 | /* 108620 */ GIR_EraseRootFromParent_Done, |
| 38547 | /* 108621 */ // Label 2305: @108621 |
| 38548 | /* 108621 */ GIM_Try, /*On fail goto*//*Label 2306*/ GIMT_Encode4(108658), // Rule ID 17055 // |
| 38549 | /* 108626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTF32_In64BitMode), |
| 38550 | /* 108629 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tmmultf32ps), |
| 38551 | /* 108634 */ // MIs[0] src1 |
| 38552 | /* 108634 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38553 | /* 108637 */ // MIs[0] src2 |
| 38554 | /* 108637 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38555 | /* 108640 */ // MIs[0] src3 |
| 38556 | /* 108640 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38557 | /* 108643 */ // (intrinsic_void 14949:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTMMULTF32PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38558 | /* 108643 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTMMULTF32PS), |
| 38559 | /* 108646 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38560 | /* 108648 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38561 | /* 108650 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38562 | /* 108652 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38563 | /* 108656 */ GIR_RootConstrainSelectedInstOperands, |
| 38564 | /* 108657 */ // GIR_Coverage, 17055, |
| 38565 | /* 108657 */ GIR_EraseRootFromParent_Done, |
| 38566 | /* 108658 */ // Label 2306: @108658 |
| 38567 | /* 108658 */ GIM_Try, /*On fail goto*//*Label 2307*/ GIMT_Encode4(108695), // Rule ID 17057 // |
| 38568 | /* 108663 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTF32_HasAMXTRANSPOSE_In64BitMode), |
| 38569 | /* 108666 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ttmmultf32ps), |
| 38570 | /* 108671 */ // MIs[0] src1 |
| 38571 | /* 108671 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 38572 | /* 108674 */ // MIs[0] src2 |
| 38573 | /* 108674 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38574 | /* 108677 */ // MIs[0] src3 |
| 38575 | /* 108677 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38576 | /* 108680 */ // (intrinsic_void 14960:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTTMMULTF32PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 38577 | /* 108680 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTTMMULTF32PS), |
| 38578 | /* 108683 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 38579 | /* 108685 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 38580 | /* 108687 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 38581 | /* 108689 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38582 | /* 108693 */ GIR_RootConstrainSelectedInstOperands, |
| 38583 | /* 108694 */ // GIR_Coverage, 17057, |
| 38584 | /* 108694 */ GIR_EraseRootFromParent_Done, |
| 38585 | /* 108695 */ // Label 2307: @108695 |
| 38586 | /* 108695 */ GIM_Try, /*On fail goto*//*Label 2308*/ GIMT_Encode4(108748), // Rule ID 17038 // |
| 38587 | /* 108700 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_512_In64BitMode), |
| 38588 | /* 108703 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowd2ps), |
| 38589 | /* 108708 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 38590 | /* 108711 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38591 | /* 108714 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38592 | /* 108718 */ // MIs[0] src1 |
| 38593 | /* 108718 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38594 | /* 108721 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 38595 | /* 108725 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 38596 | /* 108729 */ // MIs[1] Operand 1 |
| 38597 | /* 108729 */ // No operand predicates |
| 38598 | /* 108729 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 38599 | /* 108731 */ // (intrinsic_w_chain:{ *:[v16f32] } 14903:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (imm:{ *:[i32] }):$src2) => (PTCVTROWD2PSrri:{ *:[v16f32] } (timm:{ *:[i8] }):$src1, (imm:{ *:[i32] }):$src2) |
| 38600 | /* 108731 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWD2PSrri), |
| 38601 | /* 108734 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38602 | /* 108736 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38603 | /* 108738 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 38604 | /* 108741 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 38605 | /* 108746 */ GIR_RootConstrainSelectedInstOperands, |
| 38606 | /* 108747 */ // GIR_Coverage, 17038, |
| 38607 | /* 108747 */ GIR_EraseRootFromParent_Done, |
| 38608 | /* 108748 */ // Label 2308: @108748 |
| 38609 | /* 108748 */ GIM_Try, /*On fail goto*//*Label 2309*/ GIMT_Encode4(108801), // Rule ID 17047 // |
| 38610 | /* 108753 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_512_In64BitMode), |
| 38611 | /* 108756 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowps2phh), |
| 38612 | /* 108761 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s16, |
| 38613 | /* 108764 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38614 | /* 108767 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38615 | /* 108771 */ // MIs[0] src1 |
| 38616 | /* 108771 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38617 | /* 108774 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 38618 | /* 108778 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 38619 | /* 108782 */ // MIs[1] Operand 1 |
| 38620 | /* 108782 */ // No operand predicates |
| 38621 | /* 108782 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 38622 | /* 108784 */ // (intrinsic_w_chain:{ *:[v32f16] } 14909:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (imm:{ *:[i32] }):$src2) => (PTCVTROWPS2PHHrri:{ *:[v32f16] } (timm:{ *:[i8] }):$src1, (imm:{ *:[i32] }):$src2) |
| 38623 | /* 108784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWPS2PHHrri), |
| 38624 | /* 108787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38625 | /* 108789 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38626 | /* 108791 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 38627 | /* 108794 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 38628 | /* 108799 */ GIR_RootConstrainSelectedInstOperands, |
| 38629 | /* 108800 */ // GIR_Coverage, 17047, |
| 38630 | /* 108800 */ GIR_EraseRootFromParent_Done, |
| 38631 | /* 108801 */ // Label 2309: @108801 |
| 38632 | /* 108801 */ GIM_Try, /*On fail goto*//*Label 2310*/ GIMT_Encode4(108854), // Rule ID 17049 // |
| 38633 | /* 108806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_512_In64BitMode), |
| 38634 | /* 108809 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowps2phl), |
| 38635 | /* 108814 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s16, |
| 38636 | /* 108817 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38637 | /* 108820 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38638 | /* 108824 */ // MIs[0] src1 |
| 38639 | /* 108824 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38640 | /* 108827 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 38641 | /* 108831 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 38642 | /* 108835 */ // MIs[1] Operand 1 |
| 38643 | /* 108835 */ // No operand predicates |
| 38644 | /* 108835 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 38645 | /* 108837 */ // (intrinsic_w_chain:{ *:[v32f16] } 14911:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (imm:{ *:[i32] }):$src2) => (PTCVTROWPS2PHLrri:{ *:[v32f16] } (timm:{ *:[i8] }):$src1, (imm:{ *:[i32] }):$src2) |
| 38646 | /* 108837 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWPS2PHLrri), |
| 38647 | /* 108840 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38648 | /* 108842 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38649 | /* 108844 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 38650 | /* 108847 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 38651 | /* 108852 */ GIR_RootConstrainSelectedInstOperands, |
| 38652 | /* 108853 */ // GIR_Coverage, 17049, |
| 38653 | /* 108853 */ GIR_EraseRootFromParent_Done, |
| 38654 | /* 108854 */ // Label 2310: @108854 |
| 38655 | /* 108854 */ GIM_Try, /*On fail goto*//*Label 2311*/ GIMT_Encode4(108907), // Rule ID 17050 // |
| 38656 | /* 108859 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_512_In64BitMode), |
| 38657 | /* 108862 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tilemovrow), |
| 38658 | /* 108867 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 38659 | /* 108870 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38660 | /* 108873 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38661 | /* 108877 */ // MIs[0] src1 |
| 38662 | /* 108877 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38663 | /* 108880 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 38664 | /* 108884 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 38665 | /* 108888 */ // MIs[1] Operand 1 |
| 38666 | /* 108888 */ // No operand predicates |
| 38667 | /* 108888 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 38668 | /* 108890 */ // (intrinsic_w_chain:{ *:[v16i32] } 14942:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (imm:{ *:[i32] }):$src2) => (PTILEMOVROWrri:{ *:[v16i32] } (timm:{ *:[i8] }):$src1, (imm:{ *:[i32] }):$src2) |
| 38669 | /* 108890 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTILEMOVROWrri), |
| 38670 | /* 108893 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38671 | /* 108895 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38672 | /* 108897 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 38673 | /* 108900 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 38674 | /* 108905 */ GIR_RootConstrainSelectedInstOperands, |
| 38675 | /* 108906 */ // GIR_Coverage, 17050, |
| 38676 | /* 108906 */ GIR_EraseRootFromParent_Done, |
| 38677 | /* 108907 */ // Label 2311: @108907 |
| 38678 | /* 108907 */ GIM_Try, /*On fail goto*//*Label 2312*/ GIMT_Encode4(108952), // Rule ID 17039 // |
| 38679 | /* 108912 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_512_In64BitMode), |
| 38680 | /* 108915 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowd2ps), |
| 38681 | /* 108920 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 38682 | /* 108923 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38683 | /* 108926 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38684 | /* 108930 */ // MIs[0] src1 |
| 38685 | /* 108930 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38686 | /* 108933 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38687 | /* 108937 */ // (intrinsic_w_chain:{ *:[v16f32] } 14903:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) => (PTCVTROWD2PSrre:{ *:[v16f32] } (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) |
| 38688 | /* 108937 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWD2PSrre), |
| 38689 | /* 108940 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38690 | /* 108942 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38691 | /* 108944 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 38692 | /* 108946 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38693 | /* 108950 */ GIR_RootConstrainSelectedInstOperands, |
| 38694 | /* 108951 */ // GIR_Coverage, 17039, |
| 38695 | /* 108951 */ GIR_EraseRootFromParent_Done, |
| 38696 | /* 108952 */ // Label 2312: @108952 |
| 38697 | /* 108952 */ GIM_Try, /*On fail goto*//*Label 2313*/ GIMT_Encode4(108997), // Rule ID 17046 // |
| 38698 | /* 108957 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_512_In64BitMode), |
| 38699 | /* 108960 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowps2phh), |
| 38700 | /* 108965 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s16, |
| 38701 | /* 108968 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38702 | /* 108971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38703 | /* 108975 */ // MIs[0] src1 |
| 38704 | /* 108975 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38705 | /* 108978 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38706 | /* 108982 */ // (intrinsic_w_chain:{ *:[v32f16] } 14909:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) => (PTCVTROWPS2PHHrre:{ *:[v32f16] } (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) |
| 38707 | /* 108982 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWPS2PHHrre), |
| 38708 | /* 108985 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38709 | /* 108987 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38710 | /* 108989 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 38711 | /* 108991 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38712 | /* 108995 */ GIR_RootConstrainSelectedInstOperands, |
| 38713 | /* 108996 */ // GIR_Coverage, 17046, |
| 38714 | /* 108996 */ GIR_EraseRootFromParent_Done, |
| 38715 | /* 108997 */ // Label 2313: @108997 |
| 38716 | /* 108997 */ GIM_Try, /*On fail goto*//*Label 2314*/ GIMT_Encode4(109042), // Rule ID 17048 // |
| 38717 | /* 109002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_512_In64BitMode), |
| 38718 | /* 109005 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowps2phl), |
| 38719 | /* 109010 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s16, |
| 38720 | /* 109013 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38721 | /* 109016 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38722 | /* 109020 */ // MIs[0] src1 |
| 38723 | /* 109020 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38724 | /* 109023 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38725 | /* 109027 */ // (intrinsic_w_chain:{ *:[v32f16] } 14911:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) => (PTCVTROWPS2PHLrre:{ *:[v32f16] } (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) |
| 38726 | /* 109027 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWPS2PHLrre), |
| 38727 | /* 109030 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38728 | /* 109032 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38729 | /* 109034 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 38730 | /* 109036 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38731 | /* 109040 */ GIR_RootConstrainSelectedInstOperands, |
| 38732 | /* 109041 */ // GIR_Coverage, 17048, |
| 38733 | /* 109041 */ GIR_EraseRootFromParent_Done, |
| 38734 | /* 109042 */ // Label 2314: @109042 |
| 38735 | /* 109042 */ GIM_Try, /*On fail goto*//*Label 2315*/ GIMT_Encode4(109087), // Rule ID 17051 // |
| 38736 | /* 109047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_512_In64BitMode), |
| 38737 | /* 109050 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tilemovrow), |
| 38738 | /* 109055 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 38739 | /* 109058 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38740 | /* 109061 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38741 | /* 109065 */ // MIs[0] src1 |
| 38742 | /* 109065 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 38743 | /* 109068 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38744 | /* 109072 */ // (intrinsic_w_chain:{ *:[v16i32] } 14942:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) => (PTILEMOVROWrre:{ *:[v16i32] } (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) |
| 38745 | /* 109072 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTILEMOVROWrre), |
| 38746 | /* 109075 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38747 | /* 109077 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38748 | /* 109079 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 38749 | /* 109081 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38750 | /* 109085 */ GIR_RootConstrainSelectedInstOperands, |
| 38751 | /* 109086 */ // GIR_Coverage, 17051, |
| 38752 | /* 109086 */ GIR_EraseRootFromParent_Done, |
| 38753 | /* 109087 */ // Label 2315: @109087 |
| 38754 | /* 109087 */ GIM_Try, /*On fail goto*//*Label 2316*/ GIMT_Encode4(109132), // Rule ID 122 // |
| 38755 | /* 109092 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 38756 | /* 109095 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_lwpval32), |
| 38757 | /* 109100 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 38758 | /* 109103 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38759 | /* 109106 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38760 | /* 109110 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38761 | /* 109114 */ // MIs[0] cntl |
| 38762 | /* 109114 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38763 | /* 109117 */ // (intrinsic_void 14583:{ *:[iPTR] }, GR32:{ *:[i32] }:$src0, GR32:{ *:[i32] }:$src1, (timm:{ *:[i32] }):$cntl) => (LWPVAL32rri GR32:{ *:[i32] }:$src0, GR32:{ *:[i32] }:$src1, (timm:{ *:[i32] }):$cntl) |
| 38764 | /* 109117 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LWPVAL32rri), |
| 38765 | /* 109120 */ GIR_RootToRootCopy, /*OpIdx*/1, // src0 |
| 38766 | /* 109122 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38767 | /* 109124 */ GIR_RootToRootCopy, /*OpIdx*/3, // cntl |
| 38768 | /* 109126 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38769 | /* 109130 */ GIR_RootConstrainSelectedInstOperands, |
| 38770 | /* 109131 */ // GIR_Coverage, 122, |
| 38771 | /* 109131 */ GIR_EraseRootFromParent_Done, |
| 38772 | /* 109132 */ // Label 2316: @109132 |
| 38773 | /* 109132 */ GIM_Try, /*On fail goto*//*Label 2317*/ GIMT_Encode4(109177), // Rule ID 124 // |
| 38774 | /* 109137 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 38775 | /* 109140 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_lwpval64), |
| 38776 | /* 109145 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 38777 | /* 109148 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38778 | /* 109151 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 38779 | /* 109155 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38780 | /* 109159 */ // MIs[0] cntl |
| 38781 | /* 109159 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 38782 | /* 109162 */ // (intrinsic_void 14584:{ *:[iPTR] }, GR64:{ *:[i64] }:$src0, GR32:{ *:[i32] }:$src1, (timm:{ *:[i32] }):$cntl) => (LWPVAL64rri GR64:{ *:[i64] }:$src0, GR32:{ *:[i32] }:$src1, (timm:{ *:[i32] }):$cntl) |
| 38783 | /* 109162 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LWPVAL64rri), |
| 38784 | /* 109165 */ GIR_RootToRootCopy, /*OpIdx*/1, // src0 |
| 38785 | /* 109167 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38786 | /* 109169 */ GIR_RootToRootCopy, /*OpIdx*/3, // cntl |
| 38787 | /* 109171 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38788 | /* 109175 */ GIR_RootConstrainSelectedInstOperands, |
| 38789 | /* 109176 */ // GIR_Coverage, 124, |
| 38790 | /* 109176 */ GIR_EraseRootFromParent_Done, |
| 38791 | /* 109177 */ // Label 2317: @109177 |
| 38792 | /* 109177 */ GIM_Try, /*On fail goto*//*Label 2318*/ GIMT_Encode4(109259), // Rule ID 17104 // |
| 38793 | /* 109182 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsetbv), |
| 38794 | /* 109187 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 38795 | /* 109190 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38796 | /* 109193 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38797 | /* 109196 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32_ArgRef_and_GR32_CBRegClassID), |
| 38798 | /* 109200 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 38799 | /* 109204 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38800 | /* 109208 */ // (intrinsic_void 15079:{ *:[iPTR] }, ECX:{ *:[i32] }, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSETBV) |
| 38801 | /* 109208 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38802 | /* 109212 */ GIR_AddRegister, /*InsnID*/3, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38803 | /* 109218 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 38804 | /* 109222 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38805 | /* 109226 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38806 | /* 109232 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 38807 | /* 109236 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38808 | /* 109240 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::ECX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38809 | /* 109246 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // ECX |
| 38810 | /* 109250 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSETBV), |
| 38811 | /* 109253 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38812 | /* 109257 */ GIR_RootConstrainSelectedInstOperands, |
| 38813 | /* 109258 */ // GIR_Coverage, 17104, |
| 38814 | /* 109258 */ GIR_EraseRootFromParent_Done, |
| 38815 | /* 109259 */ // Label 2318: @109259 |
| 38816 | /* 109259 */ GIM_Try, /*On fail goto*//*Label 2319*/ GIMT_Encode4(109308), // Rule ID 17293 // |
| 38817 | /* 109264 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMWAITX), |
| 38818 | /* 109267 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_mwaitx), |
| 38819 | /* 109272 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 38820 | /* 109275 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 38821 | /* 109278 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 38822 | /* 109281 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38823 | /* 109285 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38824 | /* 109289 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38825 | /* 109293 */ // (intrinsic_void 14661:{ *:[iPTR] }, GR32:{ *:[i32] }:$ecx, GR32:{ *:[i32] }:$eax, GR32:{ *:[i32] }:$ebx) => (MWAITX GR32:{ *:[i32] }:$ecx, GR32:{ *:[i32] }:$eax, GR32:{ *:[i32] }:$ebx) |
| 38826 | /* 109293 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MWAITX), |
| 38827 | /* 109296 */ GIR_RootToRootCopy, /*OpIdx*/1, // ecx |
| 38828 | /* 109298 */ GIR_RootToRootCopy, /*OpIdx*/2, // eax |
| 38829 | /* 109300 */ GIR_RootToRootCopy, /*OpIdx*/3, // ebx |
| 38830 | /* 109302 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38831 | /* 109306 */ GIR_RootConstrainSelectedInstOperands, |
| 38832 | /* 109307 */ // GIR_Coverage, 17293, |
| 38833 | /* 109307 */ GIR_EraseRootFromParent_Done, |
| 38834 | /* 109308 */ // Label 2319: @109308 |
| 38835 | /* 109308 */ GIM_Try, /*On fail goto*//*Label 2320*/ GIMT_Encode4(109370), // Rule ID 2903 // |
| 38836 | /* 109313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_In64BitMode), |
| 38837 | /* 109316 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_maskmov_dqu), |
| 38838 | /* 109321 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 38839 | /* 109324 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 38840 | /* 109327 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38841 | /* 109331 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38842 | /* 109335 */ // MIs[0] Operand 3 |
| 38843 | /* 109335 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/3, /*SizeInBits*/64, |
| 38844 | /* 109339 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR64_with_sub_32bit_in_GR32_DIBP_and_GR32_SIDIRegClassID), |
| 38845 | /* 109343 */ // (intrinsic_void 14759:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask, RDI:{ *:[i64] }) => (VMASKMOVDQU64 VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask) |
| 38846 | /* 109343 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38847 | /* 109347 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::RDI), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38848 | /* 109353 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // RDI |
| 38849 | /* 109357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVDQU64), |
| 38850 | /* 109360 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 38851 | /* 109362 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 38852 | /* 109364 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38853 | /* 109368 */ GIR_RootConstrainSelectedInstOperands, |
| 38854 | /* 109369 */ // GIR_Coverage, 2903, |
| 38855 | /* 109369 */ GIR_EraseRootFromParent_Done, |
| 38856 | /* 109370 */ // Label 2320: @109370 |
| 38857 | /* 109370 */ GIM_Try, /*On fail goto*//*Label 2321*/ GIMT_Encode4(109432), // Rule ID 2904 // |
| 38858 | /* 109375 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 38859 | /* 109378 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_maskmov_dqu), |
| 38860 | /* 109383 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 38861 | /* 109386 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 38862 | /* 109389 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38863 | /* 109393 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38864 | /* 109397 */ // MIs[0] Operand 3 |
| 38865 | /* 109397 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/3, /*SizeInBits*/32, |
| 38866 | /* 109401 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_DIBP_and_GR32_SIDIRegClassID), |
| 38867 | /* 109405 */ // (intrinsic_void 14759:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask, EDI:{ *:[i32] }) => (VMASKMOVDQU VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask) |
| 38868 | /* 109405 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38869 | /* 109409 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDI), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38870 | /* 109415 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // EDI |
| 38871 | /* 109419 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVDQU), |
| 38872 | /* 109422 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 38873 | /* 109424 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 38874 | /* 109426 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38875 | /* 109430 */ GIR_RootConstrainSelectedInstOperands, |
| 38876 | /* 109431 */ // GIR_Coverage, 2904, |
| 38877 | /* 109431 */ GIR_EraseRootFromParent_Done, |
| 38878 | /* 109432 */ // Label 2321: @109432 |
| 38879 | /* 109432 */ GIM_Try, /*On fail goto*//*Label 2322*/ GIMT_Encode4(109494), // Rule ID 2905 // |
| 38880 | /* 109437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode_UseSSE2), |
| 38881 | /* 109440 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_maskmov_dqu), |
| 38882 | /* 109445 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 38883 | /* 109448 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 38884 | /* 109451 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38885 | /* 109455 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38886 | /* 109459 */ // MIs[0] Operand 3 |
| 38887 | /* 109459 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/3, /*SizeInBits*/64, |
| 38888 | /* 109463 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR64_with_sub_32bit_in_GR32_DIBP_and_GR32_SIDIRegClassID), |
| 38889 | /* 109467 */ // (intrinsic_void 14759:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask, RDI:{ *:[i64] }) => (MASKMOVDQU64 VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask) |
| 38890 | /* 109467 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38891 | /* 109471 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::RDI), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38892 | /* 109477 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // RDI |
| 38893 | /* 109481 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MASKMOVDQU64), |
| 38894 | /* 109484 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 38895 | /* 109486 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 38896 | /* 109488 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38897 | /* 109492 */ GIR_RootConstrainSelectedInstOperands, |
| 38898 | /* 109493 */ // GIR_Coverage, 2905, |
| 38899 | /* 109493 */ GIR_EraseRootFromParent_Done, |
| 38900 | /* 109494 */ // Label 2322: @109494 |
| 38901 | /* 109494 */ GIM_Try, /*On fail goto*//*Label 2323*/ GIMT_Encode4(109556), // Rule ID 2906 // |
| 38902 | /* 109499 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 38903 | /* 109502 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_maskmov_dqu), |
| 38904 | /* 109507 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 38905 | /* 109510 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 38906 | /* 109513 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38907 | /* 109517 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38908 | /* 109521 */ // MIs[0] Operand 3 |
| 38909 | /* 109521 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/3, /*SizeInBits*/32, |
| 38910 | /* 109525 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_DIBP_and_GR32_SIDIRegClassID), |
| 38911 | /* 109529 */ // (intrinsic_void 14759:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask, EDI:{ *:[i32] }) => (MASKMOVDQU VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask) |
| 38912 | /* 109529 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38913 | /* 109533 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDI), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38914 | /* 109539 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // EDI |
| 38915 | /* 109543 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MASKMOVDQU), |
| 38916 | /* 109546 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 38917 | /* 109548 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 38918 | /* 109550 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38919 | /* 109554 */ GIR_RootConstrainSelectedInstOperands, |
| 38920 | /* 109555 */ // GIR_Coverage, 2906, |
| 38921 | /* 109555 */ GIR_EraseRootFromParent_Done, |
| 38922 | /* 109556 */ // Label 2323: @109556 |
| 38923 | /* 109556 */ GIM_Reject, |
| 38924 | /* 109557 */ // Label 2258: @109557 |
| 38925 | /* 109557 */ GIM_Try, /*On fail goto*//*Label 2324*/ GIMT_Encode4(109645), // Rule ID 16988 // |
| 38926 | /* 109562 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasKL), |
| 38927 | /* 109565 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/5, |
| 38928 | /* 109568 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_loadiwkey), |
| 38929 | /* 109573 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 38930 | /* 109576 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 38931 | /* 109579 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 38932 | /* 109582 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_s32, |
| 38933 | /* 109585 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38934 | /* 109589 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38935 | /* 109593 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 38936 | /* 109597 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 38937 | /* 109601 */ // (intrinsic_void 14580:{ *:[iPTR] }, XMM0:{ *:[v2i64] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2, EAX:{ *:[i32] }) => (LOADIWKEY:{ *:[i32] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 38938 | /* 109601 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38939 | /* 109605 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38940 | /* 109611 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/4, // EAX |
| 38941 | /* 109615 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38942 | /* 109619 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::XMM0), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 38943 | /* 109625 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // XMM0 |
| 38944 | /* 109629 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LOADIWKEY), |
| 38945 | /* 109632 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 38946 | /* 109634 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 38947 | /* 109636 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 38948 | /* 109639 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 38949 | /* 109643 */ GIR_RootConstrainSelectedInstOperands, |
| 38950 | /* 109644 */ // GIR_Coverage, 16988, |
| 38951 | /* 109644 */ GIR_EraseRootFromParent_Done, |
| 38952 | /* 109645 */ // Label 2324: @109645 |
| 38953 | /* 109645 */ GIM_Reject, |
| 38954 | /* 109646 */ // Label 19: @109646 |
| 38955 | /* 109646 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 2328*/ GIMT_Encode4(110080), |
| 38956 | /* 109657 */ /*GILLT_s16*//*Label 2325*/ GIMT_Encode4(109669), |
| 38957 | /* 109661 */ /*GILLT_s32*//*Label 2326*/ GIMT_Encode4(109727), |
| 38958 | /* 109665 */ /*GILLT_s64*//*Label 2327*/ GIMT_Encode4(109902), |
| 38959 | /* 109669 */ // Label 2325: @109669 |
| 38960 | /* 109669 */ GIM_Try, /*On fail goto*//*Label 2329*/ GIMT_Encode4(109726), // Rule ID 22590 // |
| 38961 | /* 109674 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 38962 | /* 109677 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 38963 | /* 109681 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 38964 | /* 109685 */ // (anyext:{ *:[i16] } GR8:{ *:[i8] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src), sub_16bit:{ *:[i32] }) |
| 38965 | /* 109685 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38966 | /* 109688 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 38967 | /* 109692 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 38968 | /* 109697 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38969 | /* 109701 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38970 | /* 109703 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38971 | /* 109706 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38972 | /* 109708 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 38973 | /* 109715 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 38974 | /* 109720 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38975 | /* 109725 */ // GIR_Coverage, 22590, |
| 38976 | /* 109725 */ GIR_EraseRootFromParent_Done, |
| 38977 | /* 109726 */ // Label 2329: @109726 |
| 38978 | /* 109726 */ GIM_Reject, |
| 38979 | /* 109727 */ // Label 2326: @109727 |
| 38980 | /* 109727 */ GIM_Try, /*On fail goto*//*Label 2330*/ GIMT_Encode4(109773), // Rule ID 19437 // |
| 38981 | /* 109732 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 38982 | /* 109735 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38983 | /* 109739 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 38984 | /* 109743 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 38985 | /* 109747 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 38986 | /* 109751 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 38987 | /* 109756 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 38988 | /* 109758 */ // (anyext:{ *:[i32] } (bitconvert:{ *:[i16] } VK16:{ *:[v16i1] }:$src)) => (COPY_TO_REGCLASS:{ *:[i32] } VK16:{ *:[v16i1] }:$src, GR32:{ *:[i32] }) |
| 38989 | /* 109758 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38990 | /* 109761 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38991 | /* 109763 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 38992 | /* 109767 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 38993 | /* 109772 */ // GIR_Coverage, 19437, |
| 38994 | /* 109772 */ GIR_EraseRootFromParent_Done, |
| 38995 | /* 109773 */ // Label 2330: @109773 |
| 38996 | /* 109773 */ GIM_Try, /*On fail goto*//*Label 2331*/ GIMT_Encode4(109819), // Rule ID 19440 // |
| 38997 | /* 109778 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 38998 | /* 109781 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38999 | /* 109785 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39000 | /* 109789 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 39001 | /* 109793 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 39002 | /* 109797 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 39003 | /* 109802 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39004 | /* 109804 */ // (anyext:{ *:[i32] } (bitconvert:{ *:[i8] } VK8:{ *:[v8i1] }:$src)) => (COPY_TO_REGCLASS:{ *:[i32] } VK8:{ *:[v8i1] }:$src, GR32:{ *:[i32] }) |
| 39005 | /* 109804 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39006 | /* 109807 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39007 | /* 109809 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 39008 | /* 109813 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 39009 | /* 109818 */ // GIR_Coverage, 19440, |
| 39010 | /* 109818 */ GIR_EraseRootFromParent_Done, |
| 39011 | /* 109819 */ // Label 2331: @109819 |
| 39012 | /* 109819 */ GIM_Try, /*On fail goto*//*Label 2332*/ GIMT_Encode4(109842), // Rule ID 22591 // |
| 39013 | /* 109824 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39014 | /* 109827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39015 | /* 109831 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39016 | /* 109835 */ // (anyext:{ *:[i32] } GR8:{ *:[i8] }:$src) => (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 39017 | /* 109835 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 39018 | /* 109840 */ GIR_RootConstrainSelectedInstOperands, |
| 39019 | /* 109841 */ // GIR_Coverage, 22591, |
| 39020 | /* 109841 */ GIR_Done, |
| 39021 | /* 109842 */ // Label 2332: @109842 |
| 39022 | /* 109842 */ GIM_Try, /*On fail goto*//*Label 2333*/ GIMT_Encode4(109901), // Rule ID 22592 // |
| 39023 | /* 109847 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39024 | /* 109850 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 39025 | /* 109854 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39026 | /* 109858 */ // (anyext:{ *:[i32] } GR16:{ *:[i16] }:$src) => (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR16:{ *:[i16] }:$src, sub_16bit:{ *:[i32] }) |
| 39027 | /* 109858 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39028 | /* 109861 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 39029 | /* 109865 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39030 | /* 109870 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39031 | /* 109872 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 39032 | /* 109875 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39033 | /* 109877 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39034 | /* 109880 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 39035 | /* 109882 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/4, |
| 39036 | /* 109885 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 39037 | /* 109890 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 39038 | /* 109895 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 39039 | /* 109900 */ // GIR_Coverage, 22592, |
| 39040 | /* 109900 */ GIR_EraseRootFromParent_Done, |
| 39041 | /* 109901 */ // Label 2333: @109901 |
| 39042 | /* 109901 */ GIM_Reject, |
| 39043 | /* 109902 */ // Label 2327: @109902 |
| 39044 | /* 109902 */ GIM_Try, /*On fail goto*//*Label 2334*/ GIMT_Encode4(109961), // Rule ID 22593 // |
| 39045 | /* 109907 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39046 | /* 109910 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39047 | /* 109914 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39048 | /* 109918 */ // (anyext:{ *:[i64] } GR8:{ *:[i8] }:$src) => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src), sub_32bit:{ *:[i32] }) |
| 39049 | /* 109918 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39050 | /* 109921 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 39051 | /* 109925 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39052 | /* 109930 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39053 | /* 109934 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39054 | /* 109936 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39055 | /* 109939 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39056 | /* 109941 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 39057 | /* 109944 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39058 | /* 109947 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 39059 | /* 109950 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 39060 | /* 109955 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 39061 | /* 109960 */ // GIR_Coverage, 22593, |
| 39062 | /* 109960 */ GIR_EraseRootFromParent_Done, |
| 39063 | /* 109961 */ // Label 2334: @109961 |
| 39064 | /* 109961 */ GIM_Try, /*On fail goto*//*Label 2335*/ GIMT_Encode4(110020), // Rule ID 22594 // |
| 39065 | /* 109966 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39066 | /* 109969 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39067 | /* 109973 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39068 | /* 109977 */ // (anyext:{ *:[i64] } GR16:{ *:[i16] }:$src) => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOVZX32rr16:{ *:[i32] } GR16:{ *:[i16] }:$src), sub_32bit:{ *:[i32] }) |
| 39069 | /* 109977 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39070 | /* 109980 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr16), |
| 39071 | /* 109984 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39072 | /* 109989 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39073 | /* 109993 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39074 | /* 109995 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39075 | /* 109998 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39076 | /* 110000 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 39077 | /* 110003 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39078 | /* 110006 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 39079 | /* 110009 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 39080 | /* 110014 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 39081 | /* 110019 */ // GIR_Coverage, 22594, |
| 39082 | /* 110019 */ GIR_EraseRootFromParent_Done, |
| 39083 | /* 110020 */ // Label 2335: @110020 |
| 39084 | /* 110020 */ GIM_Try, /*On fail goto*//*Label 2336*/ GIMT_Encode4(110079), // Rule ID 22595 // |
| 39085 | /* 110025 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 39086 | /* 110028 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39087 | /* 110032 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39088 | /* 110036 */ // (anyext:{ *:[i64] } GR32:{ *:[i32] }:$src) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR32:{ *:[i32] }:$src, sub_32bit:{ *:[i32] }) |
| 39089 | /* 110036 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 39090 | /* 110039 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 39091 | /* 110043 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39092 | /* 110048 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39093 | /* 110050 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 39094 | /* 110053 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39095 | /* 110055 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39096 | /* 110058 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 39097 | /* 110060 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 39098 | /* 110063 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 39099 | /* 110068 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR64RegClassID), |
| 39100 | /* 110073 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 39101 | /* 110078 */ // GIR_Coverage, 22595, |
| 39102 | /* 110078 */ GIR_EraseRootFromParent_Done, |
| 39103 | /* 110079 */ // Label 2336: @110079 |
| 39104 | /* 110079 */ GIM_Reject, |
| 39105 | /* 110080 */ // Label 2328: @110080 |
| 39106 | /* 110080 */ GIM_Reject, |
| 39107 | /* 110081 */ // Label 20: @110081 |
| 39108 | /* 110081 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(22), /*)*//*default:*//*Label 2345*/ GIMT_Encode4(111169), |
| 39109 | /* 110092 */ /*GILLT_s8*//*Label 2337*/ GIMT_Encode4(110176), |
| 39110 | /* 110096 */ /*GILLT_s16*//*Label 2338*/ GIMT_Encode4(110460), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 39111 | /* 110128 */ /*GILLT_v4s32*//*Label 2339*/ GIMT_Encode4(110499), GIMT_Encode4(0), GIMT_Encode4(0), |
| 39112 | /* 110140 */ /*GILLT_v8s16*//*Label 2340*/ GIMT_Encode4(110639), |
| 39113 | /* 110144 */ /*GILLT_v8s32*//*Label 2341*/ GIMT_Encode4(110802), GIMT_Encode4(0), GIMT_Encode4(0), |
| 39114 | /* 110156 */ /*GILLT_v16s8*//*Label 2342*/ GIMT_Encode4(110829), |
| 39115 | /* 110160 */ /*GILLT_v16s16*//*Label 2343*/ GIMT_Encode4(111115), GIMT_Encode4(0), GIMT_Encode4(0), |
| 39116 | /* 110172 */ /*GILLT_v32s8*//*Label 2344*/ GIMT_Encode4(111142), |
| 39117 | /* 110176 */ // Label 2337: @110176 |
| 39118 | /* 110176 */ GIM_Try, /*On fail goto*//*Label 2346*/ GIMT_Encode4(110251), // Rule ID 19432 // |
| 39119 | /* 110181 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39120 | /* 110184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39121 | /* 110188 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39122 | /* 110192 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 39123 | /* 110196 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 39124 | /* 110200 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 39125 | /* 110205 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39126 | /* 110207 */ // (trunc:{ *:[i8] } (bitconvert:{ *:[i16] } VK16:{ *:[v16i1] }:$src)) => (EXTRACT_SUBREG:{ *:[i8] } (COPY_TO_REGCLASS:{ *:[i32] } VK16:{ *:[v16i1] }:$src, GR32:{ *:[i32] }), sub_8bit:{ *:[i32] }) |
| 39127 | /* 110207 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39128 | /* 110210 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39129 | /* 110214 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39130 | /* 110219 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 39131 | /* 110223 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 39132 | /* 110228 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39133 | /* 110231 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39134 | /* 110233 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_8bit), |
| 39135 | /* 110240 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 39136 | /* 110245 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39137 | /* 110250 */ // GIR_Coverage, 19432, |
| 39138 | /* 110250 */ GIR_EraseRootFromParent_Done, |
| 39139 | /* 110251 */ // Label 2346: @110251 |
| 39140 | /* 110251 */ GIM_Try, /*On fail goto*//*Label 2347*/ GIMT_Encode4(110314), // Rule ID 22652 // |
| 39141 | /* 110256 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode), |
| 39142 | /* 110259 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 39143 | /* 110262 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 39144 | /* 110266 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39145 | /* 110270 */ // (trunc:{ *:[i8] } GR32:{ *:[i32] }:$src) => (EXTRACT_SUBREG:{ *:[i8] } (COPY_TO_REGCLASS:{ *:[i32] } GR32:{ *:[i32] }:$src, GR32_ABCD:{ *:[i32] }), sub_8bit:{ *:[i32] }) |
| 39146 | /* 110270 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39147 | /* 110273 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39148 | /* 110277 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39149 | /* 110282 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39150 | /* 110286 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR32_ABCDRegClassID), |
| 39151 | /* 110291 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39152 | /* 110294 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39153 | /* 110296 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_8bit), |
| 39154 | /* 110303 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 39155 | /* 110308 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32_ABCDRegClassID), |
| 39156 | /* 110313 */ // GIR_Coverage, 22652, |
| 39157 | /* 110313 */ GIR_EraseRootFromParent_Done, |
| 39158 | /* 110314 */ // Label 2347: @110314 |
| 39159 | /* 110314 */ GIM_Try, /*On fail goto*//*Label 2348*/ GIMT_Encode4(110377), // Rule ID 22653 // |
| 39160 | /* 110319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode), |
| 39161 | /* 110322 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39162 | /* 110325 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 39163 | /* 110329 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39164 | /* 110333 */ // (trunc:{ *:[i8] } GR16:{ *:[i16] }:$src) => (EXTRACT_SUBREG:{ *:[i8] } (COPY_TO_REGCLASS:{ *:[i16] } GR16:{ *:[i16] }:$src, GR16_ABCD:{ *:[i32] }), sub_8bit:{ *:[i32] }) |
| 39165 | /* 110333 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 39166 | /* 110336 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39167 | /* 110340 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39168 | /* 110345 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39169 | /* 110349 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16_ABCDRegClassID), |
| 39170 | /* 110354 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39171 | /* 110357 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39172 | /* 110359 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_8bit), |
| 39173 | /* 110366 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 39174 | /* 110371 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR16_ABCDRegClassID), |
| 39175 | /* 110376 */ // GIR_Coverage, 22653, |
| 39176 | /* 110376 */ GIR_EraseRootFromParent_Done, |
| 39177 | /* 110377 */ // Label 2348: @110377 |
| 39178 | /* 110377 */ GIM_Try, /*On fail goto*//*Label 2349*/ GIMT_Encode4(110418), // Rule ID 22657 // |
| 39179 | /* 110382 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 39180 | /* 110385 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 39181 | /* 110388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39182 | /* 110392 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39183 | /* 110396 */ // (trunc:{ *:[i8] } GR32:{ *:[i32] }:$src) => (EXTRACT_SUBREG:{ *:[i8] } GR32:{ *:[i32] }:$src, sub_8bit:{ *:[i32] }) |
| 39184 | /* 110396 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39185 | /* 110399 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39186 | /* 110401 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src |
| 39187 | /* 110407 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 39188 | /* 110412 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39189 | /* 110417 */ // GIR_Coverage, 22657, |
| 39190 | /* 110417 */ GIR_EraseRootFromParent_Done, |
| 39191 | /* 110418 */ // Label 2349: @110418 |
| 39192 | /* 110418 */ GIM_Try, /*On fail goto*//*Label 2350*/ GIMT_Encode4(110459), // Rule ID 22658 // |
| 39193 | /* 110423 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 39194 | /* 110426 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39195 | /* 110429 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39196 | /* 110433 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39197 | /* 110437 */ // (trunc:{ *:[i8] } GR16:{ *:[i16] }:$src) => (EXTRACT_SUBREG:{ *:[i8] } GR16:{ *:[i16] }:$src, sub_8bit:{ *:[i32] }) |
| 39198 | /* 110437 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39199 | /* 110440 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39200 | /* 110442 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src |
| 39201 | /* 110448 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 39202 | /* 110453 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 39203 | /* 110458 */ // GIR_Coverage, 22658, |
| 39204 | /* 110458 */ GIR_EraseRootFromParent_Done, |
| 39205 | /* 110459 */ // Label 2350: @110459 |
| 39206 | /* 110459 */ GIM_Reject, |
| 39207 | /* 110460 */ // Label 2338: @110460 |
| 39208 | /* 110460 */ GIM_Try, /*On fail goto*//*Label 2351*/ GIMT_Encode4(110498), // Rule ID 22651 // |
| 39209 | /* 110465 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 39210 | /* 110468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39211 | /* 110472 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39212 | /* 110476 */ // (trunc:{ *:[i16] } GR32:{ *:[i32] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } GR32:{ *:[i32] }:$src, sub_16bit:{ *:[i32] }) |
| 39213 | /* 110476 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39214 | /* 110479 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39215 | /* 110481 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(4), // src |
| 39216 | /* 110487 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 39217 | /* 110492 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39218 | /* 110497 */ // GIR_Coverage, 22651, |
| 39219 | /* 110497 */ GIR_EraseRootFromParent_Done, |
| 39220 | /* 110498 */ // Label 2351: @110498 |
| 39221 | /* 110498 */ GIM_Reject, |
| 39222 | /* 110499 */ // Label 2339: @110499 |
| 39223 | /* 110499 */ GIM_Try, /*On fail goto*//*Label 2352*/ GIMT_Encode4(110638), |
| 39224 | /* 110504 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 39225 | /* 110507 */ GIM_Try, /*On fail goto*//*Label 2353*/ GIMT_Encode4(110530), // Rule ID 12262 // |
| 39226 | /* 110512 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 39227 | /* 110515 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39228 | /* 110519 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39229 | /* 110523 */ // (trunc:{ *:[v4i32] } VR256X:{ *:[v4i64] }:$src) => (VPMOVQDZ256rr:{ *:[v4i32] } VR256X:{ *:[v4i64] }:$src) |
| 39230 | /* 110523 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVQDZ256rr), |
| 39231 | /* 110528 */ GIR_RootConstrainSelectedInstOperands, |
| 39232 | /* 110529 */ // GIR_Coverage, 12262, |
| 39233 | /* 110529 */ GIR_Done, |
| 39234 | /* 110530 */ // Label 2353: @110530 |
| 39235 | /* 110530 */ GIM_Try, /*On fail goto*//*Label 2354*/ GIMT_Encode4(110637), // Rule ID 21557 // |
| 39236 | /* 110535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 39237 | /* 110538 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 39238 | /* 110542 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39239 | /* 110546 */ // (trunc:{ *:[v4i32] } VR256X:{ *:[v4i64] }:$src) => (EXTRACT_SUBREG:{ *:[v4i32] } (VPMOVQDZrr:{ *:[v8i32] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src, sub_ymm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 39240 | /* 110546 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 39241 | /* 110549 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 39242 | /* 110553 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39243 | /* 110558 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 39244 | /* 110560 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 39245 | /* 110563 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 39246 | /* 110567 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39247 | /* 110572 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 39248 | /* 110575 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39249 | /* 110579 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 39250 | /* 110582 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 39251 | /* 110587 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 39252 | /* 110592 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 39253 | /* 110597 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 39254 | /* 110600 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVQDZrr), |
| 39255 | /* 110604 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39256 | /* 110609 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 39257 | /* 110612 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39258 | /* 110614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39259 | /* 110617 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39260 | /* 110619 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 39261 | /* 110626 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 39262 | /* 110631 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256XRegClassID), |
| 39263 | /* 110636 */ // GIR_Coverage, 21557, |
| 39264 | /* 110636 */ GIR_EraseRootFromParent_Done, |
| 39265 | /* 110637 */ // Label 2354: @110637 |
| 39266 | /* 110637 */ GIM_Reject, |
| 39267 | /* 110638 */ // Label 2352: @110638 |
| 39268 | /* 110638 */ GIM_Reject, |
| 39269 | /* 110639 */ // Label 2340: @110639 |
| 39270 | /* 110639 */ GIM_Try, /*On fail goto*//*Label 2355*/ GIMT_Encode4(110665), // Rule ID 12238 // |
| 39271 | /* 110644 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39272 | /* 110647 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 39273 | /* 110650 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39274 | /* 110654 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39275 | /* 110658 */ // (trunc:{ *:[v8i16] } VR512:{ *:[v8i64] }:$src) => (VPMOVQWZrr:{ *:[v8i16] } VR512:{ *:[v8i64] }:$src) |
| 39276 | /* 110658 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVQWZrr), |
| 39277 | /* 110663 */ GIR_RootConstrainSelectedInstOperands, |
| 39278 | /* 110664 */ // GIR_Coverage, 12238, |
| 39279 | /* 110664 */ GIR_Done, |
| 39280 | /* 110665 */ // Label 2355: @110665 |
| 39281 | /* 110665 */ GIM_Try, /*On fail goto*//*Label 2356*/ GIMT_Encode4(110691), // Rule ID 12316 // |
| 39282 | /* 110670 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 39283 | /* 110673 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 39284 | /* 110676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39285 | /* 110680 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39286 | /* 110684 */ // (trunc:{ *:[v8i16] } VR256X:{ *:[v8i32] }:$src) => (VPMOVDWZ256rr:{ *:[v8i16] } VR256X:{ *:[v8i32] }:$src) |
| 39287 | /* 110684 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVDWZ256rr), |
| 39288 | /* 110689 */ GIR_RootConstrainSelectedInstOperands, |
| 39289 | /* 110690 */ // GIR_Coverage, 12316, |
| 39290 | /* 110690 */ GIR_Done, |
| 39291 | /* 110691 */ // Label 2356: @110691 |
| 39292 | /* 110691 */ GIM_Try, /*On fail goto*//*Label 2357*/ GIMT_Encode4(110801), // Rule ID 21556 // |
| 39293 | /* 110696 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 39294 | /* 110699 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 39295 | /* 110702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 39296 | /* 110706 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39297 | /* 110710 */ // (trunc:{ *:[v8i16] } VR256X:{ *:[v8i32] }:$src) => (EXTRACT_SUBREG:{ *:[v8i16] } (VPMOVDWZrr:{ *:[v16i16] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src, sub_ymm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 39298 | /* 110710 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 39299 | /* 110713 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 39300 | /* 110717 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39301 | /* 110722 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 39302 | /* 110724 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 39303 | /* 110727 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 39304 | /* 110731 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39305 | /* 110736 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 39306 | /* 110739 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39307 | /* 110743 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 39308 | /* 110746 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 39309 | /* 110751 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 39310 | /* 110756 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 39311 | /* 110761 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s16, |
| 39312 | /* 110764 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVDWZrr), |
| 39313 | /* 110768 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39314 | /* 110773 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 39315 | /* 110776 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39316 | /* 110778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39317 | /* 110781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39318 | /* 110783 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 39319 | /* 110790 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 39320 | /* 110795 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256XRegClassID), |
| 39321 | /* 110800 */ // GIR_Coverage, 21556, |
| 39322 | /* 110800 */ GIR_EraseRootFromParent_Done, |
| 39323 | /* 110801 */ // Label 2357: @110801 |
| 39324 | /* 110801 */ GIM_Reject, |
| 39325 | /* 110802 */ // Label 2341: @110802 |
| 39326 | /* 110802 */ GIM_Try, /*On fail goto*//*Label 2358*/ GIMT_Encode4(110828), // Rule ID 12265 // |
| 39327 | /* 110807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39328 | /* 110810 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 39329 | /* 110813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39330 | /* 110817 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39331 | /* 110821 */ // (trunc:{ *:[v8i32] } VR512:{ *:[v8i64] }:$src) => (VPMOVQDZrr:{ *:[v8i32] } VR512:{ *:[v8i64] }:$src) |
| 39332 | /* 110821 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVQDZrr), |
| 39333 | /* 110826 */ GIR_RootConstrainSelectedInstOperands, |
| 39334 | /* 110827 */ // GIR_Coverage, 12265, |
| 39335 | /* 110827 */ GIR_Done, |
| 39336 | /* 110828 */ // Label 2358: @110828 |
| 39337 | /* 110828 */ GIM_Reject, |
| 39338 | /* 110829 */ // Label 2342: @110829 |
| 39339 | /* 110829 */ GIM_Try, /*On fail goto*//*Label 2359*/ GIMT_Encode4(110905), // Rule ID 21650 // |
| 39340 | /* 110834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoBWI), |
| 39341 | /* 110837 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 39342 | /* 110840 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39343 | /* 110844 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39344 | /* 110848 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39345 | /* 110852 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39346 | /* 110855 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39347 | /* 110859 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39348 | /* 110863 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39349 | /* 110865 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39350 | /* 110872 */ // (trunc:{ *:[v16i8] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVDBZrr:{ *:[v16i8] } (VPMOVZXWDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)) |
| 39351 | /* 110872 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 39352 | /* 110875 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZrm), |
| 39353 | /* 110879 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39354 | /* 110884 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 39355 | /* 110888 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39356 | /* 110893 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39357 | /* 110895 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVDBZrr), |
| 39358 | /* 110898 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39359 | /* 110900 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39360 | /* 110903 */ GIR_RootConstrainSelectedInstOperands, |
| 39361 | /* 110904 */ // GIR_Coverage, 21650, |
| 39362 | /* 110904 */ GIR_EraseRootFromParent_Done, |
| 39363 | /* 110905 */ // Label 2359: @110905 |
| 39364 | /* 110905 */ GIM_Try, /*On fail goto*//*Label 2360*/ GIMT_Encode4(110931), // Rule ID 12292 // |
| 39365 | /* 110910 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39366 | /* 110913 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 39367 | /* 110916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39368 | /* 110920 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39369 | /* 110924 */ // (trunc:{ *:[v16i8] } VR512:{ *:[v16i32] }:$src) => (VPMOVDBZrr:{ *:[v16i8] } VR512:{ *:[v16i32] }:$src) |
| 39370 | /* 110924 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVDBZrr), |
| 39371 | /* 110929 */ GIR_RootConstrainSelectedInstOperands, |
| 39372 | /* 110930 */ // GIR_Coverage, 12292, |
| 39373 | /* 110930 */ GIR_Done, |
| 39374 | /* 110931 */ // Label 2360: @110931 |
| 39375 | /* 110931 */ GIM_Try, /*On fail goto*//*Label 2361*/ GIMT_Encode4(110957), // Rule ID 12343 // |
| 39376 | /* 110936 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 39377 | /* 110939 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 39378 | /* 110942 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39379 | /* 110946 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39380 | /* 110950 */ // (trunc:{ *:[v16i8] } VR256X:{ *:[v16i16] }:$src) => (VPMOVWBZ256rr:{ *:[v16i8] } VR256X:{ *:[v16i16] }:$src) |
| 39381 | /* 110950 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVWBZ256rr), |
| 39382 | /* 110955 */ GIR_RootConstrainSelectedInstOperands, |
| 39383 | /* 110956 */ // GIR_Coverage, 12343, |
| 39384 | /* 110956 */ GIR_Done, |
| 39385 | /* 110957 */ // Label 2361: @110957 |
| 39386 | /* 110957 */ GIM_Try, /*On fail goto*//*Label 2362*/ GIMT_Encode4(111067), // Rule ID 21558 // |
| 39387 | /* 110962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 39388 | /* 110965 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 39389 | /* 110968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 39390 | /* 110972 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39391 | /* 110976 */ // (trunc:{ *:[v16i8] } VR256X:{ *:[v16i16] }:$src) => (EXTRACT_SUBREG:{ *:[v16i8] } (VPMOVWBZrr:{ *:[v32i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src, sub_ymm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 39392 | /* 110976 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 39393 | /* 110979 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 39394 | /* 110983 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39395 | /* 110988 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 39396 | /* 110990 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 39397 | /* 110993 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 39398 | /* 110997 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39399 | /* 111002 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 39400 | /* 111005 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39401 | /* 111009 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 39402 | /* 111012 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 39403 | /* 111017 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 39404 | /* 111022 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 39405 | /* 111027 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s8, |
| 39406 | /* 111030 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVWBZrr), |
| 39407 | /* 111034 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39408 | /* 111039 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 39409 | /* 111042 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39410 | /* 111044 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39411 | /* 111047 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39412 | /* 111049 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 39413 | /* 111056 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 39414 | /* 111061 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256XRegClassID), |
| 39415 | /* 111066 */ // GIR_Coverage, 21558, |
| 39416 | /* 111066 */ GIR_EraseRootFromParent_Done, |
| 39417 | /* 111067 */ // Label 2362: @111067 |
| 39418 | /* 111067 */ GIM_Try, /*On fail goto*//*Label 2363*/ GIMT_Encode4(111114), // Rule ID 21649 // |
| 39419 | /* 111072 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoBWI), |
| 39420 | /* 111075 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 39421 | /* 111078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39422 | /* 111082 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39423 | /* 111086 */ // (trunc:{ *:[v16i8] } VR256X:{ *:[v16i16] }:$src) => (VPMOVDBZrr:{ *:[v16i8] } (VPMOVZXWDZrr:{ *:[v16i32] } VR256X:{ *:[v16i16] }:$src)) |
| 39424 | /* 111086 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 39425 | /* 111089 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZrr), |
| 39426 | /* 111093 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39427 | /* 111098 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39428 | /* 111102 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39429 | /* 111104 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVDBZrr), |
| 39430 | /* 111107 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39431 | /* 111109 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39432 | /* 111112 */ GIR_RootConstrainSelectedInstOperands, |
| 39433 | /* 111113 */ // GIR_Coverage, 21649, |
| 39434 | /* 111113 */ GIR_EraseRootFromParent_Done, |
| 39435 | /* 111114 */ // Label 2363: @111114 |
| 39436 | /* 111114 */ GIM_Reject, |
| 39437 | /* 111115 */ // Label 2343: @111115 |
| 39438 | /* 111115 */ GIM_Try, /*On fail goto*//*Label 2364*/ GIMT_Encode4(111141), // Rule ID 12319 // |
| 39439 | /* 111120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39440 | /* 111123 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 39441 | /* 111126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39442 | /* 111130 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39443 | /* 111134 */ // (trunc:{ *:[v16i16] } VR512:{ *:[v16i32] }:$src) => (VPMOVDWZrr:{ *:[v16i16] } VR512:{ *:[v16i32] }:$src) |
| 39444 | /* 111134 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVDWZrr), |
| 39445 | /* 111139 */ GIR_RootConstrainSelectedInstOperands, |
| 39446 | /* 111140 */ // GIR_Coverage, 12319, |
| 39447 | /* 111140 */ GIR_Done, |
| 39448 | /* 111141 */ // Label 2364: @111141 |
| 39449 | /* 111141 */ GIM_Reject, |
| 39450 | /* 111142 */ // Label 2344: @111142 |
| 39451 | /* 111142 */ GIM_Try, /*On fail goto*//*Label 2365*/ GIMT_Encode4(111168), // Rule ID 12346 // |
| 39452 | /* 111147 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 39453 | /* 111150 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 39454 | /* 111153 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39455 | /* 111157 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39456 | /* 111161 */ // (trunc:{ *:[v32i8] } VR512:{ *:[v32i16] }:$src) => (VPMOVWBZrr:{ *:[v32i8] } VR512:{ *:[v32i16] }:$src) |
| 39457 | /* 111161 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVWBZrr), |
| 39458 | /* 111166 */ GIR_RootConstrainSelectedInstOperands, |
| 39459 | /* 111167 */ // GIR_Coverage, 12346, |
| 39460 | /* 111167 */ GIR_Done, |
| 39461 | /* 111168 */ // Label 2365: @111168 |
| 39462 | /* 111168 */ GIM_Reject, |
| 39463 | /* 111169 */ // Label 2345: @111169 |
| 39464 | /* 111169 */ GIM_Reject, |
| 39465 | /* 111170 */ // Label 21: @111170 |
| 39466 | /* 111170 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 2370*/ GIMT_Encode4(111775), |
| 39467 | /* 111181 */ /*GILLT_s8*//*Label 2366*/ GIMT_Encode4(111197), |
| 39468 | /* 111185 */ /*GILLT_s16*//*Label 2367*/ GIMT_Encode4(111279), |
| 39469 | /* 111189 */ /*GILLT_s32*//*Label 2368*/ GIMT_Encode4(111479), |
| 39470 | /* 111193 */ /*GILLT_s64*//*Label 2369*/ GIMT_Encode4(111621), |
| 39471 | /* 111197 */ // Label 2366: @111197 |
| 39472 | /* 111197 */ GIM_Try, /*On fail goto*//*Label 2371*/ GIMT_Encode4(111278), |
| 39473 | /* 111202 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39474 | /* 111206 */ GIM_Try, /*On fail goto*//*Label 2372*/ GIMT_Encode4(111262), // Rule ID 22384 // |
| 39475 | /* 111211 */ // MIs[0] Operand 1 |
| 39476 | /* 111211 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(0), |
| 39477 | /* 111222 */ // 0:{ *:[i8] } => (EXTRACT_SUBREG:{ *:[i8] } (MOV32r0:{ *:[i32] }:{ *:[i32] }), sub_8bit:{ *:[i32] }) |
| 39478 | /* 111222 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39479 | /* 111225 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32r0), |
| 39480 | /* 111229 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39481 | /* 111234 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 39482 | /* 111237 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39483 | /* 111239 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39484 | /* 111242 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39485 | /* 111244 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_8bit), |
| 39486 | /* 111251 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 39487 | /* 111256 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39488 | /* 111261 */ // GIR_Coverage, 22384, |
| 39489 | /* 111261 */ GIR_EraseRootFromParent_Done, |
| 39490 | /* 111262 */ // Label 2372: @111262 |
| 39491 | /* 111262 */ GIM_Try, /*On fail goto*//*Label 2373*/ GIMT_Encode4(111277), // Rule ID 19 // |
| 39492 | /* 111267 */ // MIs[0] Operand 1 |
| 39493 | /* 111267 */ // No operand predicates |
| 39494 | /* 111267 */ // (imm:{ *:[i8] }):$src => (MOV8ri:{ *:[i8] } (imm:{ *:[i8] }):$src) |
| 39495 | /* 111267 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8ri), |
| 39496 | /* 111270 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39497 | /* 111272 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 39498 | /* 111275 */ GIR_RootConstrainSelectedInstOperands, |
| 39499 | /* 111276 */ // GIR_Coverage, 19, |
| 39500 | /* 111276 */ GIR_EraseRootFromParent_Done, |
| 39501 | /* 111277 */ // Label 2373: @111277 |
| 39502 | /* 111277 */ GIM_Reject, |
| 39503 | /* 111278 */ // Label 2371: @111278 |
| 39504 | /* 111278 */ GIM_Reject, |
| 39505 | /* 111279 */ // Label 2367: @111279 |
| 39506 | /* 111279 */ GIM_Try, /*On fail goto*//*Label 2374*/ GIMT_Encode4(111478), |
| 39507 | /* 111284 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39508 | /* 111288 */ GIM_Try, /*On fail goto*//*Label 2375*/ GIMT_Encode4(111344), // Rule ID 22385 // |
| 39509 | /* 111293 */ // MIs[0] Operand 1 |
| 39510 | /* 111293 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(0), |
| 39511 | /* 111304 */ // 0:{ *:[i16] } => (EXTRACT_SUBREG:{ *:[i16] } (MOV32r0:{ *:[i32] }:{ *:[i32] }), sub_16bit:{ *:[i32] }) |
| 39512 | /* 111304 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39513 | /* 111307 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32r0), |
| 39514 | /* 111311 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39515 | /* 111316 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 39516 | /* 111319 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39517 | /* 111321 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39518 | /* 111324 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39519 | /* 111326 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 39520 | /* 111333 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 39521 | /* 111338 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39522 | /* 111343 */ // GIR_Coverage, 22385, |
| 39523 | /* 111343 */ GIR_EraseRootFromParent_Done, |
| 39524 | /* 111344 */ // Label 2375: @111344 |
| 39525 | /* 111344 */ GIM_Try, /*On fail goto*//*Label 2376*/ GIMT_Encode4(111403), // Rule ID 22387 // |
| 39526 | /* 111349 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode_OptForSize), |
| 39527 | /* 111352 */ // MIs[0] Operand 1 |
| 39528 | /* 111352 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(1), |
| 39529 | /* 111363 */ // 1:{ *:[i16] } => (EXTRACT_SUBREG:{ *:[i16] } (MOV32r1:{ *:[i32] }:{ *:[i32] }), sub_16bit:{ *:[i32] }) |
| 39530 | /* 111363 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39531 | /* 111366 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32r1), |
| 39532 | /* 111370 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39533 | /* 111375 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 39534 | /* 111378 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39535 | /* 111380 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39536 | /* 111383 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39537 | /* 111385 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 39538 | /* 111392 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 39539 | /* 111397 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39540 | /* 111402 */ // GIR_Coverage, 22387, |
| 39541 | /* 111402 */ GIR_EraseRootFromParent_Done, |
| 39542 | /* 111403 */ // Label 2376: @111403 |
| 39543 | /* 111403 */ GIM_Try, /*On fail goto*//*Label 2377*/ GIMT_Encode4(111462), // Rule ID 22388 // |
| 39544 | /* 111408 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode_OptForSize), |
| 39545 | /* 111411 */ // MIs[0] Operand 1 |
| 39546 | /* 111411 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(-1), |
| 39547 | /* 111422 */ // -1:{ *:[i16] } => (EXTRACT_SUBREG:{ *:[i16] } (MOV32r_1:{ *:[i32] }:{ *:[i32] }), sub_16bit:{ *:[i32] }) |
| 39548 | /* 111422 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39549 | /* 111425 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32r_1), |
| 39550 | /* 111429 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39551 | /* 111434 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 39552 | /* 111437 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39553 | /* 111439 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39554 | /* 111442 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39555 | /* 111444 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 39556 | /* 111451 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 39557 | /* 111456 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39558 | /* 111461 */ // GIR_Coverage, 22388, |
| 39559 | /* 111461 */ GIR_EraseRootFromParent_Done, |
| 39560 | /* 111462 */ // Label 2377: @111462 |
| 39561 | /* 111462 */ GIM_Try, /*On fail goto*//*Label 2378*/ GIMT_Encode4(111477), // Rule ID 20 // |
| 39562 | /* 111467 */ // MIs[0] Operand 1 |
| 39563 | /* 111467 */ // No operand predicates |
| 39564 | /* 111467 */ // (imm:{ *:[i16] }):$src => (MOV16ri:{ *:[i16] } (imm:{ *:[i16] }):$src) |
| 39565 | /* 111467 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16ri), |
| 39566 | /* 111470 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39567 | /* 111472 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 39568 | /* 111475 */ GIR_RootConstrainSelectedInstOperands, |
| 39569 | /* 111476 */ // GIR_Coverage, 20, |
| 39570 | /* 111476 */ GIR_EraseRootFromParent_Done, |
| 39571 | /* 111477 */ // Label 2378: @111477 |
| 39572 | /* 111477 */ GIM_Reject, |
| 39573 | /* 111478 */ // Label 2374: @111478 |
| 39574 | /* 111478 */ GIM_Reject, |
| 39575 | /* 111479 */ // Label 2368: @111479 |
| 39576 | /* 111479 */ GIM_Try, /*On fail goto*//*Label 2379*/ GIMT_Encode4(111509), // Rule ID 17153 // |
| 39577 | /* 111484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39578 | /* 111488 */ // MIs[0] Operand 1 |
| 39579 | /* 111488 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(0), |
| 39580 | /* 111499 */ // 0:{ *:[i32] } => (MOV32r0:{ *:[i32] }:{ *:[i32] }) |
| 39581 | /* 111499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32r0), |
| 39582 | /* 111502 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39583 | /* 111504 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 39584 | /* 111507 */ GIR_RootConstrainSelectedInstOperands, |
| 39585 | /* 111508 */ // GIR_Coverage, 17153, |
| 39586 | /* 111508 */ GIR_EraseRootFromParent_Done, |
| 39587 | /* 111509 */ // Label 2379: @111509 |
| 39588 | /* 111509 */ GIM_Try, /*On fail goto*//*Label 2380*/ GIMT_Encode4(111542), // Rule ID 17154 // |
| 39589 | /* 111514 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode_OptForSize), |
| 39590 | /* 111517 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39591 | /* 111521 */ // MIs[0] Operand 1 |
| 39592 | /* 111521 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(1), |
| 39593 | /* 111532 */ // 1:{ *:[i32] } => (MOV32r1:{ *:[i32] }:{ *:[i32] }) |
| 39594 | /* 111532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32r1), |
| 39595 | /* 111535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39596 | /* 111537 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 39597 | /* 111540 */ GIR_RootConstrainSelectedInstOperands, |
| 39598 | /* 111541 */ // GIR_Coverage, 17154, |
| 39599 | /* 111541 */ GIR_EraseRootFromParent_Done, |
| 39600 | /* 111542 */ // Label 2380: @111542 |
| 39601 | /* 111542 */ GIM_Try, /*On fail goto*//*Label 2381*/ GIMT_Encode4(111575), // Rule ID 17155 // |
| 39602 | /* 111547 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode_OptForSize), |
| 39603 | /* 111550 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39604 | /* 111554 */ // MIs[0] Operand 1 |
| 39605 | /* 111554 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(-1), |
| 39606 | /* 111565 */ // -1:{ *:[i32] } => (MOV32r_1:{ *:[i32] }:{ *:[i32] }) |
| 39607 | /* 111565 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32r_1), |
| 39608 | /* 111568 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39609 | /* 111570 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 39610 | /* 111573 */ GIR_RootConstrainSelectedInstOperands, |
| 39611 | /* 111574 */ // GIR_Coverage, 17155, |
| 39612 | /* 111574 */ GIR_EraseRootFromParent_Done, |
| 39613 | /* 111575 */ // Label 2381: @111575 |
| 39614 | /* 111575 */ GIM_Try, /*On fail goto*//*Label 2382*/ GIMT_Encode4(111601), // Rule ID 17156 // |
| 39615 | /* 111580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotWin64WithoutFP_OptForMinSize), |
| 39616 | /* 111583 */ GIM_CheckI64ImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i32immSExt8), |
| 39617 | /* 111587 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39618 | /* 111591 */ // MIs[0] Operand 1 |
| 39619 | /* 111591 */ // No operand predicates |
| 39620 | /* 111591 */ // (imm:{ *:[i32] })<<P:Predicate_i32immSExt8>>:$src => (MOV32ImmSExti8:{ *:[i32] } (imm:{ *:[i32] }):$src) |
| 39621 | /* 111591 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32ImmSExti8), |
| 39622 | /* 111594 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39623 | /* 111596 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 39624 | /* 111599 */ GIR_RootConstrainSelectedInstOperands, |
| 39625 | /* 111600 */ // GIR_Coverage, 17156, |
| 39626 | /* 111600 */ GIR_EraseRootFromParent_Done, |
| 39627 | /* 111601 */ // Label 2382: @111601 |
| 39628 | /* 111601 */ GIM_Try, /*On fail goto*//*Label 2383*/ GIMT_Encode4(111620), // Rule ID 21 // |
| 39629 | /* 111606 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39630 | /* 111610 */ // MIs[0] Operand 1 |
| 39631 | /* 111610 */ // No operand predicates |
| 39632 | /* 111610 */ // (imm:{ *:[i32] }):$src => (MOV32ri:{ *:[i32] } (imm:{ *:[i32] }):$src) |
| 39633 | /* 111610 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32ri), |
| 39634 | /* 111613 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39635 | /* 111615 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 39636 | /* 111618 */ GIR_RootConstrainSelectedInstOperands, |
| 39637 | /* 111619 */ // GIR_Coverage, 21, |
| 39638 | /* 111619 */ GIR_EraseRootFromParent_Done, |
| 39639 | /* 111620 */ // Label 2383: @111620 |
| 39640 | /* 111620 */ GIM_Reject, |
| 39641 | /* 111621 */ // Label 2369: @111621 |
| 39642 | /* 111621 */ GIM_Try, /*On fail goto*//*Label 2384*/ GIMT_Encode4(111683), // Rule ID 22386 // |
| 39643 | /* 111626 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39644 | /* 111630 */ // MIs[0] Operand 1 |
| 39645 | /* 111630 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(0), |
| 39646 | /* 111641 */ // 0:{ *:[i64] } => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOV32r0:{ *:[i32] }:{ *:[i32] }), sub_32bit:{ *:[i32] }) |
| 39647 | /* 111641 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39648 | /* 111644 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32r0), |
| 39649 | /* 111648 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39650 | /* 111653 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 39651 | /* 111656 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39652 | /* 111658 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39653 | /* 111661 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39654 | /* 111663 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 39655 | /* 111666 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39656 | /* 111669 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 39657 | /* 111672 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 39658 | /* 111677 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 39659 | /* 111682 */ // GIR_Coverage, 22386, |
| 39660 | /* 111682 */ GIR_EraseRootFromParent_Done, |
| 39661 | /* 111683 */ // Label 2384: @111683 |
| 39662 | /* 111683 */ GIM_Try, /*On fail goto*//*Label 2385*/ GIMT_Encode4(111709), // Rule ID 17157 // |
| 39663 | /* 111688 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotWin64WithoutFP_OptForMinSize), |
| 39664 | /* 111691 */ GIM_CheckI64ImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt8), |
| 39665 | /* 111695 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39666 | /* 111699 */ // MIs[0] Operand 1 |
| 39667 | /* 111699 */ // No operand predicates |
| 39668 | /* 111699 */ // (imm:{ *:[i64] })<<P:Predicate_i64immSExt8>>:$src => (MOV64ImmSExti8:{ *:[i64] } (imm:{ *:[i64] }):$src) |
| 39669 | /* 111699 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64ImmSExti8), |
| 39670 | /* 111702 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39671 | /* 111704 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 39672 | /* 111707 */ GIR_RootConstrainSelectedInstOperands, |
| 39673 | /* 111708 */ // GIR_Coverage, 17157, |
| 39674 | /* 111708 */ GIR_EraseRootFromParent_Done, |
| 39675 | /* 111709 */ // Label 2385: @111709 |
| 39676 | /* 111709 */ GIM_Try, /*On fail goto*//*Label 2386*/ GIMT_Encode4(111732), // Rule ID 17158 // |
| 39677 | /* 111714 */ GIM_CheckI64ImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immZExt32), |
| 39678 | /* 111718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39679 | /* 111722 */ // MIs[0] Operand 1 |
| 39680 | /* 111722 */ // No operand predicates |
| 39681 | /* 111722 */ // (imm:{ *:[i64] })<<P:Predicate_i64immZExt32>>:$src => (MOV32ri64:{ *:[i64] } (imm:{ *:[i64] }):$src) |
| 39682 | /* 111722 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32ri64), |
| 39683 | /* 111725 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39684 | /* 111727 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 39685 | /* 111730 */ GIR_RootConstrainSelectedInstOperands, |
| 39686 | /* 111731 */ // GIR_Coverage, 17158, |
| 39687 | /* 111731 */ GIR_EraseRootFromParent_Done, |
| 39688 | /* 111732 */ // Label 2386: @111732 |
| 39689 | /* 111732 */ GIM_Try, /*On fail goto*//*Label 2387*/ GIMT_Encode4(111755), // Rule ID 22 // |
| 39690 | /* 111737 */ GIM_CheckI64ImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 39691 | /* 111741 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39692 | /* 111745 */ // MIs[0] Operand 1 |
| 39693 | /* 111745 */ // No operand predicates |
| 39694 | /* 111745 */ // (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src => (MOV64ri32:{ *:[i64] } (imm:{ *:[i64] }):$src) |
| 39695 | /* 111745 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64ri32), |
| 39696 | /* 111748 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39697 | /* 111750 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 39698 | /* 111753 */ GIR_RootConstrainSelectedInstOperands, |
| 39699 | /* 111754 */ // GIR_Coverage, 22, |
| 39700 | /* 111754 */ GIR_EraseRootFromParent_Done, |
| 39701 | /* 111755 */ // Label 2387: @111755 |
| 39702 | /* 111755 */ GIM_Try, /*On fail goto*//*Label 2388*/ GIMT_Encode4(111774), // Rule ID 23 // |
| 39703 | /* 111760 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39704 | /* 111764 */ // MIs[0] Operand 1 |
| 39705 | /* 111764 */ // No operand predicates |
| 39706 | /* 111764 */ // (imm:{ *:[i64] }):$src => (MOV64ri:{ *:[i64] } (imm:{ *:[i64] }):$src) |
| 39707 | /* 111764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64ri), |
| 39708 | /* 111767 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39709 | /* 111769 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 39710 | /* 111772 */ GIR_RootConstrainSelectedInstOperands, |
| 39711 | /* 111773 */ // GIR_Coverage, 23, |
| 39712 | /* 111773 */ GIR_EraseRootFromParent_Done, |
| 39713 | /* 111774 */ // Label 2388: @111774 |
| 39714 | /* 111774 */ GIM_Reject, |
| 39715 | /* 111775 */ // Label 2370: @111775 |
| 39716 | /* 111775 */ GIM_Reject, |
| 39717 | /* 111776 */ // Label 22: @111776 |
| 39718 | /* 111776 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(6), /*)*//*default:*//*Label 2392*/ GIMT_Encode4(112228), |
| 39719 | /* 111787 */ /*GILLT_s32*//*Label 2389*/ GIMT_Encode4(111799), |
| 39720 | /* 111791 */ /*GILLT_s64*//*Label 2390*/ GIMT_Encode4(111944), |
| 39721 | /* 111795 */ /*GILLT_s80*//*Label 2391*/ GIMT_Encode4(112089), |
| 39722 | /* 111799 */ // Label 2389: @111799 |
| 39723 | /* 111799 */ GIM_Try, /*On fail goto*//*Label 2393*/ GIMT_Encode4(111825), // Rule ID 1116 // |
| 39724 | /* 111804 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 39725 | /* 111807 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm0), |
| 39726 | /* 111811 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 39727 | /* 111815 */ // MIs[0] Operand 1 |
| 39728 | /* 111815 */ // No operand predicates |
| 39729 | /* 111815 */ // (fpimm:{ *:[f32] })<<P:Predicate_fpimm0>> => (LD_Fp032:{ *:[f32] }:{ *:[i16] }) |
| 39730 | /* 111815 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp032), |
| 39731 | /* 111818 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39732 | /* 111820 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39733 | /* 111823 */ GIR_RootConstrainSelectedInstOperands, |
| 39734 | /* 111824 */ // GIR_Coverage, 1116, |
| 39735 | /* 111824 */ GIR_EraseRootFromParent_Done, |
| 39736 | /* 111825 */ // Label 2393: @111825 |
| 39737 | /* 111825 */ GIM_Try, /*On fail goto*//*Label 2394*/ GIMT_Encode4(111851), // Rule ID 1117 // |
| 39738 | /* 111830 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 39739 | /* 111833 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm1), |
| 39740 | /* 111837 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 39741 | /* 111841 */ // MIs[0] Operand 1 |
| 39742 | /* 111841 */ // No operand predicates |
| 39743 | /* 111841 */ // (fpimm:{ *:[f32] })<<P:Predicate_fpimm1>> => (LD_Fp132:{ *:[f32] }:{ *:[i16] }) |
| 39744 | /* 111841 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp132), |
| 39745 | /* 111844 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39746 | /* 111846 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39747 | /* 111849 */ GIR_RootConstrainSelectedInstOperands, |
| 39748 | /* 111850 */ // GIR_Coverage, 1117, |
| 39749 | /* 111850 */ GIR_EraseRootFromParent_Done, |
| 39750 | /* 111851 */ // Label 2394: @111851 |
| 39751 | /* 111851 */ GIM_Try, /*On fail goto*//*Label 2395*/ GIMT_Encode4(111897), // Rule ID 17720 // |
| 39752 | /* 111856 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 39753 | /* 111859 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg0), |
| 39754 | /* 111863 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 39755 | /* 111867 */ // MIs[0] Operand 1 |
| 39756 | /* 111867 */ // No operand predicates |
| 39757 | /* 111867 */ // (fpimm:{ *:[f32] })<<P:Predicate_fpimmneg0>> => (CHS_Fp32:{ *:[f32] }:{ *:[i16] } (LD_Fp032:{ *:[f32] }:{ *:[i16] })) |
| 39758 | /* 111867 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39759 | /* 111870 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp032), |
| 39760 | /* 111874 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39761 | /* 111879 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 39762 | /* 111882 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39763 | /* 111884 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp32), |
| 39764 | /* 111887 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39765 | /* 111889 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39766 | /* 111892 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39767 | /* 111895 */ GIR_RootConstrainSelectedInstOperands, |
| 39768 | /* 111896 */ // GIR_Coverage, 17720, |
| 39769 | /* 111896 */ GIR_EraseRootFromParent_Done, |
| 39770 | /* 111897 */ // Label 2395: @111897 |
| 39771 | /* 111897 */ GIM_Try, /*On fail goto*//*Label 2396*/ GIMT_Encode4(111943), // Rule ID 17721 // |
| 39772 | /* 111902 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 39773 | /* 111905 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg1), |
| 39774 | /* 111909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 39775 | /* 111913 */ // MIs[0] Operand 1 |
| 39776 | /* 111913 */ // No operand predicates |
| 39777 | /* 111913 */ // (fpimm:{ *:[f32] })<<P:Predicate_fpimmneg1>> => (CHS_Fp32:{ *:[f32] }:{ *:[i16] } (LD_Fp132:{ *:[f32] }:{ *:[i16] })) |
| 39778 | /* 111913 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39779 | /* 111916 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp132), |
| 39780 | /* 111920 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39781 | /* 111925 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 39782 | /* 111928 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39783 | /* 111930 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp32), |
| 39784 | /* 111933 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39785 | /* 111935 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39786 | /* 111938 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39787 | /* 111941 */ GIR_RootConstrainSelectedInstOperands, |
| 39788 | /* 111942 */ // GIR_Coverage, 17721, |
| 39789 | /* 111942 */ GIR_EraseRootFromParent_Done, |
| 39790 | /* 111943 */ // Label 2396: @111943 |
| 39791 | /* 111943 */ GIM_Reject, |
| 39792 | /* 111944 */ // Label 2390: @111944 |
| 39793 | /* 111944 */ GIM_Try, /*On fail goto*//*Label 2397*/ GIMT_Encode4(111970), // Rule ID 1118 // |
| 39794 | /* 111949 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 39795 | /* 111952 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm0), |
| 39796 | /* 111956 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 39797 | /* 111960 */ // MIs[0] Operand 1 |
| 39798 | /* 111960 */ // No operand predicates |
| 39799 | /* 111960 */ // (fpimm:{ *:[f64] })<<P:Predicate_fpimm0>> => (LD_Fp064:{ *:[f64] }:{ *:[i16] }) |
| 39800 | /* 111960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp064), |
| 39801 | /* 111963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39802 | /* 111965 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39803 | /* 111968 */ GIR_RootConstrainSelectedInstOperands, |
| 39804 | /* 111969 */ // GIR_Coverage, 1118, |
| 39805 | /* 111969 */ GIR_EraseRootFromParent_Done, |
| 39806 | /* 111970 */ // Label 2397: @111970 |
| 39807 | /* 111970 */ GIM_Try, /*On fail goto*//*Label 2398*/ GIMT_Encode4(111996), // Rule ID 1119 // |
| 39808 | /* 111975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 39809 | /* 111978 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm1), |
| 39810 | /* 111982 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 39811 | /* 111986 */ // MIs[0] Operand 1 |
| 39812 | /* 111986 */ // No operand predicates |
| 39813 | /* 111986 */ // (fpimm:{ *:[f64] })<<P:Predicate_fpimm1>> => (LD_Fp164:{ *:[f64] }:{ *:[i16] }) |
| 39814 | /* 111986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp164), |
| 39815 | /* 111989 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39816 | /* 111991 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39817 | /* 111994 */ GIR_RootConstrainSelectedInstOperands, |
| 39818 | /* 111995 */ // GIR_Coverage, 1119, |
| 39819 | /* 111995 */ GIR_EraseRootFromParent_Done, |
| 39820 | /* 111996 */ // Label 2398: @111996 |
| 39821 | /* 111996 */ GIM_Try, /*On fail goto*//*Label 2399*/ GIMT_Encode4(112042), // Rule ID 17722 // |
| 39822 | /* 112001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 39823 | /* 112004 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg0), |
| 39824 | /* 112008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 39825 | /* 112012 */ // MIs[0] Operand 1 |
| 39826 | /* 112012 */ // No operand predicates |
| 39827 | /* 112012 */ // (fpimm:{ *:[f64] })<<P:Predicate_fpimmneg0>> => (CHS_Fp64:{ *:[f64] }:{ *:[i16] } (LD_Fp064:{ *:[f64] }:{ *:[i16] })) |
| 39828 | /* 112012 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 39829 | /* 112015 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp064), |
| 39830 | /* 112019 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39831 | /* 112024 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 39832 | /* 112027 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39833 | /* 112029 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp64), |
| 39834 | /* 112032 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39835 | /* 112034 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39836 | /* 112037 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39837 | /* 112040 */ GIR_RootConstrainSelectedInstOperands, |
| 39838 | /* 112041 */ // GIR_Coverage, 17722, |
| 39839 | /* 112041 */ GIR_EraseRootFromParent_Done, |
| 39840 | /* 112042 */ // Label 2399: @112042 |
| 39841 | /* 112042 */ GIM_Try, /*On fail goto*//*Label 2400*/ GIMT_Encode4(112088), // Rule ID 17723 // |
| 39842 | /* 112047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 39843 | /* 112050 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg1), |
| 39844 | /* 112054 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 39845 | /* 112058 */ // MIs[0] Operand 1 |
| 39846 | /* 112058 */ // No operand predicates |
| 39847 | /* 112058 */ // (fpimm:{ *:[f64] })<<P:Predicate_fpimmneg1>> => (CHS_Fp64:{ *:[f64] }:{ *:[i16] } (LD_Fp164:{ *:[f64] }:{ *:[i16] })) |
| 39848 | /* 112058 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 39849 | /* 112061 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp164), |
| 39850 | /* 112065 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39851 | /* 112070 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 39852 | /* 112073 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39853 | /* 112075 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp64), |
| 39854 | /* 112078 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39855 | /* 112080 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39856 | /* 112083 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39857 | /* 112086 */ GIR_RootConstrainSelectedInstOperands, |
| 39858 | /* 112087 */ // GIR_Coverage, 17723, |
| 39859 | /* 112087 */ GIR_EraseRootFromParent_Done, |
| 39860 | /* 112088 */ // Label 2400: @112088 |
| 39861 | /* 112088 */ GIM_Reject, |
| 39862 | /* 112089 */ // Label 2391: @112089 |
| 39863 | /* 112089 */ GIM_Try, /*On fail goto*//*Label 2401*/ GIMT_Encode4(112115), // Rule ID 1120 // |
| 39864 | /* 112094 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 39865 | /* 112097 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm0), |
| 39866 | /* 112101 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 39867 | /* 112105 */ // MIs[0] Operand 1 |
| 39868 | /* 112105 */ // No operand predicates |
| 39869 | /* 112105 */ // (fpimm:{ *:[f80] })<<P:Predicate_fpimm0>> => (LD_Fp080:{ *:[f80] }:{ *:[i16] }) |
| 39870 | /* 112105 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp080), |
| 39871 | /* 112108 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39872 | /* 112110 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39873 | /* 112113 */ GIR_RootConstrainSelectedInstOperands, |
| 39874 | /* 112114 */ // GIR_Coverage, 1120, |
| 39875 | /* 112114 */ GIR_EraseRootFromParent_Done, |
| 39876 | /* 112115 */ // Label 2401: @112115 |
| 39877 | /* 112115 */ GIM_Try, /*On fail goto*//*Label 2402*/ GIMT_Encode4(112141), // Rule ID 1121 // |
| 39878 | /* 112120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 39879 | /* 112123 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm1), |
| 39880 | /* 112127 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 39881 | /* 112131 */ // MIs[0] Operand 1 |
| 39882 | /* 112131 */ // No operand predicates |
| 39883 | /* 112131 */ // (fpimm:{ *:[f80] })<<P:Predicate_fpimm1>> => (LD_Fp180:{ *:[f80] }:{ *:[i16] }) |
| 39884 | /* 112131 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp180), |
| 39885 | /* 112134 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39886 | /* 112136 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39887 | /* 112139 */ GIR_RootConstrainSelectedInstOperands, |
| 39888 | /* 112140 */ // GIR_Coverage, 1121, |
| 39889 | /* 112140 */ GIR_EraseRootFromParent_Done, |
| 39890 | /* 112141 */ // Label 2402: @112141 |
| 39891 | /* 112141 */ GIM_Try, /*On fail goto*//*Label 2403*/ GIMT_Encode4(112184), // Rule ID 17724 // |
| 39892 | /* 112146 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg0), |
| 39893 | /* 112150 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 39894 | /* 112154 */ // MIs[0] Operand 1 |
| 39895 | /* 112154 */ // No operand predicates |
| 39896 | /* 112154 */ // (fpimm:{ *:[f80] })<<P:Predicate_fpimmneg0>> => (CHS_Fp80:{ *:[f80] }:{ *:[i16] } (LD_Fp080:{ *:[f80] }:{ *:[i16] })) |
| 39897 | /* 112154 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s80, |
| 39898 | /* 112157 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp080), |
| 39899 | /* 112161 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39900 | /* 112166 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 39901 | /* 112169 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39902 | /* 112171 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp80), |
| 39903 | /* 112174 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39904 | /* 112176 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39905 | /* 112179 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39906 | /* 112182 */ GIR_RootConstrainSelectedInstOperands, |
| 39907 | /* 112183 */ // GIR_Coverage, 17724, |
| 39908 | /* 112183 */ GIR_EraseRootFromParent_Done, |
| 39909 | /* 112184 */ // Label 2403: @112184 |
| 39910 | /* 112184 */ GIM_Try, /*On fail goto*//*Label 2404*/ GIMT_Encode4(112227), // Rule ID 17725 // |
| 39911 | /* 112189 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg1), |
| 39912 | /* 112193 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 39913 | /* 112197 */ // MIs[0] Operand 1 |
| 39914 | /* 112197 */ // No operand predicates |
| 39915 | /* 112197 */ // (fpimm:{ *:[f80] })<<P:Predicate_fpimmneg1>> => (CHS_Fp80:{ *:[f80] }:{ *:[i16] } (LD_Fp180:{ *:[f80] }:{ *:[i16] })) |
| 39916 | /* 112197 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s80, |
| 39917 | /* 112200 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp180), |
| 39918 | /* 112204 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39919 | /* 112209 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 39920 | /* 112212 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39921 | /* 112214 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp80), |
| 39922 | /* 112217 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39923 | /* 112219 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39924 | /* 112222 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 39925 | /* 112225 */ GIR_RootConstrainSelectedInstOperands, |
| 39926 | /* 112226 */ // GIR_Coverage, 17725, |
| 39927 | /* 112226 */ GIR_EraseRootFromParent_Done, |
| 39928 | /* 112227 */ // Label 2404: @112227 |
| 39929 | /* 112227 */ GIM_Reject, |
| 39930 | /* 112228 */ // Label 2392: @112228 |
| 39931 | /* 112228 */ GIM_Reject, |
| 39932 | /* 112229 */ // Label 23: @112229 |
| 39933 | /* 112229 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(25), /*)*//*default:*//*Label 2420*/ GIMT_Encode4(113900), |
| 39934 | /* 112240 */ /*GILLT_s16*//*Label 2405*/ GIMT_Encode4(112332), |
| 39935 | /* 112244 */ /*GILLT_s32*//*Label 2406*/ GIMT_Encode4(112390), |
| 39936 | /* 112248 */ /*GILLT_s64*//*Label 2407*/ GIMT_Encode4(112437), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 39937 | /* 112264 */ /*GILLT_v2s64*//*Label 2408*/ GIMT_Encode4(112510), GIMT_Encode4(0), |
| 39938 | /* 112272 */ /*GILLT_v4s32*//*Label 2409*/ GIMT_Encode4(112537), |
| 39939 | /* 112276 */ /*GILLT_v4s64*//*Label 2410*/ GIMT_Encode4(112564), GIMT_Encode4(0), |
| 39940 | /* 112284 */ /*GILLT_v8s16*//*Label 2411*/ GIMT_Encode4(112761), |
| 39941 | /* 112288 */ /*GILLT_v8s32*//*Label 2412*/ GIMT_Encode4(112830), |
| 39942 | /* 112292 */ /*GILLT_v8s64*//*Label 2413*/ GIMT_Encode4(113027), GIMT_Encode4(0), |
| 39943 | /* 112300 */ /*GILLT_v16s8*//*Label 2414*/ GIMT_Encode4(113224), |
| 39944 | /* 112304 */ /*GILLT_v16s16*//*Label 2415*/ GIMT_Encode4(113293), |
| 39945 | /* 112308 */ /*GILLT_v16s32*//*Label 2416*/ GIMT_Encode4(113537), GIMT_Encode4(0), |
| 39946 | /* 112316 */ /*GILLT_v32s8*//*Label 2417*/ GIMT_Encode4(113734), |
| 39947 | /* 112320 */ /*GILLT_v32s16*//*Label 2418*/ GIMT_Encode4(113761), GIMT_Encode4(0), |
| 39948 | /* 112328 */ /*GILLT_v64s8*//*Label 2419*/ GIMT_Encode4(113873), |
| 39949 | /* 112332 */ // Label 2405: @112332 |
| 39950 | /* 112332 */ GIM_Try, /*On fail goto*//*Label 2421*/ GIMT_Encode4(112389), // Rule ID 22647 // |
| 39951 | /* 112337 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39952 | /* 112340 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39953 | /* 112344 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39954 | /* 112348 */ // (sext:{ *:[i16] } GR8:{ *:[i8] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (MOVSX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src), sub_16bit:{ *:[i32] }) |
| 39955 | /* 112348 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39956 | /* 112351 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr8), |
| 39957 | /* 112355 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 39958 | /* 112360 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39959 | /* 112364 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39960 | /* 112366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39961 | /* 112369 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39962 | /* 112371 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 39963 | /* 112378 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 39964 | /* 112383 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39965 | /* 112388 */ // GIR_Coverage, 22647, |
| 39966 | /* 112388 */ GIR_EraseRootFromParent_Done, |
| 39967 | /* 112389 */ // Label 2421: @112389 |
| 39968 | /* 112389 */ GIM_Reject, |
| 39969 | /* 112390 */ // Label 2406: @112390 |
| 39970 | /* 112390 */ GIM_Try, /*On fail goto*//*Label 2422*/ GIMT_Encode4(112413), // Rule ID 614 // |
| 39971 | /* 112395 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39972 | /* 112398 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39973 | /* 112402 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39974 | /* 112406 */ // (sext:{ *:[i32] } GR8:{ *:[i8] }:$src) => (MOVSX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 39975 | /* 112406 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr8), |
| 39976 | /* 112411 */ GIR_RootConstrainSelectedInstOperands, |
| 39977 | /* 112412 */ // GIR_Coverage, 614, |
| 39978 | /* 112412 */ GIR_Done, |
| 39979 | /* 112413 */ // Label 2422: @112413 |
| 39980 | /* 112413 */ GIM_Try, /*On fail goto*//*Label 2423*/ GIMT_Encode4(112436), // Rule ID 616 // |
| 39981 | /* 112418 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39982 | /* 112421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39983 | /* 112425 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39984 | /* 112429 */ // (sext:{ *:[i32] } GR16:{ *:[i16] }:$src) => (MOVSX32rr16:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 39985 | /* 112429 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr16), |
| 39986 | /* 112434 */ GIR_RootConstrainSelectedInstOperands, |
| 39987 | /* 112435 */ // GIR_Coverage, 616, |
| 39988 | /* 112435 */ GIR_Done, |
| 39989 | /* 112436 */ // Label 2423: @112436 |
| 39990 | /* 112436 */ GIM_Reject, |
| 39991 | /* 112437 */ // Label 2407: @112437 |
| 39992 | /* 112437 */ GIM_Try, /*On fail goto*//*Label 2424*/ GIMT_Encode4(112460), // Rule ID 622 // |
| 39993 | /* 112442 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39994 | /* 112445 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39995 | /* 112449 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39996 | /* 112453 */ // (sext:{ *:[i64] } GR8:{ *:[i8] }:$src) => (MOVSX64rr8:{ *:[i64] } GR8:{ *:[i8] }:$src) |
| 39997 | /* 112453 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSX64rr8), |
| 39998 | /* 112458 */ GIR_RootConstrainSelectedInstOperands, |
| 39999 | /* 112459 */ // GIR_Coverage, 622, |
| 40000 | /* 112459 */ GIR_Done, |
| 40001 | /* 112460 */ // Label 2424: @112460 |
| 40002 | /* 112460 */ GIM_Try, /*On fail goto*//*Label 2425*/ GIMT_Encode4(112483), // Rule ID 624 // |
| 40003 | /* 112465 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40004 | /* 112468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40005 | /* 112472 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 40006 | /* 112476 */ // (sext:{ *:[i64] } GR16:{ *:[i16] }:$src) => (MOVSX64rr16:{ *:[i64] } GR16:{ *:[i16] }:$src) |
| 40007 | /* 112476 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSX64rr16), |
| 40008 | /* 112481 */ GIR_RootConstrainSelectedInstOperands, |
| 40009 | /* 112482 */ // GIR_Coverage, 624, |
| 40010 | /* 112482 */ GIR_Done, |
| 40011 | /* 112483 */ // Label 2425: @112483 |
| 40012 | /* 112483 */ GIM_Try, /*On fail goto*//*Label 2426*/ GIMT_Encode4(112509), // Rule ID 626 // |
| 40013 | /* 112488 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 40014 | /* 112491 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 40015 | /* 112494 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40016 | /* 112498 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40017 | /* 112502 */ // (sext:{ *:[i64] } GR32:{ *:[i32] }:$src) => (MOVSX64rr32:{ *:[i64] } GR32:{ *:[i32] }:$src) |
| 40018 | /* 112502 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSX64rr32), |
| 40019 | /* 112507 */ GIR_RootConstrainSelectedInstOperands, |
| 40020 | /* 112508 */ // GIR_Coverage, 626, |
| 40021 | /* 112508 */ GIR_Done, |
| 40022 | /* 112509 */ // Label 2426: @112509 |
| 40023 | /* 112509 */ GIM_Reject, |
| 40024 | /* 112510 */ // Label 2408: @112510 |
| 40025 | /* 112510 */ GIM_Try, /*On fail goto*//*Label 2427*/ GIMT_Encode4(112536), // Rule ID 12594 // |
| 40026 | /* 112515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 40027 | /* 112518 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 40028 | /* 112521 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40029 | /* 112525 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 40030 | /* 112529 */ // (sext:{ *:[v2i64] } VK2:{ *:[v2i1] }:$src) => (VPMOVM2QZ128rk:{ *:[v2i64] } VK2:{ *:[v2i1] }:$src) |
| 40031 | /* 112529 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2QZ128rk), |
| 40032 | /* 112534 */ GIR_RootConstrainSelectedInstOperands, |
| 40033 | /* 112535 */ // GIR_Coverage, 12594, |
| 40034 | /* 112535 */ GIR_Done, |
| 40035 | /* 112536 */ // Label 2427: @112536 |
| 40036 | /* 112536 */ GIM_Reject, |
| 40037 | /* 112537 */ // Label 2409: @112537 |
| 40038 | /* 112537 */ GIM_Try, /*On fail goto*//*Label 2428*/ GIMT_Encode4(112563), // Rule ID 12591 // |
| 40039 | /* 112542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 40040 | /* 112545 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 40041 | /* 112548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40042 | /* 112552 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 40043 | /* 112556 */ // (sext:{ *:[v4i32] } VK4:{ *:[v4i1] }:$src) => (VPMOVM2DZ128rk:{ *:[v4i32] } VK4:{ *:[v4i1] }:$src) |
| 40044 | /* 112556 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZ128rk), |
| 40045 | /* 112561 */ GIR_RootConstrainSelectedInstOperands, |
| 40046 | /* 112562 */ // GIR_Coverage, 12591, |
| 40047 | /* 112562 */ GIR_Done, |
| 40048 | /* 112563 */ // Label 2428: @112563 |
| 40049 | /* 112563 */ GIM_Reject, |
| 40050 | /* 112564 */ // Label 2410: @112564 |
| 40051 | /* 112564 */ GIM_Try, /*On fail goto*//*Label 2429*/ GIMT_Encode4(112623), // Rule ID 18390 // |
| 40052 | /* 112569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 40053 | /* 112572 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 40054 | /* 112575 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40055 | /* 112579 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40056 | /* 112583 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40057 | /* 112587 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40058 | /* 112590 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40059 | /* 112594 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40060 | /* 112598 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40061 | /* 112600 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40062 | /* 112607 */ // (sext:{ *:[v4i64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXDQYrm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 40063 | /* 112607 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQYrm), |
| 40064 | /* 112610 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40065 | /* 112612 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40066 | /* 112616 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40067 | /* 112621 */ GIR_RootConstrainSelectedInstOperands, |
| 40068 | /* 112622 */ // GIR_Coverage, 18390, |
| 40069 | /* 112622 */ GIR_EraseRootFromParent_Done, |
| 40070 | /* 112623 */ // Label 2429: @112623 |
| 40071 | /* 112623 */ GIM_Try, /*On fail goto*//*Label 2430*/ GIMT_Encode4(112682), // Rule ID 21585 // |
| 40072 | /* 112628 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 40073 | /* 112631 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 40074 | /* 112634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40075 | /* 112638 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40076 | /* 112642 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40077 | /* 112646 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40078 | /* 112649 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40079 | /* 112653 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40080 | /* 112657 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40081 | /* 112659 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40082 | /* 112666 */ // (sext:{ *:[v4i64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXDQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 40083 | /* 112666 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQZ256rm), |
| 40084 | /* 112669 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40085 | /* 112671 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40086 | /* 112675 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40087 | /* 112680 */ GIR_RootConstrainSelectedInstOperands, |
| 40088 | /* 112681 */ // GIR_Coverage, 21585, |
| 40089 | /* 112681 */ GIR_EraseRootFromParent_Done, |
| 40090 | /* 112682 */ // Label 2430: @112682 |
| 40091 | /* 112682 */ GIM_Try, /*On fail goto*//*Label 2431*/ GIMT_Encode4(112708), // Rule ID 12571 // |
| 40092 | /* 112687 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 40093 | /* 112690 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 40094 | /* 112693 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40095 | /* 112697 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40096 | /* 112701 */ // (sext:{ *:[v4i64] } VR128X:{ *:[v4i32] }:$src) => (VPMOVSXDQZ256rr:{ *:[v4i64] } VR128X:{ *:[v4i32] }:$src) |
| 40097 | /* 112701 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQZ256rr), |
| 40098 | /* 112706 */ GIR_RootConstrainSelectedInstOperands, |
| 40099 | /* 112707 */ // GIR_Coverage, 12571, |
| 40100 | /* 112707 */ GIR_Done, |
| 40101 | /* 112708 */ // Label 2431: @112708 |
| 40102 | /* 112708 */ GIM_Try, /*On fail goto*//*Label 2432*/ GIMT_Encode4(112734), // Rule ID 12593 // |
| 40103 | /* 112713 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 40104 | /* 112716 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 40105 | /* 112719 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40106 | /* 112723 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 40107 | /* 112727 */ // (sext:{ *:[v4i64] } VK4:{ *:[v4i1] }:$src) => (VPMOVM2QZ256rk:{ *:[v4i64] } VK4:{ *:[v4i1] }:$src) |
| 40108 | /* 112727 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2QZ256rk), |
| 40109 | /* 112732 */ GIR_RootConstrainSelectedInstOperands, |
| 40110 | /* 112733 */ // GIR_Coverage, 12593, |
| 40111 | /* 112733 */ GIR_Done, |
| 40112 | /* 112734 */ // Label 2432: @112734 |
| 40113 | /* 112734 */ GIM_Try, /*On fail goto*//*Label 2433*/ GIMT_Encode4(112760), // Rule ID 18378 // |
| 40114 | /* 112739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 40115 | /* 112742 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 40116 | /* 112745 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40117 | /* 112749 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 40118 | /* 112753 */ // (sext:{ *:[v4i64] } VR128:{ *:[v4i32] }:$src) => (VPMOVSXDQYrr:{ *:[v4i64] } VR128:{ *:[v4i32] }:$src) |
| 40119 | /* 112753 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQYrr), |
| 40120 | /* 112758 */ GIR_RootConstrainSelectedInstOperands, |
| 40121 | /* 112759 */ // GIR_Coverage, 18378, |
| 40122 | /* 112759 */ GIR_Done, |
| 40123 | /* 112760 */ // Label 2433: @112760 |
| 40124 | /* 112760 */ GIM_Reject, |
| 40125 | /* 112761 */ // Label 2411: @112761 |
| 40126 | /* 112761 */ GIM_Try, /*On fail goto*//*Label 2434*/ GIMT_Encode4(112829), |
| 40127 | /* 112766 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 40128 | /* 112769 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40129 | /* 112773 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 40130 | /* 112777 */ GIM_Try, /*On fail goto*//*Label 2435*/ GIMT_Encode4(112792), // Rule ID 12588 // |
| 40131 | /* 112782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 40132 | /* 112785 */ // (sext:{ *:[v8i16] } VK8:{ *:[v8i1] }:$src) => (VPMOVM2WZ128rk:{ *:[v8i16] } VK8:{ *:[v8i1] }:$src) |
| 40133 | /* 112785 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2WZ128rk), |
| 40134 | /* 112790 */ GIR_RootConstrainSelectedInstOperands, |
| 40135 | /* 112791 */ // GIR_Coverage, 12588, |
| 40136 | /* 112791 */ GIR_Done, |
| 40137 | /* 112792 */ // Label 2435: @112792 |
| 40138 | /* 112792 */ GIM_Try, /*On fail goto*//*Label 2436*/ GIMT_Encode4(112828), // Rule ID 21661 // |
| 40139 | /* 112797 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX_NoBWI), |
| 40140 | /* 112800 */ // (sext:{ *:[v8i16] } VK8:{ *:[v8i1] }:$src) => (VPMOVDWZ256rr:{ *:[v8i16] } (VPMOVM2DZ256rk:{ *:[v8i32] } VK8:{ *:[v8i1] }:$src)) |
| 40141 | /* 112800 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 40142 | /* 112803 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZ256rk), |
| 40143 | /* 112807 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40144 | /* 112812 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 40145 | /* 112816 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40146 | /* 112818 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVDWZ256rr), |
| 40147 | /* 112821 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40148 | /* 112823 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40149 | /* 112826 */ GIR_RootConstrainSelectedInstOperands, |
| 40150 | /* 112827 */ // GIR_Coverage, 21661, |
| 40151 | /* 112827 */ GIR_EraseRootFromParent_Done, |
| 40152 | /* 112828 */ // Label 2436: @112828 |
| 40153 | /* 112828 */ GIM_Reject, |
| 40154 | /* 112829 */ // Label 2434: @112829 |
| 40155 | /* 112829 */ GIM_Reject, |
| 40156 | /* 112830 */ // Label 2412: @112830 |
| 40157 | /* 112830 */ GIM_Try, /*On fail goto*//*Label 2437*/ GIMT_Encode4(112889), // Rule ID 18386 // |
| 40158 | /* 112835 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 40159 | /* 112838 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 40160 | /* 112841 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40161 | /* 112845 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40162 | /* 112849 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40163 | /* 112853 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40164 | /* 112856 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40165 | /* 112860 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40166 | /* 112864 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40167 | /* 112866 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40168 | /* 112873 */ // (sext:{ *:[v8i32] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXWDYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 40169 | /* 112873 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDYrm), |
| 40170 | /* 112876 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40171 | /* 112878 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40172 | /* 112882 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40173 | /* 112887 */ GIR_RootConstrainSelectedInstOperands, |
| 40174 | /* 112888 */ // GIR_Coverage, 18386, |
| 40175 | /* 112888 */ GIR_EraseRootFromParent_Done, |
| 40176 | /* 112889 */ // Label 2437: @112889 |
| 40177 | /* 112889 */ GIM_Try, /*On fail goto*//*Label 2438*/ GIMT_Encode4(112948), // Rule ID 21584 // |
| 40178 | /* 112894 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 40179 | /* 112897 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 40180 | /* 112900 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40181 | /* 112904 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40182 | /* 112908 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40183 | /* 112912 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40184 | /* 112915 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40185 | /* 112919 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40186 | /* 112923 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40187 | /* 112925 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40188 | /* 112932 */ // (sext:{ *:[v8i32] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXWDZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 40189 | /* 112932 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDZ256rm), |
| 40190 | /* 112935 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40191 | /* 112937 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40192 | /* 112941 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40193 | /* 112946 */ GIR_RootConstrainSelectedInstOperands, |
| 40194 | /* 112947 */ // GIR_Coverage, 21584, |
| 40195 | /* 112947 */ GIR_EraseRootFromParent_Done, |
| 40196 | /* 112948 */ // Label 2438: @112948 |
| 40197 | /* 112948 */ GIM_Try, /*On fail goto*//*Label 2439*/ GIMT_Encode4(112974), // Rule ID 12535 // |
| 40198 | /* 112953 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 40199 | /* 112956 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 40200 | /* 112959 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40201 | /* 112963 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40202 | /* 112967 */ // (sext:{ *:[v8i32] } VR128X:{ *:[v8i16] }:$src) => (VPMOVSXWDZ256rr:{ *:[v8i32] } VR128X:{ *:[v8i16] }:$src) |
| 40203 | /* 112967 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDZ256rr), |
| 40204 | /* 112972 */ GIR_RootConstrainSelectedInstOperands, |
| 40205 | /* 112973 */ // GIR_Coverage, 12535, |
| 40206 | /* 112973 */ GIR_Done, |
| 40207 | /* 112974 */ // Label 2439: @112974 |
| 40208 | /* 112974 */ GIM_Try, /*On fail goto*//*Label 2440*/ GIMT_Encode4(113000), // Rule ID 12590 // |
| 40209 | /* 112979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 40210 | /* 112982 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 40211 | /* 112985 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40212 | /* 112989 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 40213 | /* 112993 */ // (sext:{ *:[v8i32] } VK8:{ *:[v8i1] }:$src) => (VPMOVM2DZ256rk:{ *:[v8i32] } VK8:{ *:[v8i1] }:$src) |
| 40214 | /* 112993 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZ256rk), |
| 40215 | /* 112998 */ GIR_RootConstrainSelectedInstOperands, |
| 40216 | /* 112999 */ // GIR_Coverage, 12590, |
| 40217 | /* 112999 */ GIR_Done, |
| 40218 | /* 113000 */ // Label 2440: @113000 |
| 40219 | /* 113000 */ GIM_Try, /*On fail goto*//*Label 2441*/ GIMT_Encode4(113026), // Rule ID 18376 // |
| 40220 | /* 113005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 40221 | /* 113008 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 40222 | /* 113011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40223 | /* 113015 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 40224 | /* 113019 */ // (sext:{ *:[v8i32] } VR128:{ *:[v8i16] }:$src) => (VPMOVSXWDYrr:{ *:[v8i32] } VR128:{ *:[v8i16] }:$src) |
| 40225 | /* 113019 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDYrr), |
| 40226 | /* 113024 */ GIR_RootConstrainSelectedInstOperands, |
| 40227 | /* 113025 */ // GIR_Coverage, 18376, |
| 40228 | /* 113025 */ GIR_Done, |
| 40229 | /* 113026 */ // Label 2441: @113026 |
| 40230 | /* 113026 */ GIM_Reject, |
| 40231 | /* 113027 */ // Label 2413: @113027 |
| 40232 | /* 113027 */ GIM_Try, /*On fail goto*//*Label 2442*/ GIMT_Encode4(113086), // Rule ID 21589 // |
| 40233 | /* 113032 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40234 | /* 113035 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 40235 | /* 113038 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40236 | /* 113042 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40237 | /* 113046 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40238 | /* 113050 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40239 | /* 113053 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40240 | /* 113057 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40241 | /* 113061 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40242 | /* 113063 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40243 | /* 113070 */ // (sext:{ *:[v8i64] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXWQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 40244 | /* 113070 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWQZrm), |
| 40245 | /* 113073 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40246 | /* 113075 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40247 | /* 113079 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40248 | /* 113084 */ GIR_RootConstrainSelectedInstOperands, |
| 40249 | /* 113085 */ // GIR_Coverage, 21589, |
| 40250 | /* 113085 */ GIR_EraseRootFromParent_Done, |
| 40251 | /* 113086 */ // Label 2442: @113086 |
| 40252 | /* 113086 */ GIM_Try, /*On fail goto*//*Label 2443*/ GIMT_Encode4(113145), // Rule ID 21590 // |
| 40253 | /* 113091 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40254 | /* 113094 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 40255 | /* 113097 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40256 | /* 113101 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40257 | /* 113105 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40258 | /* 113109 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40259 | /* 113112 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40260 | /* 113116 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40261 | /* 113120 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40262 | /* 113122 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40263 | /* 113129 */ // (sext:{ *:[v8i64] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXDQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 40264 | /* 113129 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQZrm), |
| 40265 | /* 113132 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40266 | /* 113134 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40267 | /* 113138 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40268 | /* 113143 */ GIR_RootConstrainSelectedInstOperands, |
| 40269 | /* 113144 */ // GIR_Coverage, 21590, |
| 40270 | /* 113144 */ GIR_EraseRootFromParent_Done, |
| 40271 | /* 113145 */ // Label 2443: @113145 |
| 40272 | /* 113145 */ GIM_Try, /*On fail goto*//*Label 2444*/ GIMT_Encode4(113171), // Rule ID 12559 // |
| 40273 | /* 113150 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40274 | /* 113153 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 40275 | /* 113156 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40276 | /* 113160 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40277 | /* 113164 */ // (sext:{ *:[v8i64] } VR128X:{ *:[v8i16] }:$src) => (VPMOVSXWQZrr:{ *:[v8i64] } VR128X:{ *:[v8i16] }:$src) |
| 40278 | /* 113164 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWQZrr), |
| 40279 | /* 113169 */ GIR_RootConstrainSelectedInstOperands, |
| 40280 | /* 113170 */ // GIR_Coverage, 12559, |
| 40281 | /* 113170 */ GIR_Done, |
| 40282 | /* 113171 */ // Label 2444: @113171 |
| 40283 | /* 113171 */ GIM_Try, /*On fail goto*//*Label 2445*/ GIMT_Encode4(113197), // Rule ID 12577 // |
| 40284 | /* 113176 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40285 | /* 113179 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 40286 | /* 113182 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40287 | /* 113186 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40288 | /* 113190 */ // (sext:{ *:[v8i64] } VR256X:{ *:[v8i32] }:$src) => (VPMOVSXDQZrr:{ *:[v8i64] } VR256X:{ *:[v8i32] }:$src) |
| 40289 | /* 113190 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQZrr), |
| 40290 | /* 113195 */ GIR_RootConstrainSelectedInstOperands, |
| 40291 | /* 113196 */ // GIR_Coverage, 12577, |
| 40292 | /* 113196 */ GIR_Done, |
| 40293 | /* 113197 */ // Label 2445: @113197 |
| 40294 | /* 113197 */ GIM_Try, /*On fail goto*//*Label 2446*/ GIMT_Encode4(113223), // Rule ID 12592 // |
| 40295 | /* 113202 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 40296 | /* 113205 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 40297 | /* 113208 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40298 | /* 113212 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 40299 | /* 113216 */ // (sext:{ *:[v8i64] } VK8:{ *:[v8i1] }:$src) => (VPMOVM2QZrk:{ *:[v8i64] } VK8:{ *:[v8i1] }:$src) |
| 40300 | /* 113216 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2QZrk), |
| 40301 | /* 113221 */ GIR_RootConstrainSelectedInstOperands, |
| 40302 | /* 113222 */ // GIR_Coverage, 12592, |
| 40303 | /* 113222 */ GIR_Done, |
| 40304 | /* 113223 */ // Label 2446: @113223 |
| 40305 | /* 113223 */ GIM_Reject, |
| 40306 | /* 113224 */ // Label 2414: @113224 |
| 40307 | /* 113224 */ GIM_Try, /*On fail goto*//*Label 2447*/ GIMT_Encode4(113292), |
| 40308 | /* 113229 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 40309 | /* 113232 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40310 | /* 113236 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 40311 | /* 113240 */ GIM_Try, /*On fail goto*//*Label 2448*/ GIMT_Encode4(113255), // Rule ID 12585 // |
| 40312 | /* 113245 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 40313 | /* 113248 */ // (sext:{ *:[v16i8] } VK16:{ *:[v16i1] }:$src) => (VPMOVM2BZ128rk:{ *:[v16i8] } VK16:{ *:[v16i1] }:$src) |
| 40314 | /* 113248 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2BZ128rk), |
| 40315 | /* 113253 */ GIR_RootConstrainSelectedInstOperands, |
| 40316 | /* 113254 */ // GIR_Coverage, 12585, |
| 40317 | /* 113254 */ GIR_Done, |
| 40318 | /* 113255 */ // Label 2448: @113255 |
| 40319 | /* 113255 */ GIM_Try, /*On fail goto*//*Label 2449*/ GIMT_Encode4(113291), // Rule ID 21659 // |
| 40320 | /* 113260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoBWI), |
| 40321 | /* 113263 */ // (sext:{ *:[v16i8] } VK16:{ *:[v16i1] }:$src) => (VPMOVDBZrr:{ *:[v16i8] } (VPMOVM2DZrk:{ *:[v16i32] } VK16:{ *:[v16i1] }:$src)) |
| 40322 | /* 113263 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 40323 | /* 113266 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZrk), |
| 40324 | /* 113270 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40325 | /* 113275 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 40326 | /* 113279 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40327 | /* 113281 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVDBZrr), |
| 40328 | /* 113284 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40329 | /* 113286 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40330 | /* 113289 */ GIR_RootConstrainSelectedInstOperands, |
| 40331 | /* 113290 */ // GIR_Coverage, 21659, |
| 40332 | /* 113290 */ GIR_EraseRootFromParent_Done, |
| 40333 | /* 113291 */ // Label 2449: @113291 |
| 40334 | /* 113291 */ GIM_Reject, |
| 40335 | /* 113292 */ // Label 2447: @113292 |
| 40336 | /* 113292 */ GIM_Reject, |
| 40337 | /* 113293 */ // Label 2415: @113293 |
| 40338 | /* 113293 */ GIM_Try, /*On fail goto*//*Label 2450*/ GIMT_Encode4(113352), // Rule ID 18380 // |
| 40339 | /* 113298 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 40340 | /* 113301 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 40341 | /* 113304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40342 | /* 113308 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40343 | /* 113312 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40344 | /* 113316 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40345 | /* 113319 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40346 | /* 113323 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40347 | /* 113327 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40348 | /* 113329 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40349 | /* 113336 */ // (sext:{ *:[v16i16] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXBWYrm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 40350 | /* 113336 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWYrm), |
| 40351 | /* 113339 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40352 | /* 113341 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40353 | /* 113345 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40354 | /* 113350 */ GIR_RootConstrainSelectedInstOperands, |
| 40355 | /* 113351 */ // GIR_Coverage, 18380, |
| 40356 | /* 113351 */ GIR_EraseRootFromParent_Done, |
| 40357 | /* 113352 */ // Label 2450: @113352 |
| 40358 | /* 113352 */ GIM_Try, /*On fail goto*//*Label 2451*/ GIMT_Encode4(113411), // Rule ID 21583 // |
| 40359 | /* 113357 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 40360 | /* 113360 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 40361 | /* 113363 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40362 | /* 113367 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40363 | /* 113371 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40364 | /* 113375 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40365 | /* 113378 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40366 | /* 113382 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40367 | /* 113386 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40368 | /* 113388 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40369 | /* 113395 */ // (sext:{ *:[v16i16] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXBWZ256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 40370 | /* 113395 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWZ256rm), |
| 40371 | /* 113398 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40372 | /* 113400 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40373 | /* 113404 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40374 | /* 113409 */ GIR_RootConstrainSelectedInstOperands, |
| 40375 | /* 113410 */ // GIR_Coverage, 21583, |
| 40376 | /* 113410 */ GIR_EraseRootFromParent_Done, |
| 40377 | /* 113411 */ // Label 2451: @113411 |
| 40378 | /* 113411 */ GIM_Try, /*On fail goto*//*Label 2452*/ GIMT_Encode4(113437), // Rule ID 12481 // |
| 40379 | /* 113416 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 40380 | /* 113419 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 40381 | /* 113422 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40382 | /* 113426 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40383 | /* 113430 */ // (sext:{ *:[v16i16] } VR128X:{ *:[v16i8] }:$src) => (VPMOVSXBWZ256rr:{ *:[v16i16] } VR128X:{ *:[v16i8] }:$src) |
| 40384 | /* 113430 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWZ256rr), |
| 40385 | /* 113435 */ GIR_RootConstrainSelectedInstOperands, |
| 40386 | /* 113436 */ // GIR_Coverage, 12481, |
| 40387 | /* 113436 */ GIR_Done, |
| 40388 | /* 113437 */ // Label 2452: @113437 |
| 40389 | /* 113437 */ GIM_Try, /*On fail goto*//*Label 2453*/ GIMT_Encode4(113463), // Rule ID 12587 // |
| 40390 | /* 113442 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 40391 | /* 113445 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 40392 | /* 113448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40393 | /* 113452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 40394 | /* 113456 */ // (sext:{ *:[v16i16] } VK16:{ *:[v16i1] }:$src) => (VPMOVM2WZ256rk:{ *:[v16i16] } VK16:{ *:[v16i1] }:$src) |
| 40395 | /* 113456 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2WZ256rk), |
| 40396 | /* 113461 */ GIR_RootConstrainSelectedInstOperands, |
| 40397 | /* 113462 */ // GIR_Coverage, 12587, |
| 40398 | /* 113462 */ GIR_Done, |
| 40399 | /* 113463 */ // Label 2453: @113463 |
| 40400 | /* 113463 */ GIM_Try, /*On fail goto*//*Label 2454*/ GIMT_Encode4(113489), // Rule ID 18373 // |
| 40401 | /* 113468 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 40402 | /* 113471 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 40403 | /* 113474 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40404 | /* 113478 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 40405 | /* 113482 */ // (sext:{ *:[v16i16] } VR128:{ *:[v16i8] }:$src) => (VPMOVSXBWYrr:{ *:[v16i16] } VR128:{ *:[v16i8] }:$src) |
| 40406 | /* 113482 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWYrr), |
| 40407 | /* 113487 */ GIR_RootConstrainSelectedInstOperands, |
| 40408 | /* 113488 */ // GIR_Coverage, 18373, |
| 40409 | /* 113488 */ GIR_Done, |
| 40410 | /* 113489 */ // Label 2454: @113489 |
| 40411 | /* 113489 */ GIM_Try, /*On fail goto*//*Label 2455*/ GIMT_Encode4(113536), // Rule ID 21660 // |
| 40412 | /* 113494 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoBWI), |
| 40413 | /* 113497 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 40414 | /* 113500 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40415 | /* 113504 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 40416 | /* 113508 */ // (sext:{ *:[v16i16] } VK16:{ *:[v16i1] }:$src) => (VPMOVDWZrr:{ *:[v16i16] } (VPMOVM2DZrk:{ *:[v16i32] } VK16:{ *:[v16i1] }:$src)) |
| 40417 | /* 113508 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 40418 | /* 113511 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZrk), |
| 40419 | /* 113515 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40420 | /* 113520 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 40421 | /* 113524 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40422 | /* 113526 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVDWZrr), |
| 40423 | /* 113529 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40424 | /* 113531 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40425 | /* 113534 */ GIR_RootConstrainSelectedInstOperands, |
| 40426 | /* 113535 */ // GIR_Coverage, 21660, |
| 40427 | /* 113535 */ GIR_EraseRootFromParent_Done, |
| 40428 | /* 113536 */ // Label 2455: @113536 |
| 40429 | /* 113536 */ GIM_Reject, |
| 40430 | /* 113537 */ // Label 2416: @113537 |
| 40431 | /* 113537 */ GIM_Try, /*On fail goto*//*Label 2456*/ GIMT_Encode4(113596), // Rule ID 21587 // |
| 40432 | /* 113542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40433 | /* 113545 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 40434 | /* 113548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40435 | /* 113552 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40436 | /* 113556 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40437 | /* 113560 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40438 | /* 113563 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40439 | /* 113567 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40440 | /* 113571 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40441 | /* 113573 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40442 | /* 113580 */ // (sext:{ *:[v16i32] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXBDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 40443 | /* 113580 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBDZrm), |
| 40444 | /* 113583 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40445 | /* 113585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40446 | /* 113589 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40447 | /* 113594 */ GIR_RootConstrainSelectedInstOperands, |
| 40448 | /* 113595 */ // GIR_Coverage, 21587, |
| 40449 | /* 113595 */ GIR_EraseRootFromParent_Done, |
| 40450 | /* 113596 */ // Label 2456: @113596 |
| 40451 | /* 113596 */ GIM_Try, /*On fail goto*//*Label 2457*/ GIMT_Encode4(113655), // Rule ID 21588 // |
| 40452 | /* 113601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40453 | /* 113604 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 40454 | /* 113607 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40455 | /* 113611 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40456 | /* 113615 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40457 | /* 113619 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40458 | /* 113622 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40459 | /* 113626 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40460 | /* 113630 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40461 | /* 113632 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40462 | /* 113639 */ // (sext:{ *:[v16i32] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXWDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 40463 | /* 113639 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDZrm), |
| 40464 | /* 113642 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40465 | /* 113644 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40466 | /* 113648 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40467 | /* 113653 */ GIR_RootConstrainSelectedInstOperands, |
| 40468 | /* 113654 */ // GIR_Coverage, 21588, |
| 40469 | /* 113654 */ GIR_EraseRootFromParent_Done, |
| 40470 | /* 113655 */ // Label 2457: @113655 |
| 40471 | /* 113655 */ GIM_Try, /*On fail goto*//*Label 2458*/ GIMT_Encode4(113681), // Rule ID 12505 // |
| 40472 | /* 113660 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40473 | /* 113663 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 40474 | /* 113666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40475 | /* 113670 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40476 | /* 113674 */ // (sext:{ *:[v16i32] } VR128X:{ *:[v16i8] }:$src) => (VPMOVSXBDZrr:{ *:[v16i32] } VR128X:{ *:[v16i8] }:$src) |
| 40477 | /* 113674 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBDZrr), |
| 40478 | /* 113679 */ GIR_RootConstrainSelectedInstOperands, |
| 40479 | /* 113680 */ // GIR_Coverage, 12505, |
| 40480 | /* 113680 */ GIR_Done, |
| 40481 | /* 113681 */ // Label 2458: @113681 |
| 40482 | /* 113681 */ GIM_Try, /*On fail goto*//*Label 2459*/ GIMT_Encode4(113707), // Rule ID 12541 // |
| 40483 | /* 113686 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40484 | /* 113689 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 40485 | /* 113692 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40486 | /* 113696 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40487 | /* 113700 */ // (sext:{ *:[v16i32] } VR256X:{ *:[v16i16] }:$src) => (VPMOVSXWDZrr:{ *:[v16i32] } VR256X:{ *:[v16i16] }:$src) |
| 40488 | /* 113700 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDZrr), |
| 40489 | /* 113705 */ GIR_RootConstrainSelectedInstOperands, |
| 40490 | /* 113706 */ // GIR_Coverage, 12541, |
| 40491 | /* 113706 */ GIR_Done, |
| 40492 | /* 113707 */ // Label 2459: @113707 |
| 40493 | /* 113707 */ GIM_Try, /*On fail goto*//*Label 2460*/ GIMT_Encode4(113733), // Rule ID 12589 // |
| 40494 | /* 113712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 40495 | /* 113715 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 40496 | /* 113718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40497 | /* 113722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 40498 | /* 113726 */ // (sext:{ *:[v16i32] } VK16:{ *:[v16i1] }:$src) => (VPMOVM2DZrk:{ *:[v16i32] } VK16:{ *:[v16i1] }:$src) |
| 40499 | /* 113726 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZrk), |
| 40500 | /* 113731 */ GIR_RootConstrainSelectedInstOperands, |
| 40501 | /* 113732 */ // GIR_Coverage, 12589, |
| 40502 | /* 113732 */ GIR_Done, |
| 40503 | /* 113733 */ // Label 2460: @113733 |
| 40504 | /* 113733 */ GIM_Reject, |
| 40505 | /* 113734 */ // Label 2417: @113734 |
| 40506 | /* 113734 */ GIM_Try, /*On fail goto*//*Label 2461*/ GIMT_Encode4(113760), // Rule ID 12584 // |
| 40507 | /* 113739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 40508 | /* 113742 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 40509 | /* 113745 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40510 | /* 113749 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 40511 | /* 113753 */ // (sext:{ *:[v32i8] } VK32:{ *:[v32i1] }:$src) => (VPMOVM2BZ256rk:{ *:[v32i8] } VK32:{ *:[v32i1] }:$src) |
| 40512 | /* 113753 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2BZ256rk), |
| 40513 | /* 113758 */ GIR_RootConstrainSelectedInstOperands, |
| 40514 | /* 113759 */ // GIR_Coverage, 12584, |
| 40515 | /* 113759 */ GIR_Done, |
| 40516 | /* 113760 */ // Label 2461: @113760 |
| 40517 | /* 113760 */ GIM_Reject, |
| 40518 | /* 113761 */ // Label 2418: @113761 |
| 40519 | /* 113761 */ GIM_Try, /*On fail goto*//*Label 2462*/ GIMT_Encode4(113820), // Rule ID 21586 // |
| 40520 | /* 113766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 40521 | /* 113769 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 40522 | /* 113772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40523 | /* 113776 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40524 | /* 113780 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40525 | /* 113784 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40526 | /* 113787 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40527 | /* 113791 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40528 | /* 113795 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40529 | /* 113797 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40530 | /* 113804 */ // (sext:{ *:[v32i16] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXBWZrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 40531 | /* 113804 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWZrm), |
| 40532 | /* 113807 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40533 | /* 113809 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40534 | /* 113813 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40535 | /* 113818 */ GIR_RootConstrainSelectedInstOperands, |
| 40536 | /* 113819 */ // GIR_Coverage, 21586, |
| 40537 | /* 113819 */ GIR_EraseRootFromParent_Done, |
| 40538 | /* 113820 */ // Label 2462: @113820 |
| 40539 | /* 113820 */ GIM_Try, /*On fail goto*//*Label 2463*/ GIMT_Encode4(113846), // Rule ID 12487 // |
| 40540 | /* 113825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 40541 | /* 113828 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 40542 | /* 113831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40543 | /* 113835 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40544 | /* 113839 */ // (sext:{ *:[v32i16] } VR256X:{ *:[v32i8] }:$src) => (VPMOVSXBWZrr:{ *:[v32i16] } VR256X:{ *:[v32i8] }:$src) |
| 40545 | /* 113839 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWZrr), |
| 40546 | /* 113844 */ GIR_RootConstrainSelectedInstOperands, |
| 40547 | /* 113845 */ // GIR_Coverage, 12487, |
| 40548 | /* 113845 */ GIR_Done, |
| 40549 | /* 113846 */ // Label 2463: @113846 |
| 40550 | /* 113846 */ GIM_Try, /*On fail goto*//*Label 2464*/ GIMT_Encode4(113872), // Rule ID 12586 // |
| 40551 | /* 113851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 40552 | /* 113854 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 40553 | /* 113857 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40554 | /* 113861 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 40555 | /* 113865 */ // (sext:{ *:[v32i16] } VK32:{ *:[v32i1] }:$src) => (VPMOVM2WZrk:{ *:[v32i16] } VK32:{ *:[v32i1] }:$src) |
| 40556 | /* 113865 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2WZrk), |
| 40557 | /* 113870 */ GIR_RootConstrainSelectedInstOperands, |
| 40558 | /* 113871 */ // GIR_Coverage, 12586, |
| 40559 | /* 113871 */ GIR_Done, |
| 40560 | /* 113872 */ // Label 2464: @113872 |
| 40561 | /* 113872 */ GIM_Reject, |
| 40562 | /* 113873 */ // Label 2419: @113873 |
| 40563 | /* 113873 */ GIM_Try, /*On fail goto*//*Label 2465*/ GIMT_Encode4(113899), // Rule ID 12583 // |
| 40564 | /* 113878 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 40565 | /* 113881 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 40566 | /* 113884 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40567 | /* 113888 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 40568 | /* 113892 */ // (sext:{ *:[v64i8] } VK64:{ *:[v64i1] }:$src) => (VPMOVM2BZrk:{ *:[v64i8] } VK64:{ *:[v64i1] }:$src) |
| 40569 | /* 113892 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2BZrk), |
| 40570 | /* 113897 */ GIR_RootConstrainSelectedInstOperands, |
| 40571 | /* 113898 */ // GIR_Coverage, 12583, |
| 40572 | /* 113898 */ GIR_Done, |
| 40573 | /* 113899 */ // Label 2465: @113899 |
| 40574 | /* 113899 */ GIM_Reject, |
| 40575 | /* 113900 */ // Label 2420: @113900 |
| 40576 | /* 113900 */ GIM_Reject, |
| 40577 | /* 113901 */ // Label 24: @113901 |
| 40578 | /* 113901 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(4), /*)*//*default:*//*Label 2468*/ GIMT_Encode4(114142), |
| 40579 | /* 113912 */ /*GILLT_s16*//*Label 2466*/ GIMT_Encode4(113920), |
| 40580 | /* 113916 */ /*GILLT_s32*//*Label 2467*/ GIMT_Encode4(114016), |
| 40581 | /* 113920 */ // Label 2466: @113920 |
| 40582 | /* 113920 */ GIM_Try, /*On fail goto*//*Label 2469*/ GIMT_Encode4(114015), // Rule ID 22643 // |
| 40583 | /* 113925 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40584 | /* 113928 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 40585 | /* 113932 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 40586 | /* 113936 */ // MIs[0] Operand 2 |
| 40587 | /* 113936 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 40588 | /* 113947 */ // (sext_inreg:{ *:[i16] } GR16:{ *:[i16] }:$src, i8:{ *:[Other] }) => (EXTRACT_SUBREG:{ *:[i16] } (MOVSX32rr8:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i8] } GR16:{ *:[i16] }:$src, sub_8bit:{ *:[i32] })), sub_16bit:{ *:[i32] }) |
| 40589 | /* 113947 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s8, |
| 40590 | /* 113950 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40591 | /* 113954 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40592 | /* 113959 */ GIR_CopySubReg, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src |
| 40593 | /* 113965 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 40594 | /* 113970 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 40595 | /* 113975 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40596 | /* 113978 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr8), |
| 40597 | /* 113982 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40598 | /* 113987 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 40599 | /* 113990 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40600 | /* 113992 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40601 | /* 113995 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40602 | /* 113997 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 40603 | /* 114004 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 40604 | /* 114009 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 40605 | /* 114014 */ // GIR_Coverage, 22643, |
| 40606 | /* 114014 */ GIR_EraseRootFromParent_Done, |
| 40607 | /* 114015 */ // Label 2469: @114015 |
| 40608 | /* 114015 */ GIM_Reject, |
| 40609 | /* 114016 */ // Label 2467: @114016 |
| 40610 | /* 114016 */ GIM_Try, /*On fail goto*//*Label 2470*/ GIMT_Encode4(114141), |
| 40611 | /* 114021 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 40612 | /* 114024 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40613 | /* 114028 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40614 | /* 114032 */ GIM_Try, /*On fail goto*//*Label 2471*/ GIMT_Encode4(114086), // Rule ID 22641 // |
| 40615 | /* 114037 */ // MIs[0] Operand 2 |
| 40616 | /* 114037 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(16), |
| 40617 | /* 114048 */ // (sext_inreg:{ *:[i32] } GR32:{ *:[i32] }:$src, i16:{ *:[Other] }) => (MOVSX32rr16:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i16] } GR32:{ *:[i32] }:$src, sub_16bit:{ *:[i32] })) |
| 40618 | /* 114048 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 40619 | /* 114051 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40620 | /* 114055 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40621 | /* 114060 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(4), // src |
| 40622 | /* 114066 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 40623 | /* 114071 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 40624 | /* 114076 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr16), |
| 40625 | /* 114079 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40626 | /* 114081 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40627 | /* 114084 */ GIR_RootConstrainSelectedInstOperands, |
| 40628 | /* 114085 */ // GIR_Coverage, 22641, |
| 40629 | /* 114085 */ GIR_EraseRootFromParent_Done, |
| 40630 | /* 114086 */ // Label 2471: @114086 |
| 40631 | /* 114086 */ GIM_Try, /*On fail goto*//*Label 2472*/ GIMT_Encode4(114140), // Rule ID 22642 // |
| 40632 | /* 114091 */ // MIs[0] Operand 2 |
| 40633 | /* 114091 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 40634 | /* 114102 */ // (sext_inreg:{ *:[i32] } GR32:{ *:[i32] }:$src, i8:{ *:[Other] }) => (MOVSX32rr8:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i8] } GR32:{ *:[i32] }:$src, sub_8bit:{ *:[i32] })) |
| 40635 | /* 114102 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s8, |
| 40636 | /* 114105 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40637 | /* 114109 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40638 | /* 114114 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src |
| 40639 | /* 114120 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 40640 | /* 114125 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 40641 | /* 114130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr8), |
| 40642 | /* 114133 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40643 | /* 114135 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40644 | /* 114138 */ GIR_RootConstrainSelectedInstOperands, |
| 40645 | /* 114139 */ // GIR_Coverage, 22642, |
| 40646 | /* 114139 */ GIR_EraseRootFromParent_Done, |
| 40647 | /* 114140 */ // Label 2472: @114140 |
| 40648 | /* 114140 */ GIM_Reject, |
| 40649 | /* 114141 */ // Label 2470: @114141 |
| 40650 | /* 114141 */ GIM_Reject, |
| 40651 | /* 114142 */ // Label 2468: @114142 |
| 40652 | /* 114142 */ GIM_Reject, |
| 40653 | /* 114143 */ // Label 25: @114143 |
| 40654 | /* 114143 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 2482*/ GIMT_Encode4(116126), |
| 40655 | /* 114154 */ /*GILLT_s16*//*Label 2473*/ GIMT_Encode4(114238), |
| 40656 | /* 114158 */ /*GILLT_s32*//*Label 2474*/ GIMT_Encode4(114296), |
| 40657 | /* 114162 */ /*GILLT_s64*//*Label 2475*/ GIMT_Encode4(114648), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 40658 | /* 114190 */ /*GILLT_v4s64*//*Label 2476*/ GIMT_Encode4(115195), GIMT_Encode4(0), GIMT_Encode4(0), |
| 40659 | /* 114202 */ /*GILLT_v8s32*//*Label 2477*/ GIMT_Encode4(115363), |
| 40660 | /* 114206 */ /*GILLT_v8s64*//*Label 2478*/ GIMT_Encode4(115531), GIMT_Encode4(0), GIMT_Encode4(0), |
| 40661 | /* 114218 */ /*GILLT_v16s16*//*Label 2479*/ GIMT_Encode4(115702), |
| 40662 | /* 114222 */ /*GILLT_v16s32*//*Label 2480*/ GIMT_Encode4(115870), GIMT_Encode4(0), GIMT_Encode4(0), |
| 40663 | /* 114234 */ /*GILLT_v32s16*//*Label 2481*/ GIMT_Encode4(116041), |
| 40664 | /* 114238 */ // Label 2473: @114238 |
| 40665 | /* 114238 */ GIM_Try, /*On fail goto*//*Label 2483*/ GIMT_Encode4(114295), // Rule ID 22649 // |
| 40666 | /* 114243 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 40667 | /* 114246 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 40668 | /* 114250 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40669 | /* 114254 */ // (zext:{ *:[i16] } GR8:{ *:[i8] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src), sub_16bit:{ *:[i32] }) |
| 40670 | /* 114254 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40671 | /* 114257 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 40672 | /* 114261 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40673 | /* 114266 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 40674 | /* 114270 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40675 | /* 114272 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40676 | /* 114275 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40677 | /* 114277 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 40678 | /* 114284 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 40679 | /* 114289 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 40680 | /* 114294 */ // GIR_Coverage, 22649, |
| 40681 | /* 114294 */ GIR_EraseRootFromParent_Done, |
| 40682 | /* 114295 */ // Label 2483: @114295 |
| 40683 | /* 114295 */ GIM_Reject, |
| 40684 | /* 114296 */ // Label 2474: @114296 |
| 40685 | /* 114296 */ GIM_Try, /*On fail goto*//*Label 2484*/ GIMT_Encode4(114419), // Rule ID 22973 // |
| 40686 | /* 114301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasZU), |
| 40687 | /* 114304 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40688 | /* 114307 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 40689 | /* 114311 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40690 | /* 114315 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 40691 | /* 114319 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 40692 | /* 114323 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 40693 | /* 114327 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 40694 | /* 114331 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40695 | /* 114335 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40696 | /* 114338 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 40697 | /* 114342 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 40698 | /* 114346 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 40699 | /* 114350 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40700 | /* 114354 */ // MIs[3] Operand 1 |
| 40701 | /* 114354 */ // No operand predicates |
| 40702 | /* 114354 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 40703 | /* 114356 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40704 | /* 114363 */ // (zext:{ *:[i32] } (mul:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i16] }):$src2)) => (SUBREG_TO_REG:{ *:[i32] } 0:{ *:[i32] }, (IMULZU16rmi:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i16] }):$src2), sub_16bit:{ *:[i32] }) |
| 40705 | /* 114363 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 40706 | /* 114366 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::IMULZU16rmi), |
| 40707 | /* 114370 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40708 | /* 114375 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src1 |
| 40709 | /* 114379 */ GIR_CopyConstantAsSImm, /*NewInsnID*/1, /*OldInsnID*/3, // src2 |
| 40710 | /* 114382 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 40711 | /* 114385 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 40712 | /* 114392 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40713 | /* 114394 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 40714 | /* 114397 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40715 | /* 114399 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 40716 | /* 114402 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40717 | /* 114405 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/4, |
| 40718 | /* 114408 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 40719 | /* 114413 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 40720 | /* 114418 */ // GIR_Coverage, 22973, |
| 40721 | /* 114418 */ GIR_EraseRootFromParent_Done, |
| 40722 | /* 114419 */ // Label 2484: @114419 |
| 40723 | /* 114419 */ GIM_Try, /*On fail goto*//*Label 2485*/ GIMT_Encode4(114514), // Rule ID 22972 // |
| 40724 | /* 114424 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasZU), |
| 40725 | /* 114427 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40726 | /* 114430 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 40727 | /* 114434 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40728 | /* 114438 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 40729 | /* 114442 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 40730 | /* 114446 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 40731 | /* 114450 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 40732 | /* 114455 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 40733 | /* 114459 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40734 | /* 114463 */ // MIs[2] Operand 1 |
| 40735 | /* 114463 */ // No operand predicates |
| 40736 | /* 114463 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 40737 | /* 114465 */ // (zext:{ *:[i32] } (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2)) => (SUBREG_TO_REG:{ *:[i32] } 0:{ *:[i32] }, (IMULZU16rri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2), sub_16bit:{ *:[i32] }) |
| 40738 | /* 114465 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 40739 | /* 114468 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::IMULZU16rri), |
| 40740 | /* 114472 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40741 | /* 114477 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 40742 | /* 114481 */ GIR_CopyConstantAsSImm, /*NewInsnID*/1, /*OldInsnID*/2, // src2 |
| 40743 | /* 114484 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 40744 | /* 114487 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40745 | /* 114489 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 40746 | /* 114492 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40747 | /* 114494 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 40748 | /* 114497 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40749 | /* 114500 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/4, |
| 40750 | /* 114503 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 40751 | /* 114508 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 40752 | /* 114513 */ // GIR_Coverage, 22972, |
| 40753 | /* 114513 */ GIR_EraseRootFromParent_Done, |
| 40754 | /* 114514 */ // Label 2485: @114514 |
| 40755 | /* 114514 */ GIM_Try, /*On fail goto*//*Label 2486*/ GIMT_Encode4(114556), // Rule ID 19435 // |
| 40756 | /* 114519 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40757 | /* 114522 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40758 | /* 114526 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40759 | /* 114530 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 40760 | /* 114534 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 40761 | /* 114538 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 40762 | /* 114543 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40763 | /* 114545 */ // (zext:{ *:[i32] } (bitconvert:{ *:[i16] } VK16:{ *:[v16i1] }:$src)) => (KMOVWrk:{ *:[i32] } VK16:{ *:[v16i1] }:$src) |
| 40764 | /* 114545 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWrk), |
| 40765 | /* 114548 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40766 | /* 114550 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 40767 | /* 114554 */ GIR_RootConstrainSelectedInstOperands, |
| 40768 | /* 114555 */ // GIR_Coverage, 19435, |
| 40769 | /* 114555 */ GIR_EraseRootFromParent_Done, |
| 40770 | /* 114556 */ // Label 2486: @114556 |
| 40771 | /* 114556 */ GIM_Try, /*On fail goto*//*Label 2487*/ GIMT_Encode4(114601), // Rule ID 19438 // |
| 40772 | /* 114561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 40773 | /* 114564 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 40774 | /* 114567 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40775 | /* 114571 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40776 | /* 114575 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 40777 | /* 114579 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 40778 | /* 114583 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 40779 | /* 114588 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40780 | /* 114590 */ // (zext:{ *:[i32] } (bitconvert:{ *:[i8] } VK8:{ *:[v8i1] }:$src)) => (KMOVBrk:{ *:[i32] } VK8:{ *:[v8i1] }:$src) |
| 40781 | /* 114590 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVBrk), |
| 40782 | /* 114593 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40783 | /* 114595 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 40784 | /* 114599 */ GIR_RootConstrainSelectedInstOperands, |
| 40785 | /* 114600 */ // GIR_Coverage, 19438, |
| 40786 | /* 114600 */ GIR_EraseRootFromParent_Done, |
| 40787 | /* 114601 */ // Label 2487: @114601 |
| 40788 | /* 114601 */ GIM_Try, /*On fail goto*//*Label 2488*/ GIMT_Encode4(114624), // Rule ID 618 // |
| 40789 | /* 114606 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 40790 | /* 114609 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40791 | /* 114613 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40792 | /* 114617 */ // (zext:{ *:[i32] } GR8:{ *:[i8] }:$src) => (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 40793 | /* 114617 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 40794 | /* 114622 */ GIR_RootConstrainSelectedInstOperands, |
| 40795 | /* 114623 */ // GIR_Coverage, 618, |
| 40796 | /* 114623 */ GIR_Done, |
| 40797 | /* 114624 */ // Label 2488: @114624 |
| 40798 | /* 114624 */ GIM_Try, /*On fail goto*//*Label 2489*/ GIMT_Encode4(114647), // Rule ID 620 // |
| 40799 | /* 114629 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40800 | /* 114632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40801 | /* 114636 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 40802 | /* 114640 */ // (zext:{ *:[i32] } GR16:{ *:[i16] }:$src) => (MOVZX32rr16:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 40803 | /* 114640 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr16), |
| 40804 | /* 114645 */ GIR_RootConstrainSelectedInstOperands, |
| 40805 | /* 114646 */ // GIR_Coverage, 620, |
| 40806 | /* 114646 */ GIR_Done, |
| 40807 | /* 114647 */ // Label 2489: @114647 |
| 40808 | /* 114647 */ GIM_Reject, |
| 40809 | /* 114648 */ // Label 2475: @114648 |
| 40810 | /* 114648 */ GIM_Try, /*On fail goto*//*Label 2490*/ GIMT_Encode4(114771), // Rule ID 22975 // |
| 40811 | /* 114653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasZU), |
| 40812 | /* 114656 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40813 | /* 114659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40814 | /* 114663 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40815 | /* 114667 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 40816 | /* 114671 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 40817 | /* 114675 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 40818 | /* 114679 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 40819 | /* 114683 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40820 | /* 114687 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40821 | /* 114690 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 40822 | /* 114694 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 40823 | /* 114698 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 40824 | /* 114702 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40825 | /* 114706 */ // MIs[3] Operand 1 |
| 40826 | /* 114706 */ // No operand predicates |
| 40827 | /* 114706 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 40828 | /* 114708 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40829 | /* 114715 */ // (zext:{ *:[i64] } (mul:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i16] }):$src2)) => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (IMULZU16rmi:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i16] }):$src2), sub_16bit:{ *:[i32] }) |
| 40830 | /* 114715 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 40831 | /* 114718 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::IMULZU16rmi), |
| 40832 | /* 114722 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40833 | /* 114727 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src1 |
| 40834 | /* 114731 */ GIR_CopyConstantAsSImm, /*NewInsnID*/1, /*OldInsnID*/3, // src2 |
| 40835 | /* 114734 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 40836 | /* 114737 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 40837 | /* 114744 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40838 | /* 114746 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 40839 | /* 114749 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40840 | /* 114751 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 40841 | /* 114754 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40842 | /* 114757 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/4, |
| 40843 | /* 114760 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 40844 | /* 114765 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 40845 | /* 114770 */ // GIR_Coverage, 22975, |
| 40846 | /* 114770 */ GIR_EraseRootFromParent_Done, |
| 40847 | /* 114771 */ // Label 2490: @114771 |
| 40848 | /* 114771 */ GIM_Try, /*On fail goto*//*Label 2491*/ GIMT_Encode4(114866), // Rule ID 22974 // |
| 40849 | /* 114776 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasZU), |
| 40850 | /* 114779 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40851 | /* 114782 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40852 | /* 114786 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40853 | /* 114790 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 40854 | /* 114794 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 40855 | /* 114798 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 40856 | /* 114802 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 40857 | /* 114807 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 40858 | /* 114811 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40859 | /* 114815 */ // MIs[2] Operand 1 |
| 40860 | /* 114815 */ // No operand predicates |
| 40861 | /* 114815 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 40862 | /* 114817 */ // (zext:{ *:[i64] } (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2)) => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (IMULZU16rri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2), sub_16bit:{ *:[i32] }) |
| 40863 | /* 114817 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 40864 | /* 114820 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::IMULZU16rri), |
| 40865 | /* 114824 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40866 | /* 114829 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 40867 | /* 114833 */ GIR_CopyConstantAsSImm, /*NewInsnID*/1, /*OldInsnID*/2, // src2 |
| 40868 | /* 114836 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 40869 | /* 114839 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40870 | /* 114841 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 40871 | /* 114844 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40872 | /* 114846 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 40873 | /* 114849 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40874 | /* 114852 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/4, |
| 40875 | /* 114855 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 40876 | /* 114860 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 40877 | /* 114865 */ // GIR_Coverage, 22974, |
| 40878 | /* 114865 */ GIR_EraseRootFromParent_Done, |
| 40879 | /* 114866 */ // Label 2491: @114866 |
| 40880 | /* 114866 */ GIM_Try, /*On fail goto*//*Label 2492*/ GIMT_Encode4(114940), // Rule ID 19436 // |
| 40881 | /* 114871 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40882 | /* 114874 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40883 | /* 114878 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40884 | /* 114882 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 40885 | /* 114886 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 40886 | /* 114890 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 40887 | /* 114895 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40888 | /* 114897 */ // (zext:{ *:[i64] } (bitconvert:{ *:[i16] } VK16:{ *:[v16i1] }:$src)) => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (KMOVWrk:{ *:[i32] } VK16:{ *:[v16i1] }:$src), sub_32bit:{ *:[i32] }) |
| 40889 | /* 114897 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40890 | /* 114900 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVWrk), |
| 40891 | /* 114904 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40892 | /* 114909 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 40893 | /* 114913 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40894 | /* 114915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 40895 | /* 114918 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40896 | /* 114920 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 40897 | /* 114923 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40898 | /* 114926 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 40899 | /* 114929 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 40900 | /* 114934 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 40901 | /* 114939 */ // GIR_Coverage, 19436, |
| 40902 | /* 114939 */ GIR_EraseRootFromParent_Done, |
| 40903 | /* 114940 */ // Label 2492: @114940 |
| 40904 | /* 114940 */ GIM_Try, /*On fail goto*//*Label 2493*/ GIMT_Encode4(115017), // Rule ID 19439 // |
| 40905 | /* 114945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 40906 | /* 114948 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 40907 | /* 114951 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40908 | /* 114955 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40909 | /* 114959 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 40910 | /* 114963 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 40911 | /* 114967 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 40912 | /* 114972 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40913 | /* 114974 */ // (zext:{ *:[i64] } (bitconvert:{ *:[i8] } VK8:{ *:[v8i1] }:$src)) => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (KMOVBrk:{ *:[i32] } VK8:{ *:[v8i1] }:$src), sub_32bit:{ *:[i32] }) |
| 40914 | /* 114974 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40915 | /* 114977 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVBrk), |
| 40916 | /* 114981 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40917 | /* 114986 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 40918 | /* 114990 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40919 | /* 114992 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 40920 | /* 114995 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40921 | /* 114997 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 40922 | /* 115000 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40923 | /* 115003 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 40924 | /* 115006 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 40925 | /* 115011 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 40926 | /* 115016 */ // GIR_Coverage, 19439, |
| 40927 | /* 115016 */ GIR_EraseRootFromParent_Done, |
| 40928 | /* 115017 */ // Label 2493: @115017 |
| 40929 | /* 115017 */ GIM_Try, /*On fail goto*//*Label 2494*/ GIMT_Encode4(115076), // Rule ID 17590 // |
| 40930 | /* 115022 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 40931 | /* 115025 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40932 | /* 115029 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40933 | /* 115033 */ // (zext:{ *:[i64] } GR8:{ *:[i8] }:$src) => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src), sub_32bit:{ *:[i32] }) |
| 40934 | /* 115033 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40935 | /* 115036 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 40936 | /* 115040 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40937 | /* 115045 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 40938 | /* 115049 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40939 | /* 115051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 40940 | /* 115054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40941 | /* 115056 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 40942 | /* 115059 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40943 | /* 115062 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 40944 | /* 115065 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 40945 | /* 115070 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 40946 | /* 115075 */ // GIR_Coverage, 17590, |
| 40947 | /* 115075 */ GIR_EraseRootFromParent_Done, |
| 40948 | /* 115076 */ // Label 2494: @115076 |
| 40949 | /* 115076 */ GIM_Try, /*On fail goto*//*Label 2495*/ GIMT_Encode4(115135), // Rule ID 17592 // |
| 40950 | /* 115081 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40951 | /* 115084 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40952 | /* 115088 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 40953 | /* 115092 */ // (zext:{ *:[i64] } GR16:{ *:[i16] }:$src) => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOVZX32rr16:{ *:[i32] } GR16:{ *:[i16] }:$src), sub_32bit:{ *:[i32] }) |
| 40954 | /* 115092 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40955 | /* 115095 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr16), |
| 40956 | /* 115099 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40957 | /* 115104 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 40958 | /* 115108 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40959 | /* 115110 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 40960 | /* 115113 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40961 | /* 115115 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 40962 | /* 115118 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40963 | /* 115121 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 40964 | /* 115124 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 40965 | /* 115129 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 40966 | /* 115134 */ // GIR_Coverage, 17592, |
| 40967 | /* 115134 */ GIR_EraseRootFromParent_Done, |
| 40968 | /* 115135 */ // Label 2495: @115135 |
| 40969 | /* 115135 */ GIM_Try, /*On fail goto*//*Label 2496*/ GIMT_Encode4(115194), // Rule ID 17594 // |
| 40970 | /* 115140 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 40971 | /* 115143 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40972 | /* 115147 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40973 | /* 115151 */ // (zext:{ *:[i64] } GR32:{ *:[i32] }:$src) => (SUBREG_TO_REG:{ *:[i64] } 0:{ *:[i64] }, (MOV32rr:{ *:[i32] } GR32:{ *:[i32] }:$src), sub_32bit:{ *:[i32] }) |
| 40974 | /* 115151 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40975 | /* 115154 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32rr), |
| 40976 | /* 115158 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 40977 | /* 115163 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 40978 | /* 115167 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40979 | /* 115169 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 40980 | /* 115172 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40981 | /* 115174 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 40982 | /* 115177 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40983 | /* 115180 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 40984 | /* 115183 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 40985 | /* 115188 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 40986 | /* 115193 */ // GIR_Coverage, 17594, |
| 40987 | /* 115193 */ GIR_EraseRootFromParent_Done, |
| 40988 | /* 115194 */ // Label 2496: @115194 |
| 40989 | /* 115194 */ GIM_Reject, |
| 40990 | /* 115195 */ // Label 2476: @115195 |
| 40991 | /* 115195 */ GIM_Try, /*On fail goto*//*Label 2497*/ GIMT_Encode4(115362), |
| 40992 | /* 115200 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 40993 | /* 115203 */ GIM_Try, /*On fail goto*//*Label 2498*/ GIMT_Encode4(115259), // Rule ID 18413 // |
| 40994 | /* 115208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 40995 | /* 115211 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40996 | /* 115215 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40997 | /* 115219 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40998 | /* 115223 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40999 | /* 115226 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41000 | /* 115230 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41001 | /* 115234 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41002 | /* 115236 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41003 | /* 115243 */ // (zext:{ *:[v4i64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXDQYrm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 41004 | /* 115243 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQYrm), |
| 41005 | /* 115246 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41006 | /* 115248 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41007 | /* 115252 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41008 | /* 115257 */ GIR_RootConstrainSelectedInstOperands, |
| 41009 | /* 115258 */ // GIR_Coverage, 18413, |
| 41010 | /* 115258 */ GIR_EraseRootFromParent_Done, |
| 41011 | /* 115259 */ // Label 2498: @115259 |
| 41012 | /* 115259 */ GIM_Try, /*On fail goto*//*Label 2499*/ GIMT_Encode4(115315), // Rule ID 21618 // |
| 41013 | /* 115264 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 41014 | /* 115267 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 41015 | /* 115271 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41016 | /* 115275 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41017 | /* 115279 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41018 | /* 115282 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41019 | /* 115286 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41020 | /* 115290 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41021 | /* 115292 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41022 | /* 115299 */ // (zext:{ *:[v4i64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXDQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 41023 | /* 115299 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQZ256rm), |
| 41024 | /* 115302 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41025 | /* 115304 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41026 | /* 115308 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41027 | /* 115313 */ GIR_RootConstrainSelectedInstOperands, |
| 41028 | /* 115314 */ // GIR_Coverage, 21618, |
| 41029 | /* 115314 */ GIR_EraseRootFromParent_Done, |
| 41030 | /* 115315 */ // Label 2499: @115315 |
| 41031 | /* 115315 */ GIM_Try, /*On fail goto*//*Label 2500*/ GIMT_Encode4(115338), // Rule ID 12463 // |
| 41032 | /* 115320 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 41033 | /* 115323 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 41034 | /* 115327 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 41035 | /* 115331 */ // (zext:{ *:[v4i64] } VR128X:{ *:[v4i32] }:$src) => (VPMOVZXDQZ256rr:{ *:[v4i64] } VR128X:{ *:[v4i32] }:$src) |
| 41036 | /* 115331 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQZ256rr), |
| 41037 | /* 115336 */ GIR_RootConstrainSelectedInstOperands, |
| 41038 | /* 115337 */ // GIR_Coverage, 12463, |
| 41039 | /* 115337 */ GIR_Done, |
| 41040 | /* 115338 */ // Label 2500: @115338 |
| 41041 | /* 115338 */ GIM_Try, /*On fail goto*//*Label 2501*/ GIMT_Encode4(115361), // Rule ID 18401 // |
| 41042 | /* 115343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 41043 | /* 115346 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 41044 | /* 115350 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 41045 | /* 115354 */ // (zext:{ *:[v4i64] } VR128:{ *:[v4i32] }:$src) => (VPMOVZXDQYrr:{ *:[v4i64] } VR128:{ *:[v4i32] }:$src) |
| 41046 | /* 115354 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQYrr), |
| 41047 | /* 115359 */ GIR_RootConstrainSelectedInstOperands, |
| 41048 | /* 115360 */ // GIR_Coverage, 18401, |
| 41049 | /* 115360 */ GIR_Done, |
| 41050 | /* 115361 */ // Label 2501: @115361 |
| 41051 | /* 115361 */ GIM_Reject, |
| 41052 | /* 115362 */ // Label 2497: @115362 |
| 41053 | /* 115362 */ GIM_Reject, |
| 41054 | /* 115363 */ // Label 2477: @115363 |
| 41055 | /* 115363 */ GIM_Try, /*On fail goto*//*Label 2502*/ GIMT_Encode4(115530), |
| 41056 | /* 115368 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 41057 | /* 115371 */ GIM_Try, /*On fail goto*//*Label 2503*/ GIMT_Encode4(115427), // Rule ID 18409 // |
| 41058 | /* 115376 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 41059 | /* 115379 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 41060 | /* 115383 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41061 | /* 115387 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41062 | /* 115391 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41063 | /* 115394 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41064 | /* 115398 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41065 | /* 115402 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41066 | /* 115404 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41067 | /* 115411 */ // (zext:{ *:[v8i32] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXWDYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 41068 | /* 115411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDYrm), |
| 41069 | /* 115414 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41070 | /* 115416 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41071 | /* 115420 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41072 | /* 115425 */ GIR_RootConstrainSelectedInstOperands, |
| 41073 | /* 115426 */ // GIR_Coverage, 18409, |
| 41074 | /* 115426 */ GIR_EraseRootFromParent_Done, |
| 41075 | /* 115427 */ // Label 2503: @115427 |
| 41076 | /* 115427 */ GIM_Try, /*On fail goto*//*Label 2504*/ GIMT_Encode4(115483), // Rule ID 21617 // |
| 41077 | /* 115432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 41078 | /* 115435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 41079 | /* 115439 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41080 | /* 115443 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41081 | /* 115447 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41082 | /* 115450 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41083 | /* 115454 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41084 | /* 115458 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41085 | /* 115460 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41086 | /* 115467 */ // (zext:{ *:[v8i32] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXWDZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 41087 | /* 115467 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZ256rm), |
| 41088 | /* 115470 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41089 | /* 115472 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41090 | /* 115476 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41091 | /* 115481 */ GIR_RootConstrainSelectedInstOperands, |
| 41092 | /* 115482 */ // GIR_Coverage, 21617, |
| 41093 | /* 115482 */ GIR_EraseRootFromParent_Done, |
| 41094 | /* 115483 */ // Label 2504: @115483 |
| 41095 | /* 115483 */ GIM_Try, /*On fail goto*//*Label 2505*/ GIMT_Encode4(115506), // Rule ID 12427 // |
| 41096 | /* 115488 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 41097 | /* 115491 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 41098 | /* 115495 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 41099 | /* 115499 */ // (zext:{ *:[v8i32] } VR128X:{ *:[v8i16] }:$src) => (VPMOVZXWDZ256rr:{ *:[v8i32] } VR128X:{ *:[v8i16] }:$src) |
| 41100 | /* 115499 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZ256rr), |
| 41101 | /* 115504 */ GIR_RootConstrainSelectedInstOperands, |
| 41102 | /* 115505 */ // GIR_Coverage, 12427, |
| 41103 | /* 115505 */ GIR_Done, |
| 41104 | /* 115506 */ // Label 2505: @115506 |
| 41105 | /* 115506 */ GIM_Try, /*On fail goto*//*Label 2506*/ GIMT_Encode4(115529), // Rule ID 18399 // |
| 41106 | /* 115511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 41107 | /* 115514 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 41108 | /* 115518 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 41109 | /* 115522 */ // (zext:{ *:[v8i32] } VR128:{ *:[v8i16] }:$src) => (VPMOVZXWDYrr:{ *:[v8i32] } VR128:{ *:[v8i16] }:$src) |
| 41110 | /* 115522 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDYrr), |
| 41111 | /* 115527 */ GIR_RootConstrainSelectedInstOperands, |
| 41112 | /* 115528 */ // GIR_Coverage, 18399, |
| 41113 | /* 115528 */ GIR_Done, |
| 41114 | /* 115529 */ // Label 2506: @115529 |
| 41115 | /* 115529 */ GIM_Reject, |
| 41116 | /* 115530 */ // Label 2502: @115530 |
| 41117 | /* 115530 */ GIM_Reject, |
| 41118 | /* 115531 */ // Label 2478: @115531 |
| 41119 | /* 115531 */ GIM_Try, /*On fail goto*//*Label 2507*/ GIMT_Encode4(115590), // Rule ID 21622 // |
| 41120 | /* 115536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 41121 | /* 115539 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 41122 | /* 115542 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 41123 | /* 115546 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41124 | /* 115550 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41125 | /* 115554 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41126 | /* 115557 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41127 | /* 115561 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41128 | /* 115565 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41129 | /* 115567 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41130 | /* 115574 */ // (zext:{ *:[v8i64] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXWQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 41131 | /* 115574 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWQZrm), |
| 41132 | /* 115577 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41133 | /* 115579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41134 | /* 115583 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41135 | /* 115588 */ GIR_RootConstrainSelectedInstOperands, |
| 41136 | /* 115589 */ // GIR_Coverage, 21622, |
| 41137 | /* 115589 */ GIR_EraseRootFromParent_Done, |
| 41138 | /* 115590 */ // Label 2507: @115590 |
| 41139 | /* 115590 */ GIM_Try, /*On fail goto*//*Label 2508*/ GIMT_Encode4(115649), // Rule ID 21623 // |
| 41140 | /* 115595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 41141 | /* 115598 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 41142 | /* 115601 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 41143 | /* 115605 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41144 | /* 115609 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41145 | /* 115613 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41146 | /* 115616 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41147 | /* 115620 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41148 | /* 115624 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41149 | /* 115626 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41150 | /* 115633 */ // (zext:{ *:[v8i64] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXDQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 41151 | /* 115633 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQZrm), |
| 41152 | /* 115636 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41153 | /* 115638 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41154 | /* 115642 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41155 | /* 115647 */ GIR_RootConstrainSelectedInstOperands, |
| 41156 | /* 115648 */ // GIR_Coverage, 21623, |
| 41157 | /* 115648 */ GIR_EraseRootFromParent_Done, |
| 41158 | /* 115649 */ // Label 2508: @115649 |
| 41159 | /* 115649 */ GIM_Try, /*On fail goto*//*Label 2509*/ GIMT_Encode4(115675), // Rule ID 12451 // |
| 41160 | /* 115654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 41161 | /* 115657 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 41162 | /* 115660 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 41163 | /* 115664 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 41164 | /* 115668 */ // (zext:{ *:[v8i64] } VR128X:{ *:[v8i16] }:$src) => (VPMOVZXWQZrr:{ *:[v8i64] } VR128X:{ *:[v8i16] }:$src) |
| 41165 | /* 115668 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWQZrr), |
| 41166 | /* 115673 */ GIR_RootConstrainSelectedInstOperands, |
| 41167 | /* 115674 */ // GIR_Coverage, 12451, |
| 41168 | /* 115674 */ GIR_Done, |
| 41169 | /* 115675 */ // Label 2509: @115675 |
| 41170 | /* 115675 */ GIM_Try, /*On fail goto*//*Label 2510*/ GIMT_Encode4(115701), // Rule ID 12469 // |
| 41171 | /* 115680 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 41172 | /* 115683 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 41173 | /* 115686 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 41174 | /* 115690 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 41175 | /* 115694 */ // (zext:{ *:[v8i64] } VR256X:{ *:[v8i32] }:$src) => (VPMOVZXDQZrr:{ *:[v8i64] } VR256X:{ *:[v8i32] }:$src) |
| 41176 | /* 115694 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQZrr), |
| 41177 | /* 115699 */ GIR_RootConstrainSelectedInstOperands, |
| 41178 | /* 115700 */ // GIR_Coverage, 12469, |
| 41179 | /* 115700 */ GIR_Done, |
| 41180 | /* 115701 */ // Label 2510: @115701 |
| 41181 | /* 115701 */ GIM_Reject, |
| 41182 | /* 115702 */ // Label 2479: @115702 |
| 41183 | /* 115702 */ GIM_Try, /*On fail goto*//*Label 2511*/ GIMT_Encode4(115869), |
| 41184 | /* 115707 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 41185 | /* 115710 */ GIM_Try, /*On fail goto*//*Label 2512*/ GIMT_Encode4(115766), // Rule ID 18403 // |
| 41186 | /* 115715 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 41187 | /* 115718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 41188 | /* 115722 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41189 | /* 115726 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41190 | /* 115730 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41191 | /* 115733 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41192 | /* 115737 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41193 | /* 115741 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41194 | /* 115743 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41195 | /* 115750 */ // (zext:{ *:[v16i16] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXBWYrm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 41196 | /* 115750 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWYrm), |
| 41197 | /* 115753 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41198 | /* 115755 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41199 | /* 115759 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41200 | /* 115764 */ GIR_RootConstrainSelectedInstOperands, |
| 41201 | /* 115765 */ // GIR_Coverage, 18403, |
| 41202 | /* 115765 */ GIR_EraseRootFromParent_Done, |
| 41203 | /* 115766 */ // Label 2512: @115766 |
| 41204 | /* 115766 */ GIM_Try, /*On fail goto*//*Label 2513*/ GIMT_Encode4(115822), // Rule ID 21616 // |
| 41205 | /* 115771 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 41206 | /* 115774 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 41207 | /* 115778 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41208 | /* 115782 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41209 | /* 115786 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41210 | /* 115789 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41211 | /* 115793 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41212 | /* 115797 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41213 | /* 115799 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41214 | /* 115806 */ // (zext:{ *:[v16i16] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXBWZ256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 41215 | /* 115806 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWZ256rm), |
| 41216 | /* 115809 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41217 | /* 115811 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41218 | /* 115815 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41219 | /* 115820 */ GIR_RootConstrainSelectedInstOperands, |
| 41220 | /* 115821 */ // GIR_Coverage, 21616, |
| 41221 | /* 115821 */ GIR_EraseRootFromParent_Done, |
| 41222 | /* 115822 */ // Label 2513: @115822 |
| 41223 | /* 115822 */ GIM_Try, /*On fail goto*//*Label 2514*/ GIMT_Encode4(115845), // Rule ID 12373 // |
| 41224 | /* 115827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 41225 | /* 115830 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 41226 | /* 115834 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 41227 | /* 115838 */ // (zext:{ *:[v16i16] } VR128X:{ *:[v16i8] }:$src) => (VPMOVZXBWZ256rr:{ *:[v16i16] } VR128X:{ *:[v16i8] }:$src) |
| 41228 | /* 115838 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWZ256rr), |
| 41229 | /* 115843 */ GIR_RootConstrainSelectedInstOperands, |
| 41230 | /* 115844 */ // GIR_Coverage, 12373, |
| 41231 | /* 115844 */ GIR_Done, |
| 41232 | /* 115845 */ // Label 2514: @115845 |
| 41233 | /* 115845 */ GIM_Try, /*On fail goto*//*Label 2515*/ GIMT_Encode4(115868), // Rule ID 18396 // |
| 41234 | /* 115850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 41235 | /* 115853 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 41236 | /* 115857 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 41237 | /* 115861 */ // (zext:{ *:[v16i16] } VR128:{ *:[v16i8] }:$src) => (VPMOVZXBWYrr:{ *:[v16i16] } VR128:{ *:[v16i8] }:$src) |
| 41238 | /* 115861 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWYrr), |
| 41239 | /* 115866 */ GIR_RootConstrainSelectedInstOperands, |
| 41240 | /* 115867 */ // GIR_Coverage, 18396, |
| 41241 | /* 115867 */ GIR_Done, |
| 41242 | /* 115868 */ // Label 2515: @115868 |
| 41243 | /* 115868 */ GIM_Reject, |
| 41244 | /* 115869 */ // Label 2511: @115869 |
| 41245 | /* 115869 */ GIM_Reject, |
| 41246 | /* 115870 */ // Label 2480: @115870 |
| 41247 | /* 115870 */ GIM_Try, /*On fail goto*//*Label 2516*/ GIMT_Encode4(115929), // Rule ID 21620 // |
| 41248 | /* 115875 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 41249 | /* 115878 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 41250 | /* 115881 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 41251 | /* 115885 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41252 | /* 115889 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41253 | /* 115893 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41254 | /* 115896 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41255 | /* 115900 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41256 | /* 115904 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41257 | /* 115906 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41258 | /* 115913 */ // (zext:{ *:[v16i32] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXBDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 41259 | /* 115913 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBDZrm), |
| 41260 | /* 115916 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41261 | /* 115918 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41262 | /* 115922 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41263 | /* 115927 */ GIR_RootConstrainSelectedInstOperands, |
| 41264 | /* 115928 */ // GIR_Coverage, 21620, |
| 41265 | /* 115928 */ GIR_EraseRootFromParent_Done, |
| 41266 | /* 115929 */ // Label 2516: @115929 |
| 41267 | /* 115929 */ GIM_Try, /*On fail goto*//*Label 2517*/ GIMT_Encode4(115988), // Rule ID 21621 // |
| 41268 | /* 115934 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 41269 | /* 115937 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 41270 | /* 115940 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 41271 | /* 115944 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41272 | /* 115948 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41273 | /* 115952 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41274 | /* 115955 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41275 | /* 115959 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41276 | /* 115963 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41277 | /* 115965 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41278 | /* 115972 */ // (zext:{ *:[v16i32] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXWDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 41279 | /* 115972 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZrm), |
| 41280 | /* 115975 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41281 | /* 115977 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41282 | /* 115981 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41283 | /* 115986 */ GIR_RootConstrainSelectedInstOperands, |
| 41284 | /* 115987 */ // GIR_Coverage, 21621, |
| 41285 | /* 115987 */ GIR_EraseRootFromParent_Done, |
| 41286 | /* 115988 */ // Label 2517: @115988 |
| 41287 | /* 115988 */ GIM_Try, /*On fail goto*//*Label 2518*/ GIMT_Encode4(116014), // Rule ID 12397 // |
| 41288 | /* 115993 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 41289 | /* 115996 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 41290 | /* 115999 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 41291 | /* 116003 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 41292 | /* 116007 */ // (zext:{ *:[v16i32] } VR128X:{ *:[v16i8] }:$src) => (VPMOVZXBDZrr:{ *:[v16i32] } VR128X:{ *:[v16i8] }:$src) |
| 41293 | /* 116007 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBDZrr), |
| 41294 | /* 116012 */ GIR_RootConstrainSelectedInstOperands, |
| 41295 | /* 116013 */ // GIR_Coverage, 12397, |
| 41296 | /* 116013 */ GIR_Done, |
| 41297 | /* 116014 */ // Label 2518: @116014 |
| 41298 | /* 116014 */ GIM_Try, /*On fail goto*//*Label 2519*/ GIMT_Encode4(116040), // Rule ID 12433 // |
| 41299 | /* 116019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 41300 | /* 116022 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 41301 | /* 116025 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 41302 | /* 116029 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 41303 | /* 116033 */ // (zext:{ *:[v16i32] } VR256X:{ *:[v16i16] }:$src) => (VPMOVZXWDZrr:{ *:[v16i32] } VR256X:{ *:[v16i16] }:$src) |
| 41304 | /* 116033 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZrr), |
| 41305 | /* 116038 */ GIR_RootConstrainSelectedInstOperands, |
| 41306 | /* 116039 */ // GIR_Coverage, 12433, |
| 41307 | /* 116039 */ GIR_Done, |
| 41308 | /* 116040 */ // Label 2519: @116040 |
| 41309 | /* 116040 */ GIM_Reject, |
| 41310 | /* 116041 */ // Label 2481: @116041 |
| 41311 | /* 116041 */ GIM_Try, /*On fail goto*//*Label 2520*/ GIMT_Encode4(116125), |
| 41312 | /* 116046 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 41313 | /* 116049 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 41314 | /* 116053 */ GIM_Try, /*On fail goto*//*Label 2521*/ GIMT_Encode4(116105), // Rule ID 21619 // |
| 41315 | /* 116058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 41316 | /* 116061 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41317 | /* 116065 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41318 | /* 116069 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41319 | /* 116072 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41320 | /* 116076 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41321 | /* 116080 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41322 | /* 116082 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41323 | /* 116089 */ // (zext:{ *:[v32i16] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXBWZrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 41324 | /* 116089 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWZrm), |
| 41325 | /* 116092 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41326 | /* 116094 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 41327 | /* 116098 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41328 | /* 116103 */ GIR_RootConstrainSelectedInstOperands, |
| 41329 | /* 116104 */ // GIR_Coverage, 21619, |
| 41330 | /* 116104 */ GIR_EraseRootFromParent_Done, |
| 41331 | /* 116105 */ // Label 2521: @116105 |
| 41332 | /* 116105 */ GIM_Try, /*On fail goto*//*Label 2522*/ GIMT_Encode4(116124), // Rule ID 12379 // |
| 41333 | /* 116110 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 41334 | /* 116113 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 41335 | /* 116117 */ // (zext:{ *:[v32i16] } VR256X:{ *:[v32i8] }:$src) => (VPMOVZXBWZrr:{ *:[v32i16] } VR256X:{ *:[v32i8] }:$src) |
| 41336 | /* 116117 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWZrr), |
| 41337 | /* 116122 */ GIR_RootConstrainSelectedInstOperands, |
| 41338 | /* 116123 */ // GIR_Coverage, 12379, |
| 41339 | /* 116123 */ GIR_Done, |
| 41340 | /* 116124 */ // Label 2522: @116124 |
| 41341 | /* 116124 */ GIM_Reject, |
| 41342 | /* 116125 */ // Label 2520: @116125 |
| 41343 | /* 116125 */ GIM_Reject, |
| 41344 | /* 116126 */ // Label 2482: @116126 |
| 41345 | /* 116126 */ GIM_Reject, |
| 41346 | /* 116127 */ // Label 26: @116127 |
| 41347 | /* 116127 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 2527*/ GIMT_Encode4(118410), |
| 41348 | /* 116138 */ /*GILLT_s8*//*Label 2523*/ GIMT_Encode4(116154), |
| 41349 | /* 116142 */ /*GILLT_s16*//*Label 2524*/ GIMT_Encode4(116529), |
| 41350 | /* 116146 */ /*GILLT_s32*//*Label 2525*/ GIMT_Encode4(116904), |
| 41351 | /* 116150 */ /*GILLT_s64*//*Label 2526*/ GIMT_Encode4(117657), |
| 41352 | /* 116154 */ // Label 2523: @116154 |
| 41353 | /* 116154 */ GIM_Try, /*On fail goto*//*Label 2528*/ GIMT_Encode4(116528), |
| 41354 | /* 116159 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 41355 | /* 116162 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41356 | /* 116165 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41357 | /* 116169 */ GIM_Try, /*On fail goto*//*Label 2529*/ GIMT_Encode4(116236), // Rule ID 673 // |
| 41358 | /* 116174 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41359 | /* 116177 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41360 | /* 116181 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41361 | /* 116185 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41362 | /* 116188 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41363 | /* 116192 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 41364 | /* 116196 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 41365 | /* 116200 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41366 | /* 116204 */ // MIs[2] Operand 1 |
| 41367 | /* 116204 */ // No operand predicates |
| 41368 | /* 116204 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 41369 | /* 116206 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41370 | /* 116213 */ // (shl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, (imm:{ *:[i8] }):$src2) => (SHL8mi_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41371 | /* 116213 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8mi_ND), |
| 41372 | /* 116216 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41373 | /* 116218 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41374 | /* 116222 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 41375 | /* 116225 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41376 | /* 116228 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 41377 | /* 116234 */ GIR_RootConstrainSelectedInstOperands, |
| 41378 | /* 116235 */ // GIR_Coverage, 673, |
| 41379 | /* 116235 */ GIR_EraseRootFromParent_Done, |
| 41380 | /* 116236 */ // Label 2529: @116236 |
| 41381 | /* 116236 */ GIM_Try, /*On fail goto*//*Label 2530*/ GIMT_Encode4(116309), // Rule ID 689 // |
| 41382 | /* 116241 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41383 | /* 116244 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41384 | /* 116248 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41385 | /* 116252 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41386 | /* 116255 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41387 | /* 116259 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 41388 | /* 116263 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41389 | /* 116267 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41390 | /* 116269 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41391 | /* 116276 */ // (shl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, CL:{ *:[i8] }) => (SHL8mCL_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 41392 | /* 116276 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41393 | /* 116280 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 41394 | /* 116286 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41395 | /* 116290 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8mCL_ND), |
| 41396 | /* 116293 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41397 | /* 116295 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41398 | /* 116299 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41399 | /* 116302 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41400 | /* 116307 */ GIR_RootConstrainSelectedInstOperands, |
| 41401 | /* 116308 */ // GIR_Coverage, 689, |
| 41402 | /* 116308 */ GIR_EraseRootFromParent_Done, |
| 41403 | /* 116309 */ // Label 2530: @116309 |
| 41404 | /* 116309 */ GIM_Try, /*On fail goto*//*Label 2531*/ GIMT_Encode4(116339), // Rule ID 22674 // |
| 41405 | /* 116314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41406 | /* 116317 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41407 | /* 116321 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 41408 | /* 116325 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, 1:{ *:[i8] }) => (ADD8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src1) |
| 41409 | /* 116325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8rr), |
| 41410 | /* 116328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41411 | /* 116330 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41412 | /* 116332 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41413 | /* 116334 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41414 | /* 116337 */ GIR_RootConstrainSelectedInstOperands, |
| 41415 | /* 116338 */ // GIR_Coverage, 22674, |
| 41416 | /* 116338 */ GIR_EraseRootFromParent_Done, |
| 41417 | /* 116339 */ // Label 2531: @116339 |
| 41418 | /* 116339 */ GIM_Try, /*On fail goto*//*Label 2532*/ GIMT_Encode4(116369), // Rule ID 22678 // |
| 41419 | /* 116344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 41420 | /* 116347 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41421 | /* 116351 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 41422 | /* 116355 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, 1:{ *:[i8] }) => (ADD8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src1) |
| 41423 | /* 116355 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8rr_ND), |
| 41424 | /* 116358 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41425 | /* 116360 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41426 | /* 116362 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41427 | /* 116364 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41428 | /* 116367 */ GIR_RootConstrainSelectedInstOperands, |
| 41429 | /* 116368 */ // GIR_Coverage, 22678, |
| 41430 | /* 116368 */ GIR_EraseRootFromParent_Done, |
| 41431 | /* 116369 */ // Label 2532: @116369 |
| 41432 | /* 116369 */ GIM_Try, /*On fail goto*//*Label 2533*/ GIMT_Encode4(116406), // Rule ID 661 // |
| 41433 | /* 116374 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41434 | /* 116377 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41435 | /* 116381 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41436 | /* 116385 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41437 | /* 116389 */ // MIs[1] Operand 1 |
| 41438 | /* 116389 */ // No operand predicates |
| 41439 | /* 116389 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41440 | /* 116391 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41441 | /* 116391 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8ri), |
| 41442 | /* 116394 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41443 | /* 116396 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41444 | /* 116398 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41445 | /* 116401 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41446 | /* 116404 */ GIR_RootConstrainSelectedInstOperands, |
| 41447 | /* 116405 */ // GIR_Coverage, 661, |
| 41448 | /* 116405 */ GIR_EraseRootFromParent_Done, |
| 41449 | /* 116406 */ // Label 2533: @116406 |
| 41450 | /* 116406 */ GIM_Try, /*On fail goto*//*Label 2534*/ GIMT_Encode4(116443), // Rule ID 665 // |
| 41451 | /* 116411 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41452 | /* 116414 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41453 | /* 116418 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41454 | /* 116422 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41455 | /* 116426 */ // MIs[1] Operand 1 |
| 41456 | /* 116426 */ // No operand predicates |
| 41457 | /* 116426 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41458 | /* 116428 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41459 | /* 116428 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8ri_ND), |
| 41460 | /* 116431 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41461 | /* 116433 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41462 | /* 116435 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41463 | /* 116438 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41464 | /* 116441 */ GIR_RootConstrainSelectedInstOperands, |
| 41465 | /* 116442 */ // GIR_Coverage, 665, |
| 41466 | /* 116442 */ GIR_EraseRootFromParent_Done, |
| 41467 | /* 116443 */ // Label 2534: @116443 |
| 41468 | /* 116443 */ GIM_Try, /*On fail goto*//*Label 2535*/ GIMT_Encode4(116485), // Rule ID 677 // |
| 41469 | /* 116448 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41470 | /* 116451 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41471 | /* 116455 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41472 | /* 116459 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SHL8rCL:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 41473 | /* 116459 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41474 | /* 116463 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 41475 | /* 116469 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41476 | /* 116473 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8rCL), |
| 41477 | /* 116476 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41478 | /* 116478 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41479 | /* 116480 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41480 | /* 116483 */ GIR_RootConstrainSelectedInstOperands, |
| 41481 | /* 116484 */ // GIR_Coverage, 677, |
| 41482 | /* 116484 */ GIR_EraseRootFromParent_Done, |
| 41483 | /* 116485 */ // Label 2535: @116485 |
| 41484 | /* 116485 */ GIM_Try, /*On fail goto*//*Label 2536*/ GIMT_Encode4(116527), // Rule ID 681 // |
| 41485 | /* 116490 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41486 | /* 116493 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41487 | /* 116497 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41488 | /* 116501 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SHL8rCL_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 41489 | /* 116501 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41490 | /* 116505 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 41491 | /* 116511 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41492 | /* 116515 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8rCL_ND), |
| 41493 | /* 116518 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41494 | /* 116520 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41495 | /* 116522 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41496 | /* 116525 */ GIR_RootConstrainSelectedInstOperands, |
| 41497 | /* 116526 */ // GIR_Coverage, 681, |
| 41498 | /* 116526 */ GIR_EraseRootFromParent_Done, |
| 41499 | /* 116527 */ // Label 2536: @116527 |
| 41500 | /* 116527 */ GIM_Reject, |
| 41501 | /* 116528 */ // Label 2528: @116528 |
| 41502 | /* 116528 */ GIM_Reject, |
| 41503 | /* 116529 */ // Label 2524: @116529 |
| 41504 | /* 116529 */ GIM_Try, /*On fail goto*//*Label 2537*/ GIMT_Encode4(116903), |
| 41505 | /* 116534 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 41506 | /* 116537 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41507 | /* 116540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41508 | /* 116544 */ GIM_Try, /*On fail goto*//*Label 2538*/ GIMT_Encode4(116611), // Rule ID 674 // |
| 41509 | /* 116549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41510 | /* 116552 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41511 | /* 116556 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41512 | /* 116560 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41513 | /* 116563 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41514 | /* 116567 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 41515 | /* 116571 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 41516 | /* 116575 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41517 | /* 116579 */ // MIs[2] Operand 1 |
| 41518 | /* 116579 */ // No operand predicates |
| 41519 | /* 116579 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 41520 | /* 116581 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41521 | /* 116588 */ // (shl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i8] }):$src2) => (SHL16mi_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41522 | /* 116588 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16mi_ND), |
| 41523 | /* 116591 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41524 | /* 116593 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41525 | /* 116597 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 41526 | /* 116600 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41527 | /* 116603 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 41528 | /* 116609 */ GIR_RootConstrainSelectedInstOperands, |
| 41529 | /* 116610 */ // GIR_Coverage, 674, |
| 41530 | /* 116610 */ GIR_EraseRootFromParent_Done, |
| 41531 | /* 116611 */ // Label 2538: @116611 |
| 41532 | /* 116611 */ GIM_Try, /*On fail goto*//*Label 2539*/ GIMT_Encode4(116684), // Rule ID 690 // |
| 41533 | /* 116616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41534 | /* 116619 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41535 | /* 116623 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41536 | /* 116627 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41537 | /* 116630 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41538 | /* 116634 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 41539 | /* 116638 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41540 | /* 116642 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41541 | /* 116644 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41542 | /* 116651 */ // (shl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, CL:{ *:[i8] }) => (SHL16mCL_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 41543 | /* 116651 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41544 | /* 116655 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 41545 | /* 116661 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41546 | /* 116665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16mCL_ND), |
| 41547 | /* 116668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41548 | /* 116670 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41549 | /* 116674 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41550 | /* 116677 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41551 | /* 116682 */ GIR_RootConstrainSelectedInstOperands, |
| 41552 | /* 116683 */ // GIR_Coverage, 690, |
| 41553 | /* 116683 */ GIR_EraseRootFromParent_Done, |
| 41554 | /* 116684 */ // Label 2539: @116684 |
| 41555 | /* 116684 */ GIM_Try, /*On fail goto*//*Label 2540*/ GIMT_Encode4(116714), // Rule ID 22675 // |
| 41556 | /* 116689 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41557 | /* 116692 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41558 | /* 116696 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 41559 | /* 116700 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, 1:{ *:[i8] }) => (ADD16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src1) |
| 41560 | /* 116700 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16rr), |
| 41561 | /* 116703 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41562 | /* 116705 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41563 | /* 116707 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41564 | /* 116709 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41565 | /* 116712 */ GIR_RootConstrainSelectedInstOperands, |
| 41566 | /* 116713 */ // GIR_Coverage, 22675, |
| 41567 | /* 116713 */ GIR_EraseRootFromParent_Done, |
| 41568 | /* 116714 */ // Label 2540: @116714 |
| 41569 | /* 116714 */ GIM_Try, /*On fail goto*//*Label 2541*/ GIMT_Encode4(116744), // Rule ID 22679 // |
| 41570 | /* 116719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 41571 | /* 116722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41572 | /* 116726 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 41573 | /* 116730 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, 1:{ *:[i8] }) => (ADD16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src1) |
| 41574 | /* 116730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16rr_ND), |
| 41575 | /* 116733 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41576 | /* 116735 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41577 | /* 116737 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41578 | /* 116739 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41579 | /* 116742 */ GIR_RootConstrainSelectedInstOperands, |
| 41580 | /* 116743 */ // GIR_Coverage, 22679, |
| 41581 | /* 116743 */ GIR_EraseRootFromParent_Done, |
| 41582 | /* 116744 */ // Label 2541: @116744 |
| 41583 | /* 116744 */ GIM_Try, /*On fail goto*//*Label 2542*/ GIMT_Encode4(116781), // Rule ID 662 // |
| 41584 | /* 116749 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41585 | /* 116752 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41586 | /* 116756 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41587 | /* 116760 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41588 | /* 116764 */ // MIs[1] Operand 1 |
| 41589 | /* 116764 */ // No operand predicates |
| 41590 | /* 116764 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41591 | /* 116766 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41592 | /* 116766 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16ri), |
| 41593 | /* 116769 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41594 | /* 116771 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41595 | /* 116773 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41596 | /* 116776 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41597 | /* 116779 */ GIR_RootConstrainSelectedInstOperands, |
| 41598 | /* 116780 */ // GIR_Coverage, 662, |
| 41599 | /* 116780 */ GIR_EraseRootFromParent_Done, |
| 41600 | /* 116781 */ // Label 2542: @116781 |
| 41601 | /* 116781 */ GIM_Try, /*On fail goto*//*Label 2543*/ GIMT_Encode4(116818), // Rule ID 666 // |
| 41602 | /* 116786 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41603 | /* 116789 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41604 | /* 116793 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41605 | /* 116797 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41606 | /* 116801 */ // MIs[1] Operand 1 |
| 41607 | /* 116801 */ // No operand predicates |
| 41608 | /* 116801 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41609 | /* 116803 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41610 | /* 116803 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16ri_ND), |
| 41611 | /* 116806 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41612 | /* 116808 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41613 | /* 116810 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41614 | /* 116813 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41615 | /* 116816 */ GIR_RootConstrainSelectedInstOperands, |
| 41616 | /* 116817 */ // GIR_Coverage, 666, |
| 41617 | /* 116817 */ GIR_EraseRootFromParent_Done, |
| 41618 | /* 116818 */ // Label 2543: @116818 |
| 41619 | /* 116818 */ GIM_Try, /*On fail goto*//*Label 2544*/ GIMT_Encode4(116860), // Rule ID 678 // |
| 41620 | /* 116823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41621 | /* 116826 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41622 | /* 116830 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41623 | /* 116834 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SHL16rCL:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 41624 | /* 116834 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41625 | /* 116838 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 41626 | /* 116844 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41627 | /* 116848 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16rCL), |
| 41628 | /* 116851 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41629 | /* 116853 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41630 | /* 116855 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41631 | /* 116858 */ GIR_RootConstrainSelectedInstOperands, |
| 41632 | /* 116859 */ // GIR_Coverage, 678, |
| 41633 | /* 116859 */ GIR_EraseRootFromParent_Done, |
| 41634 | /* 116860 */ // Label 2544: @116860 |
| 41635 | /* 116860 */ GIM_Try, /*On fail goto*//*Label 2545*/ GIMT_Encode4(116902), // Rule ID 682 // |
| 41636 | /* 116865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41637 | /* 116868 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41638 | /* 116872 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41639 | /* 116876 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SHL16rCL_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 41640 | /* 116876 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41641 | /* 116880 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 41642 | /* 116886 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41643 | /* 116890 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16rCL_ND), |
| 41644 | /* 116893 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41645 | /* 116895 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41646 | /* 116897 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41647 | /* 116900 */ GIR_RootConstrainSelectedInstOperands, |
| 41648 | /* 116901 */ // GIR_Coverage, 682, |
| 41649 | /* 116901 */ GIR_EraseRootFromParent_Done, |
| 41650 | /* 116902 */ // Label 2545: @116902 |
| 41651 | /* 116902 */ GIM_Reject, |
| 41652 | /* 116903 */ // Label 2537: @116903 |
| 41653 | /* 116903 */ GIM_Reject, |
| 41654 | /* 116904 */ // Label 2525: @116904 |
| 41655 | /* 116904 */ GIM_Try, /*On fail goto*//*Label 2546*/ GIMT_Encode4(117656), |
| 41656 | /* 116909 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 41657 | /* 116912 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41658 | /* 116915 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41659 | /* 116919 */ GIM_Try, /*On fail goto*//*Label 2547*/ GIMT_Encode4(116986), // Rule ID 675 // |
| 41660 | /* 116924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41661 | /* 116927 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41662 | /* 116931 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41663 | /* 116935 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41664 | /* 116938 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41665 | /* 116942 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 41666 | /* 116946 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 41667 | /* 116950 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41668 | /* 116954 */ // MIs[2] Operand 1 |
| 41669 | /* 116954 */ // No operand predicates |
| 41670 | /* 116954 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 41671 | /* 116956 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41672 | /* 116963 */ // (shl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src2) => (SHL32mi_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41673 | /* 116963 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32mi_ND), |
| 41674 | /* 116966 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41675 | /* 116968 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41676 | /* 116972 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 41677 | /* 116975 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41678 | /* 116978 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 41679 | /* 116984 */ GIR_RootConstrainSelectedInstOperands, |
| 41680 | /* 116985 */ // GIR_Coverage, 675, |
| 41681 | /* 116985 */ GIR_EraseRootFromParent_Done, |
| 41682 | /* 116986 */ // Label 2547: @116986 |
| 41683 | /* 116986 */ GIM_Try, /*On fail goto*//*Label 2548*/ GIMT_Encode4(117059), // Rule ID 691 // |
| 41684 | /* 116991 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41685 | /* 116994 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41686 | /* 116998 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41687 | /* 117002 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41688 | /* 117005 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41689 | /* 117009 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 41690 | /* 117013 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41691 | /* 117017 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41692 | /* 117019 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41693 | /* 117026 */ // (shl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }) => (SHL32mCL_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 41694 | /* 117026 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41695 | /* 117030 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 41696 | /* 117036 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41697 | /* 117040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32mCL_ND), |
| 41698 | /* 117043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41699 | /* 117045 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41700 | /* 117049 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41701 | /* 117052 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41702 | /* 117057 */ GIR_RootConstrainSelectedInstOperands, |
| 41703 | /* 117058 */ // GIR_Coverage, 691, |
| 41704 | /* 117058 */ GIR_EraseRootFromParent_Done, |
| 41705 | /* 117059 */ // Label 2548: @117059 |
| 41706 | /* 117059 */ GIM_Try, /*On fail goto*//*Label 2549*/ GIMT_Encode4(117169), // Rule ID 17672 // |
| 41707 | /* 117064 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 41708 | /* 117067 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41709 | /* 117071 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41710 | /* 117075 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41711 | /* 117078 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41712 | /* 117082 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 41713 | /* 117086 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41714 | /* 117090 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41715 | /* 117092 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41716 | /* 117099 */ // (shl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR8:{ *:[i8] }:$src2) => (SHLX32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 41717 | /* 117099 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41718 | /* 117102 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41719 | /* 117106 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 41720 | /* 117111 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41721 | /* 117113 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41722 | /* 117116 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41723 | /* 117120 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 41724 | /* 117125 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41725 | /* 117128 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41726 | /* 117132 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41727 | /* 117135 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41728 | /* 117140 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41729 | /* 117145 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41730 | /* 117150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX32rm), |
| 41731 | /* 117153 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41732 | /* 117155 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41733 | /* 117159 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41734 | /* 117162 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41735 | /* 117167 */ GIR_RootConstrainSelectedInstOperands, |
| 41736 | /* 117168 */ // GIR_Coverage, 17672, |
| 41737 | /* 117168 */ GIR_EraseRootFromParent_Done, |
| 41738 | /* 117169 */ // Label 2549: @117169 |
| 41739 | /* 117169 */ GIM_Try, /*On fail goto*//*Label 2550*/ GIMT_Encode4(117279), // Rule ID 17704 // |
| 41740 | /* 117174 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 41741 | /* 117177 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41742 | /* 117181 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41743 | /* 117185 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41744 | /* 117188 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41745 | /* 117192 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 41746 | /* 117196 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41747 | /* 117200 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41748 | /* 117202 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41749 | /* 117209 */ // (shl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR8:{ *:[i8] }:$src2) => (SHLX32rm_EVEX:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 41750 | /* 117209 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41751 | /* 117212 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41752 | /* 117216 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 41753 | /* 117221 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41754 | /* 117223 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41755 | /* 117226 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41756 | /* 117230 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 41757 | /* 117235 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41758 | /* 117238 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41759 | /* 117242 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41760 | /* 117245 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41761 | /* 117250 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41762 | /* 117255 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41763 | /* 117260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX32rm_EVEX), |
| 41764 | /* 117263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41765 | /* 117265 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41766 | /* 117269 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41767 | /* 117272 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41768 | /* 117277 */ GIR_RootConstrainSelectedInstOperands, |
| 41769 | /* 117278 */ // GIR_Coverage, 17704, |
| 41770 | /* 117278 */ GIR_EraseRootFromParent_Done, |
| 41771 | /* 117279 */ // Label 2550: @117279 |
| 41772 | /* 117279 */ GIM_Try, /*On fail goto*//*Label 2551*/ GIMT_Encode4(117309), // Rule ID 22676 // |
| 41773 | /* 117284 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41774 | /* 117287 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41775 | /* 117291 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 41776 | /* 117295 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, 1:{ *:[i8] }) => (ADD32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src1) |
| 41777 | /* 117295 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32rr), |
| 41778 | /* 117298 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41779 | /* 117300 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41780 | /* 117302 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41781 | /* 117304 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41782 | /* 117307 */ GIR_RootConstrainSelectedInstOperands, |
| 41783 | /* 117308 */ // GIR_Coverage, 22676, |
| 41784 | /* 117308 */ GIR_EraseRootFromParent_Done, |
| 41785 | /* 117309 */ // Label 2551: @117309 |
| 41786 | /* 117309 */ GIM_Try, /*On fail goto*//*Label 2552*/ GIMT_Encode4(117339), // Rule ID 22680 // |
| 41787 | /* 117314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 41788 | /* 117317 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41789 | /* 117321 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 41790 | /* 117325 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, 1:{ *:[i8] }) => (ADD32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src1) |
| 41791 | /* 117325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32rr_ND), |
| 41792 | /* 117328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41793 | /* 117330 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41794 | /* 117332 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41795 | /* 117334 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41796 | /* 117337 */ GIR_RootConstrainSelectedInstOperands, |
| 41797 | /* 117338 */ // GIR_Coverage, 22680, |
| 41798 | /* 117338 */ GIR_EraseRootFromParent_Done, |
| 41799 | /* 117339 */ // Label 2552: @117339 |
| 41800 | /* 117339 */ GIM_Try, /*On fail goto*//*Label 2553*/ GIMT_Encode4(117376), // Rule ID 663 // |
| 41801 | /* 117344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41802 | /* 117347 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41803 | /* 117351 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41804 | /* 117355 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41805 | /* 117359 */ // MIs[1] Operand 1 |
| 41806 | /* 117359 */ // No operand predicates |
| 41807 | /* 117359 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41808 | /* 117361 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41809 | /* 117361 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32ri), |
| 41810 | /* 117364 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41811 | /* 117366 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41812 | /* 117368 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41813 | /* 117371 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41814 | /* 117374 */ GIR_RootConstrainSelectedInstOperands, |
| 41815 | /* 117375 */ // GIR_Coverage, 663, |
| 41816 | /* 117375 */ GIR_EraseRootFromParent_Done, |
| 41817 | /* 117376 */ // Label 2553: @117376 |
| 41818 | /* 117376 */ GIM_Try, /*On fail goto*//*Label 2554*/ GIMT_Encode4(117413), // Rule ID 667 // |
| 41819 | /* 117381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41820 | /* 117384 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41821 | /* 117388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41822 | /* 117392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41823 | /* 117396 */ // MIs[1] Operand 1 |
| 41824 | /* 117396 */ // No operand predicates |
| 41825 | /* 117396 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41826 | /* 117398 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41827 | /* 117398 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32ri_ND), |
| 41828 | /* 117401 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41829 | /* 117403 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41830 | /* 117405 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41831 | /* 117408 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41832 | /* 117411 */ GIR_RootConstrainSelectedInstOperands, |
| 41833 | /* 117412 */ // GIR_Coverage, 667, |
| 41834 | /* 117412 */ GIR_EraseRootFromParent_Done, |
| 41835 | /* 117413 */ // Label 2554: @117413 |
| 41836 | /* 117413 */ GIM_Try, /*On fail goto*//*Label 2555*/ GIMT_Encode4(117492), // Rule ID 17668 // |
| 41837 | /* 117418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 41838 | /* 117421 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41839 | /* 117425 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41840 | /* 117429 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) => (SHLX32rr:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 41841 | /* 117429 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41842 | /* 117432 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41843 | /* 117436 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 41844 | /* 117441 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41845 | /* 117443 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41846 | /* 117446 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41847 | /* 117450 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 41848 | /* 117455 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41849 | /* 117458 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41850 | /* 117462 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41851 | /* 117465 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41852 | /* 117470 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41853 | /* 117475 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41854 | /* 117480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX32rr), |
| 41855 | /* 117483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41856 | /* 117485 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41857 | /* 117487 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41858 | /* 117490 */ GIR_RootConstrainSelectedInstOperands, |
| 41859 | /* 117491 */ // GIR_Coverage, 17668, |
| 41860 | /* 117491 */ GIR_EraseRootFromParent_Done, |
| 41861 | /* 117492 */ // Label 2555: @117492 |
| 41862 | /* 117492 */ GIM_Try, /*On fail goto*//*Label 2556*/ GIMT_Encode4(117571), // Rule ID 17700 // |
| 41863 | /* 117497 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 41864 | /* 117500 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41865 | /* 117504 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41866 | /* 117508 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) => (SHLX32rr_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 41867 | /* 117508 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41868 | /* 117511 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41869 | /* 117515 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 41870 | /* 117520 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41871 | /* 117522 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41872 | /* 117525 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41873 | /* 117529 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 41874 | /* 117534 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41875 | /* 117537 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41876 | /* 117541 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41877 | /* 117544 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41878 | /* 117549 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41879 | /* 117554 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41880 | /* 117559 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX32rr_EVEX), |
| 41881 | /* 117562 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41882 | /* 117564 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41883 | /* 117566 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41884 | /* 117569 */ GIR_RootConstrainSelectedInstOperands, |
| 41885 | /* 117570 */ // GIR_Coverage, 17700, |
| 41886 | /* 117570 */ GIR_EraseRootFromParent_Done, |
| 41887 | /* 117571 */ // Label 2556: @117571 |
| 41888 | /* 117571 */ GIM_Try, /*On fail goto*//*Label 2557*/ GIMT_Encode4(117613), // Rule ID 679 // |
| 41889 | /* 117576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41890 | /* 117579 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41891 | /* 117583 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41892 | /* 117587 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHL32rCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 41893 | /* 117587 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41894 | /* 117591 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 41895 | /* 117597 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41896 | /* 117601 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32rCL), |
| 41897 | /* 117604 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41898 | /* 117606 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41899 | /* 117608 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41900 | /* 117611 */ GIR_RootConstrainSelectedInstOperands, |
| 41901 | /* 117612 */ // GIR_Coverage, 679, |
| 41902 | /* 117612 */ GIR_EraseRootFromParent_Done, |
| 41903 | /* 117613 */ // Label 2557: @117613 |
| 41904 | /* 117613 */ GIM_Try, /*On fail goto*//*Label 2558*/ GIMT_Encode4(117655), // Rule ID 683 // |
| 41905 | /* 117618 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41906 | /* 117621 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41907 | /* 117625 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41908 | /* 117629 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHL32rCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 41909 | /* 117629 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41910 | /* 117633 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 41911 | /* 117639 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41912 | /* 117643 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32rCL_ND), |
| 41913 | /* 117646 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41914 | /* 117648 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41915 | /* 117650 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41916 | /* 117653 */ GIR_RootConstrainSelectedInstOperands, |
| 41917 | /* 117654 */ // GIR_Coverage, 683, |
| 41918 | /* 117654 */ GIR_EraseRootFromParent_Done, |
| 41919 | /* 117655 */ // Label 2558: @117655 |
| 41920 | /* 117655 */ GIM_Reject, |
| 41921 | /* 117656 */ // Label 2546: @117656 |
| 41922 | /* 117656 */ GIM_Reject, |
| 41923 | /* 117657 */ // Label 2526: @117657 |
| 41924 | /* 117657 */ GIM_Try, /*On fail goto*//*Label 2559*/ GIMT_Encode4(118409), |
| 41925 | /* 117662 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 41926 | /* 117665 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41927 | /* 117668 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41928 | /* 117672 */ GIM_Try, /*On fail goto*//*Label 2560*/ GIMT_Encode4(117739), // Rule ID 676 // |
| 41929 | /* 117677 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41930 | /* 117680 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41931 | /* 117684 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41932 | /* 117688 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41933 | /* 117691 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41934 | /* 117695 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41935 | /* 117699 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 41936 | /* 117703 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41937 | /* 117707 */ // MIs[2] Operand 1 |
| 41938 | /* 117707 */ // No operand predicates |
| 41939 | /* 117707 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 41940 | /* 117709 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41941 | /* 117716 */ // (shl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src2) => (SHL64mi_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41942 | /* 117716 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64mi_ND), |
| 41943 | /* 117719 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41944 | /* 117721 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41945 | /* 117725 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 41946 | /* 117728 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41947 | /* 117731 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 41948 | /* 117737 */ GIR_RootConstrainSelectedInstOperands, |
| 41949 | /* 117738 */ // GIR_Coverage, 676, |
| 41950 | /* 117738 */ GIR_EraseRootFromParent_Done, |
| 41951 | /* 117739 */ // Label 2560: @117739 |
| 41952 | /* 117739 */ GIM_Try, /*On fail goto*//*Label 2561*/ GIMT_Encode4(117812), // Rule ID 692 // |
| 41953 | /* 117744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41954 | /* 117747 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41955 | /* 117751 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41956 | /* 117755 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41957 | /* 117758 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41958 | /* 117762 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41959 | /* 117766 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41960 | /* 117770 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41961 | /* 117772 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41962 | /* 117779 */ // (shl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }) => (SHL64mCL_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 41963 | /* 117779 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41964 | /* 117783 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 41965 | /* 117789 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41966 | /* 117793 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64mCL_ND), |
| 41967 | /* 117796 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41968 | /* 117798 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41969 | /* 117802 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41970 | /* 117805 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41971 | /* 117810 */ GIR_RootConstrainSelectedInstOperands, |
| 41972 | /* 117811 */ // GIR_Coverage, 692, |
| 41973 | /* 117811 */ GIR_EraseRootFromParent_Done, |
| 41974 | /* 117812 */ // Label 2561: @117812 |
| 41975 | /* 117812 */ GIM_Try, /*On fail goto*//*Label 2562*/ GIMT_Encode4(117922), // Rule ID 17673 // |
| 41976 | /* 117817 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 41977 | /* 117820 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41978 | /* 117824 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41979 | /* 117828 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41980 | /* 117831 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41981 | /* 117835 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41982 | /* 117839 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41983 | /* 117843 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41984 | /* 117845 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41985 | /* 117852 */ // (shl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2) => (SHLX64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 41986 | /* 117852 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 41987 | /* 117855 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41988 | /* 117859 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 41989 | /* 117864 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41990 | /* 117866 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 41991 | /* 117869 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41992 | /* 117873 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 41993 | /* 117878 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41994 | /* 117881 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41995 | /* 117885 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41996 | /* 117888 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41997 | /* 117893 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41998 | /* 117898 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41999 | /* 117903 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX64rm), |
| 42000 | /* 117906 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42001 | /* 117908 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42002 | /* 117912 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42003 | /* 117915 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42004 | /* 117920 */ GIR_RootConstrainSelectedInstOperands, |
| 42005 | /* 117921 */ // GIR_Coverage, 17673, |
| 42006 | /* 117921 */ GIR_EraseRootFromParent_Done, |
| 42007 | /* 117922 */ // Label 2562: @117922 |
| 42008 | /* 117922 */ GIM_Try, /*On fail goto*//*Label 2563*/ GIMT_Encode4(118032), // Rule ID 17705 // |
| 42009 | /* 117927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 42010 | /* 117930 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42011 | /* 117934 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42012 | /* 117938 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42013 | /* 117941 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42014 | /* 117945 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42015 | /* 117949 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42016 | /* 117953 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42017 | /* 117955 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42018 | /* 117962 */ // (shl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2) => (SHLX64rm_EVEX:{ *:[i64] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42019 | /* 117962 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 42020 | /* 117965 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42021 | /* 117969 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42022 | /* 117974 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42023 | /* 117976 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 42024 | /* 117979 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42025 | /* 117983 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42026 | /* 117988 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42027 | /* 117991 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42028 | /* 117995 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42029 | /* 117998 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42030 | /* 118003 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42031 | /* 118008 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42032 | /* 118013 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX64rm_EVEX), |
| 42033 | /* 118016 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42034 | /* 118018 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42035 | /* 118022 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42036 | /* 118025 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42037 | /* 118030 */ GIR_RootConstrainSelectedInstOperands, |
| 42038 | /* 118031 */ // GIR_Coverage, 17705, |
| 42039 | /* 118031 */ GIR_EraseRootFromParent_Done, |
| 42040 | /* 118032 */ // Label 2563: @118032 |
| 42041 | /* 118032 */ GIM_Try, /*On fail goto*//*Label 2564*/ GIMT_Encode4(118062), // Rule ID 22677 // |
| 42042 | /* 118037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42043 | /* 118040 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42044 | /* 118044 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 42045 | /* 118048 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, 1:{ *:[i8] }) => (ADD64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src1) |
| 42046 | /* 118048 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64rr), |
| 42047 | /* 118051 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42048 | /* 118053 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42049 | /* 118055 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42050 | /* 118057 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42051 | /* 118060 */ GIR_RootConstrainSelectedInstOperands, |
| 42052 | /* 118061 */ // GIR_Coverage, 22677, |
| 42053 | /* 118061 */ GIR_EraseRootFromParent_Done, |
| 42054 | /* 118062 */ // Label 2564: @118062 |
| 42055 | /* 118062 */ GIM_Try, /*On fail goto*//*Label 2565*/ GIMT_Encode4(118092), // Rule ID 22681 // |
| 42056 | /* 118067 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 42057 | /* 118070 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42058 | /* 118074 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 42059 | /* 118078 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, 1:{ *:[i8] }) => (ADD64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src1) |
| 42060 | /* 118078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64rr_ND), |
| 42061 | /* 118081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42062 | /* 118083 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42063 | /* 118085 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42064 | /* 118087 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42065 | /* 118090 */ GIR_RootConstrainSelectedInstOperands, |
| 42066 | /* 118091 */ // GIR_Coverage, 22681, |
| 42067 | /* 118091 */ GIR_EraseRootFromParent_Done, |
| 42068 | /* 118092 */ // Label 2565: @118092 |
| 42069 | /* 118092 */ GIM_Try, /*On fail goto*//*Label 2566*/ GIMT_Encode4(118129), // Rule ID 664 // |
| 42070 | /* 118097 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42071 | /* 118100 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42072 | /* 118104 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42073 | /* 118108 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42074 | /* 118112 */ // MIs[1] Operand 1 |
| 42075 | /* 118112 */ // No operand predicates |
| 42076 | /* 118112 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42077 | /* 118114 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42078 | /* 118114 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64ri), |
| 42079 | /* 118117 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42080 | /* 118119 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42081 | /* 118121 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42082 | /* 118124 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42083 | /* 118127 */ GIR_RootConstrainSelectedInstOperands, |
| 42084 | /* 118128 */ // GIR_Coverage, 664, |
| 42085 | /* 118128 */ GIR_EraseRootFromParent_Done, |
| 42086 | /* 118129 */ // Label 2566: @118129 |
| 42087 | /* 118129 */ GIM_Try, /*On fail goto*//*Label 2567*/ GIMT_Encode4(118166), // Rule ID 668 // |
| 42088 | /* 118134 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42089 | /* 118137 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42090 | /* 118141 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42091 | /* 118145 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42092 | /* 118149 */ // MIs[1] Operand 1 |
| 42093 | /* 118149 */ // No operand predicates |
| 42094 | /* 118149 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42095 | /* 118151 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL64ri_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42096 | /* 118151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64ri_ND), |
| 42097 | /* 118154 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42098 | /* 118156 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42099 | /* 118158 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42100 | /* 118161 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42101 | /* 118164 */ GIR_RootConstrainSelectedInstOperands, |
| 42102 | /* 118165 */ // GIR_Coverage, 668, |
| 42103 | /* 118165 */ GIR_EraseRootFromParent_Done, |
| 42104 | /* 118166 */ // Label 2567: @118166 |
| 42105 | /* 118166 */ GIM_Try, /*On fail goto*//*Label 2568*/ GIMT_Encode4(118245), // Rule ID 17669 // |
| 42106 | /* 118171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 42107 | /* 118174 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42108 | /* 118178 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42109 | /* 118182 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR8:{ *:[i8] }:$src2) => (SHLX64rr:{ *:[i64] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42110 | /* 118182 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 42111 | /* 118185 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42112 | /* 118189 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42113 | /* 118194 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42114 | /* 118196 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 42115 | /* 118199 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42116 | /* 118203 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42117 | /* 118208 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42118 | /* 118211 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42119 | /* 118215 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42120 | /* 118218 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42121 | /* 118223 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42122 | /* 118228 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42123 | /* 118233 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX64rr), |
| 42124 | /* 118236 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42125 | /* 118238 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42126 | /* 118240 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42127 | /* 118243 */ GIR_RootConstrainSelectedInstOperands, |
| 42128 | /* 118244 */ // GIR_Coverage, 17669, |
| 42129 | /* 118244 */ GIR_EraseRootFromParent_Done, |
| 42130 | /* 118245 */ // Label 2568: @118245 |
| 42131 | /* 118245 */ GIM_Try, /*On fail goto*//*Label 2569*/ GIMT_Encode4(118324), // Rule ID 17701 // |
| 42132 | /* 118250 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 42133 | /* 118253 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42134 | /* 118257 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42135 | /* 118261 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR8:{ *:[i8] }:$src2) => (SHLX64rr_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42136 | /* 118261 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 42137 | /* 118264 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42138 | /* 118268 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42139 | /* 118273 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42140 | /* 118275 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 42141 | /* 118278 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42142 | /* 118282 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42143 | /* 118287 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42144 | /* 118290 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42145 | /* 118294 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42146 | /* 118297 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42147 | /* 118302 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42148 | /* 118307 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42149 | /* 118312 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX64rr_EVEX), |
| 42150 | /* 118315 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42151 | /* 118317 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42152 | /* 118319 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42153 | /* 118322 */ GIR_RootConstrainSelectedInstOperands, |
| 42154 | /* 118323 */ // GIR_Coverage, 17701, |
| 42155 | /* 118323 */ GIR_EraseRootFromParent_Done, |
| 42156 | /* 118324 */ // Label 2569: @118324 |
| 42157 | /* 118324 */ GIM_Try, /*On fail goto*//*Label 2570*/ GIMT_Encode4(118366), // Rule ID 680 // |
| 42158 | /* 118329 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42159 | /* 118332 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42160 | /* 118336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42161 | /* 118340 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHL64rCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 42162 | /* 118340 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42163 | /* 118344 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42164 | /* 118350 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42165 | /* 118354 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64rCL), |
| 42166 | /* 118357 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42167 | /* 118359 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42168 | /* 118361 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42169 | /* 118364 */ GIR_RootConstrainSelectedInstOperands, |
| 42170 | /* 118365 */ // GIR_Coverage, 680, |
| 42171 | /* 118365 */ GIR_EraseRootFromParent_Done, |
| 42172 | /* 118366 */ // Label 2570: @118366 |
| 42173 | /* 118366 */ GIM_Try, /*On fail goto*//*Label 2571*/ GIMT_Encode4(118408), // Rule ID 684 // |
| 42174 | /* 118371 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42175 | /* 118374 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42176 | /* 118378 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42177 | /* 118382 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHL64rCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 42178 | /* 118382 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42179 | /* 118386 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42180 | /* 118392 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42181 | /* 118396 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64rCL_ND), |
| 42182 | /* 118399 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42183 | /* 118401 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42184 | /* 118403 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42185 | /* 118406 */ GIR_RootConstrainSelectedInstOperands, |
| 42186 | /* 118407 */ // GIR_Coverage, 684, |
| 42187 | /* 118407 */ GIR_EraseRootFromParent_Done, |
| 42188 | /* 118408 */ // Label 2571: @118408 |
| 42189 | /* 118408 */ GIM_Reject, |
| 42190 | /* 118409 */ // Label 2559: @118409 |
| 42191 | /* 118409 */ GIM_Reject, |
| 42192 | /* 118410 */ // Label 2527: @118410 |
| 42193 | /* 118410 */ GIM_Reject, |
| 42194 | /* 118411 */ // Label 27: @118411 |
| 42195 | /* 118411 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 2576*/ GIMT_Encode4(120454), |
| 42196 | /* 118422 */ /*GILLT_s8*//*Label 2572*/ GIMT_Encode4(118438), |
| 42197 | /* 118426 */ /*GILLT_s16*//*Label 2573*/ GIMT_Encode4(118753), |
| 42198 | /* 118430 */ /*GILLT_s32*//*Label 2574*/ GIMT_Encode4(119068), |
| 42199 | /* 118434 */ /*GILLT_s64*//*Label 2575*/ GIMT_Encode4(119761), |
| 42200 | /* 118438 */ // Label 2572: @118438 |
| 42201 | /* 118438 */ GIM_Try, /*On fail goto*//*Label 2577*/ GIMT_Encode4(118752), |
| 42202 | /* 118443 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 42203 | /* 118446 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 42204 | /* 118449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42205 | /* 118453 */ GIM_Try, /*On fail goto*//*Label 2578*/ GIMT_Encode4(118520), // Rule ID 705 // |
| 42206 | /* 118458 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42207 | /* 118461 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42208 | /* 118465 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42209 | /* 118469 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42210 | /* 118472 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42211 | /* 118476 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 42212 | /* 118480 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 42213 | /* 118484 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42214 | /* 118488 */ // MIs[2] Operand 1 |
| 42215 | /* 118488 */ // No operand predicates |
| 42216 | /* 118488 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 42217 | /* 118490 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42218 | /* 118497 */ // (srl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, (imm:{ *:[i8] }):$src2) => (SHR8mi_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42219 | /* 118497 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8mi_ND), |
| 42220 | /* 118500 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42221 | /* 118502 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42222 | /* 118506 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 42223 | /* 118509 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42224 | /* 118512 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 42225 | /* 118518 */ GIR_RootConstrainSelectedInstOperands, |
| 42226 | /* 118519 */ // GIR_Coverage, 705, |
| 42227 | /* 118519 */ GIR_EraseRootFromParent_Done, |
| 42228 | /* 118520 */ // Label 2578: @118520 |
| 42229 | /* 118520 */ GIM_Try, /*On fail goto*//*Label 2579*/ GIMT_Encode4(118593), // Rule ID 721 // |
| 42230 | /* 118525 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42231 | /* 118528 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42232 | /* 118532 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42233 | /* 118536 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42234 | /* 118539 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42235 | /* 118543 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 42236 | /* 118547 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42237 | /* 118551 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42238 | /* 118553 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42239 | /* 118560 */ // (srl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, CL:{ *:[i8] }) => (SHR8mCL_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 42240 | /* 118560 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42241 | /* 118564 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42242 | /* 118570 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42243 | /* 118574 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8mCL_ND), |
| 42244 | /* 118577 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42245 | /* 118579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42246 | /* 118583 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42247 | /* 118586 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42248 | /* 118591 */ GIR_RootConstrainSelectedInstOperands, |
| 42249 | /* 118592 */ // GIR_Coverage, 721, |
| 42250 | /* 118592 */ GIR_EraseRootFromParent_Done, |
| 42251 | /* 118593 */ // Label 2579: @118593 |
| 42252 | /* 118593 */ GIM_Try, /*On fail goto*//*Label 2580*/ GIMT_Encode4(118630), // Rule ID 693 // |
| 42253 | /* 118598 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42254 | /* 118601 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42255 | /* 118605 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42256 | /* 118609 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42257 | /* 118613 */ // MIs[1] Operand 1 |
| 42258 | /* 118613 */ // No operand predicates |
| 42259 | /* 118613 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42260 | /* 118615 */ // (srl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42261 | /* 118615 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8ri), |
| 42262 | /* 118618 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42263 | /* 118620 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42264 | /* 118622 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42265 | /* 118625 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42266 | /* 118628 */ GIR_RootConstrainSelectedInstOperands, |
| 42267 | /* 118629 */ // GIR_Coverage, 693, |
| 42268 | /* 118629 */ GIR_EraseRootFromParent_Done, |
| 42269 | /* 118630 */ // Label 2580: @118630 |
| 42270 | /* 118630 */ GIM_Try, /*On fail goto*//*Label 2581*/ GIMT_Encode4(118667), // Rule ID 697 // |
| 42271 | /* 118635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42272 | /* 118638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42273 | /* 118642 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42274 | /* 118646 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42275 | /* 118650 */ // MIs[1] Operand 1 |
| 42276 | /* 118650 */ // No operand predicates |
| 42277 | /* 118650 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42278 | /* 118652 */ // (srl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42279 | /* 118652 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8ri_ND), |
| 42280 | /* 118655 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42281 | /* 118657 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42282 | /* 118659 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42283 | /* 118662 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42284 | /* 118665 */ GIR_RootConstrainSelectedInstOperands, |
| 42285 | /* 118666 */ // GIR_Coverage, 697, |
| 42286 | /* 118666 */ GIR_EraseRootFromParent_Done, |
| 42287 | /* 118667 */ // Label 2581: @118667 |
| 42288 | /* 118667 */ GIM_Try, /*On fail goto*//*Label 2582*/ GIMT_Encode4(118709), // Rule ID 709 // |
| 42289 | /* 118672 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42290 | /* 118675 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42291 | /* 118679 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42292 | /* 118683 */ // (srl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SHR8rCL:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 42293 | /* 118683 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42294 | /* 118687 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42295 | /* 118693 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42296 | /* 118697 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8rCL), |
| 42297 | /* 118700 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42298 | /* 118702 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42299 | /* 118704 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42300 | /* 118707 */ GIR_RootConstrainSelectedInstOperands, |
| 42301 | /* 118708 */ // GIR_Coverage, 709, |
| 42302 | /* 118708 */ GIR_EraseRootFromParent_Done, |
| 42303 | /* 118709 */ // Label 2582: @118709 |
| 42304 | /* 118709 */ GIM_Try, /*On fail goto*//*Label 2583*/ GIMT_Encode4(118751), // Rule ID 713 // |
| 42305 | /* 118714 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42306 | /* 118717 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42307 | /* 118721 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42308 | /* 118725 */ // (srl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SHR8rCL_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 42309 | /* 118725 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42310 | /* 118729 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42311 | /* 118735 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42312 | /* 118739 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8rCL_ND), |
| 42313 | /* 118742 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42314 | /* 118744 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42315 | /* 118746 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42316 | /* 118749 */ GIR_RootConstrainSelectedInstOperands, |
| 42317 | /* 118750 */ // GIR_Coverage, 713, |
| 42318 | /* 118750 */ GIR_EraseRootFromParent_Done, |
| 42319 | /* 118751 */ // Label 2583: @118751 |
| 42320 | /* 118751 */ GIM_Reject, |
| 42321 | /* 118752 */ // Label 2577: @118752 |
| 42322 | /* 118752 */ GIM_Reject, |
| 42323 | /* 118753 */ // Label 2573: @118753 |
| 42324 | /* 118753 */ GIM_Try, /*On fail goto*//*Label 2584*/ GIMT_Encode4(119067), |
| 42325 | /* 118758 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 42326 | /* 118761 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 42327 | /* 118764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 42328 | /* 118768 */ GIM_Try, /*On fail goto*//*Label 2585*/ GIMT_Encode4(118835), // Rule ID 706 // |
| 42329 | /* 118773 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42330 | /* 118776 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42331 | /* 118780 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42332 | /* 118784 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42333 | /* 118787 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42334 | /* 118791 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 42335 | /* 118795 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 42336 | /* 118799 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42337 | /* 118803 */ // MIs[2] Operand 1 |
| 42338 | /* 118803 */ // No operand predicates |
| 42339 | /* 118803 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 42340 | /* 118805 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42341 | /* 118812 */ // (srl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i8] }):$src2) => (SHR16mi_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42342 | /* 118812 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16mi_ND), |
| 42343 | /* 118815 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42344 | /* 118817 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42345 | /* 118821 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 42346 | /* 118824 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42347 | /* 118827 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 42348 | /* 118833 */ GIR_RootConstrainSelectedInstOperands, |
| 42349 | /* 118834 */ // GIR_Coverage, 706, |
| 42350 | /* 118834 */ GIR_EraseRootFromParent_Done, |
| 42351 | /* 118835 */ // Label 2585: @118835 |
| 42352 | /* 118835 */ GIM_Try, /*On fail goto*//*Label 2586*/ GIMT_Encode4(118908), // Rule ID 722 // |
| 42353 | /* 118840 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42354 | /* 118843 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42355 | /* 118847 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42356 | /* 118851 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42357 | /* 118854 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42358 | /* 118858 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 42359 | /* 118862 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42360 | /* 118866 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42361 | /* 118868 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42362 | /* 118875 */ // (srl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, CL:{ *:[i8] }) => (SHR16mCL_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 42363 | /* 118875 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42364 | /* 118879 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42365 | /* 118885 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42366 | /* 118889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16mCL_ND), |
| 42367 | /* 118892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42368 | /* 118894 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42369 | /* 118898 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42370 | /* 118901 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42371 | /* 118906 */ GIR_RootConstrainSelectedInstOperands, |
| 42372 | /* 118907 */ // GIR_Coverage, 722, |
| 42373 | /* 118907 */ GIR_EraseRootFromParent_Done, |
| 42374 | /* 118908 */ // Label 2586: @118908 |
| 42375 | /* 118908 */ GIM_Try, /*On fail goto*//*Label 2587*/ GIMT_Encode4(118945), // Rule ID 694 // |
| 42376 | /* 118913 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42377 | /* 118916 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 42378 | /* 118920 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42379 | /* 118924 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42380 | /* 118928 */ // MIs[1] Operand 1 |
| 42381 | /* 118928 */ // No operand predicates |
| 42382 | /* 118928 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42383 | /* 118930 */ // (srl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42384 | /* 118930 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16ri), |
| 42385 | /* 118933 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42386 | /* 118935 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42387 | /* 118937 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42388 | /* 118940 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42389 | /* 118943 */ GIR_RootConstrainSelectedInstOperands, |
| 42390 | /* 118944 */ // GIR_Coverage, 694, |
| 42391 | /* 118944 */ GIR_EraseRootFromParent_Done, |
| 42392 | /* 118945 */ // Label 2587: @118945 |
| 42393 | /* 118945 */ GIM_Try, /*On fail goto*//*Label 2588*/ GIMT_Encode4(118982), // Rule ID 698 // |
| 42394 | /* 118950 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42395 | /* 118953 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 42396 | /* 118957 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42397 | /* 118961 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42398 | /* 118965 */ // MIs[1] Operand 1 |
| 42399 | /* 118965 */ // No operand predicates |
| 42400 | /* 118965 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42401 | /* 118967 */ // (srl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42402 | /* 118967 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16ri_ND), |
| 42403 | /* 118970 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42404 | /* 118972 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42405 | /* 118974 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42406 | /* 118977 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42407 | /* 118980 */ GIR_RootConstrainSelectedInstOperands, |
| 42408 | /* 118981 */ // GIR_Coverage, 698, |
| 42409 | /* 118981 */ GIR_EraseRootFromParent_Done, |
| 42410 | /* 118982 */ // Label 2588: @118982 |
| 42411 | /* 118982 */ GIM_Try, /*On fail goto*//*Label 2589*/ GIMT_Encode4(119024), // Rule ID 710 // |
| 42412 | /* 118987 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42413 | /* 118990 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 42414 | /* 118994 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42415 | /* 118998 */ // (srl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SHR16rCL:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 42416 | /* 118998 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42417 | /* 119002 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42418 | /* 119008 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42419 | /* 119012 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16rCL), |
| 42420 | /* 119015 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42421 | /* 119017 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42422 | /* 119019 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42423 | /* 119022 */ GIR_RootConstrainSelectedInstOperands, |
| 42424 | /* 119023 */ // GIR_Coverage, 710, |
| 42425 | /* 119023 */ GIR_EraseRootFromParent_Done, |
| 42426 | /* 119024 */ // Label 2589: @119024 |
| 42427 | /* 119024 */ GIM_Try, /*On fail goto*//*Label 2590*/ GIMT_Encode4(119066), // Rule ID 714 // |
| 42428 | /* 119029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42429 | /* 119032 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 42430 | /* 119036 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42431 | /* 119040 */ // (srl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SHR16rCL_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 42432 | /* 119040 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42433 | /* 119044 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42434 | /* 119050 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42435 | /* 119054 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16rCL_ND), |
| 42436 | /* 119057 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42437 | /* 119059 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42438 | /* 119061 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42439 | /* 119064 */ GIR_RootConstrainSelectedInstOperands, |
| 42440 | /* 119065 */ // GIR_Coverage, 714, |
| 42441 | /* 119065 */ GIR_EraseRootFromParent_Done, |
| 42442 | /* 119066 */ // Label 2590: @119066 |
| 42443 | /* 119066 */ GIM_Reject, |
| 42444 | /* 119067 */ // Label 2584: @119067 |
| 42445 | /* 119067 */ GIM_Reject, |
| 42446 | /* 119068 */ // Label 2574: @119068 |
| 42447 | /* 119068 */ GIM_Try, /*On fail goto*//*Label 2591*/ GIMT_Encode4(119760), |
| 42448 | /* 119073 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 42449 | /* 119076 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 42450 | /* 119079 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 42451 | /* 119083 */ GIM_Try, /*On fail goto*//*Label 2592*/ GIMT_Encode4(119150), // Rule ID 707 // |
| 42452 | /* 119088 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42453 | /* 119091 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42454 | /* 119095 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42455 | /* 119099 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42456 | /* 119102 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42457 | /* 119106 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 42458 | /* 119110 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 42459 | /* 119114 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42460 | /* 119118 */ // MIs[2] Operand 1 |
| 42461 | /* 119118 */ // No operand predicates |
| 42462 | /* 119118 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 42463 | /* 119120 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42464 | /* 119127 */ // (srl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src2) => (SHR32mi_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42465 | /* 119127 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32mi_ND), |
| 42466 | /* 119130 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42467 | /* 119132 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42468 | /* 119136 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 42469 | /* 119139 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42470 | /* 119142 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 42471 | /* 119148 */ GIR_RootConstrainSelectedInstOperands, |
| 42472 | /* 119149 */ // GIR_Coverage, 707, |
| 42473 | /* 119149 */ GIR_EraseRootFromParent_Done, |
| 42474 | /* 119150 */ // Label 2592: @119150 |
| 42475 | /* 119150 */ GIM_Try, /*On fail goto*//*Label 2593*/ GIMT_Encode4(119223), // Rule ID 723 // |
| 42476 | /* 119155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42477 | /* 119158 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42478 | /* 119162 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42479 | /* 119166 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42480 | /* 119169 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42481 | /* 119173 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 42482 | /* 119177 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42483 | /* 119181 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42484 | /* 119183 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42485 | /* 119190 */ // (srl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }) => (SHR32mCL_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 42486 | /* 119190 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42487 | /* 119194 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42488 | /* 119200 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42489 | /* 119204 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32mCL_ND), |
| 42490 | /* 119207 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42491 | /* 119209 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42492 | /* 119213 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42493 | /* 119216 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42494 | /* 119221 */ GIR_RootConstrainSelectedInstOperands, |
| 42495 | /* 119222 */ // GIR_Coverage, 723, |
| 42496 | /* 119222 */ GIR_EraseRootFromParent_Done, |
| 42497 | /* 119223 */ // Label 2593: @119223 |
| 42498 | /* 119223 */ GIM_Try, /*On fail goto*//*Label 2594*/ GIMT_Encode4(119333), // Rule ID 17664 // |
| 42499 | /* 119228 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 42500 | /* 119231 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42501 | /* 119235 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42502 | /* 119239 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42503 | /* 119242 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42504 | /* 119246 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 42505 | /* 119250 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42506 | /* 119254 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42507 | /* 119256 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42508 | /* 119263 */ // (srl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR8:{ *:[i8] }:$src2) => (SHRX32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42509 | /* 119263 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 42510 | /* 119266 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42511 | /* 119270 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42512 | /* 119275 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42513 | /* 119277 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 42514 | /* 119280 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42515 | /* 119284 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42516 | /* 119289 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42517 | /* 119292 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42518 | /* 119296 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42519 | /* 119299 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 42520 | /* 119304 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 42521 | /* 119309 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42522 | /* 119314 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX32rm), |
| 42523 | /* 119317 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42524 | /* 119319 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42525 | /* 119323 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42526 | /* 119326 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42527 | /* 119331 */ GIR_RootConstrainSelectedInstOperands, |
| 42528 | /* 119332 */ // GIR_Coverage, 17664, |
| 42529 | /* 119332 */ GIR_EraseRootFromParent_Done, |
| 42530 | /* 119333 */ // Label 2594: @119333 |
| 42531 | /* 119333 */ GIM_Try, /*On fail goto*//*Label 2595*/ GIMT_Encode4(119443), // Rule ID 17696 // |
| 42532 | /* 119338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 42533 | /* 119341 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42534 | /* 119345 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42535 | /* 119349 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42536 | /* 119352 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42537 | /* 119356 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 42538 | /* 119360 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42539 | /* 119364 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42540 | /* 119366 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42541 | /* 119373 */ // (srl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR8:{ *:[i8] }:$src2) => (SHRX32rm_EVEX:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42542 | /* 119373 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 42543 | /* 119376 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42544 | /* 119380 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42545 | /* 119385 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42546 | /* 119387 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 42547 | /* 119390 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42548 | /* 119394 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42549 | /* 119399 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42550 | /* 119402 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42551 | /* 119406 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42552 | /* 119409 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 42553 | /* 119414 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 42554 | /* 119419 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42555 | /* 119424 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX32rm_EVEX), |
| 42556 | /* 119427 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42557 | /* 119429 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42558 | /* 119433 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42559 | /* 119436 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42560 | /* 119441 */ GIR_RootConstrainSelectedInstOperands, |
| 42561 | /* 119442 */ // GIR_Coverage, 17696, |
| 42562 | /* 119442 */ GIR_EraseRootFromParent_Done, |
| 42563 | /* 119443 */ // Label 2595: @119443 |
| 42564 | /* 119443 */ GIM_Try, /*On fail goto*//*Label 2596*/ GIMT_Encode4(119480), // Rule ID 695 // |
| 42565 | /* 119448 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42566 | /* 119451 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 42567 | /* 119455 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42568 | /* 119459 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42569 | /* 119463 */ // MIs[1] Operand 1 |
| 42570 | /* 119463 */ // No operand predicates |
| 42571 | /* 119463 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42572 | /* 119465 */ // (srl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42573 | /* 119465 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32ri), |
| 42574 | /* 119468 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42575 | /* 119470 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42576 | /* 119472 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42577 | /* 119475 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42578 | /* 119478 */ GIR_RootConstrainSelectedInstOperands, |
| 42579 | /* 119479 */ // GIR_Coverage, 695, |
| 42580 | /* 119479 */ GIR_EraseRootFromParent_Done, |
| 42581 | /* 119480 */ // Label 2596: @119480 |
| 42582 | /* 119480 */ GIM_Try, /*On fail goto*//*Label 2597*/ GIMT_Encode4(119517), // Rule ID 699 // |
| 42583 | /* 119485 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42584 | /* 119488 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 42585 | /* 119492 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42586 | /* 119496 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42587 | /* 119500 */ // MIs[1] Operand 1 |
| 42588 | /* 119500 */ // No operand predicates |
| 42589 | /* 119500 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42590 | /* 119502 */ // (srl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42591 | /* 119502 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32ri_ND), |
| 42592 | /* 119505 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42593 | /* 119507 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42594 | /* 119509 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42595 | /* 119512 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42596 | /* 119515 */ GIR_RootConstrainSelectedInstOperands, |
| 42597 | /* 119516 */ // GIR_Coverage, 699, |
| 42598 | /* 119516 */ GIR_EraseRootFromParent_Done, |
| 42599 | /* 119517 */ // Label 2597: @119517 |
| 42600 | /* 119517 */ GIM_Try, /*On fail goto*//*Label 2598*/ GIMT_Encode4(119596), // Rule ID 17660 // |
| 42601 | /* 119522 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 42602 | /* 119525 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 42603 | /* 119529 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42604 | /* 119533 */ // (srl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) => (SHRX32rr:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42605 | /* 119533 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 42606 | /* 119536 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42607 | /* 119540 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42608 | /* 119545 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42609 | /* 119547 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 42610 | /* 119550 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42611 | /* 119554 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42612 | /* 119559 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42613 | /* 119562 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42614 | /* 119566 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42615 | /* 119569 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 42616 | /* 119574 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 42617 | /* 119579 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42618 | /* 119584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX32rr), |
| 42619 | /* 119587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42620 | /* 119589 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42621 | /* 119591 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42622 | /* 119594 */ GIR_RootConstrainSelectedInstOperands, |
| 42623 | /* 119595 */ // GIR_Coverage, 17660, |
| 42624 | /* 119595 */ GIR_EraseRootFromParent_Done, |
| 42625 | /* 119596 */ // Label 2598: @119596 |
| 42626 | /* 119596 */ GIM_Try, /*On fail goto*//*Label 2599*/ GIMT_Encode4(119675), // Rule ID 17692 // |
| 42627 | /* 119601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 42628 | /* 119604 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 42629 | /* 119608 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42630 | /* 119612 */ // (srl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) => (SHRX32rr_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42631 | /* 119612 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 42632 | /* 119615 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42633 | /* 119619 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42634 | /* 119624 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42635 | /* 119626 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 42636 | /* 119629 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42637 | /* 119633 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42638 | /* 119638 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42639 | /* 119641 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42640 | /* 119645 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42641 | /* 119648 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 42642 | /* 119653 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 42643 | /* 119658 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42644 | /* 119663 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX32rr_EVEX), |
| 42645 | /* 119666 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42646 | /* 119668 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42647 | /* 119670 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42648 | /* 119673 */ GIR_RootConstrainSelectedInstOperands, |
| 42649 | /* 119674 */ // GIR_Coverage, 17692, |
| 42650 | /* 119674 */ GIR_EraseRootFromParent_Done, |
| 42651 | /* 119675 */ // Label 2599: @119675 |
| 42652 | /* 119675 */ GIM_Try, /*On fail goto*//*Label 2600*/ GIMT_Encode4(119717), // Rule ID 711 // |
| 42653 | /* 119680 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42654 | /* 119683 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 42655 | /* 119687 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42656 | /* 119691 */ // (srl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHR32rCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 42657 | /* 119691 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42658 | /* 119695 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42659 | /* 119701 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42660 | /* 119705 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32rCL), |
| 42661 | /* 119708 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42662 | /* 119710 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42663 | /* 119712 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42664 | /* 119715 */ GIR_RootConstrainSelectedInstOperands, |
| 42665 | /* 119716 */ // GIR_Coverage, 711, |
| 42666 | /* 119716 */ GIR_EraseRootFromParent_Done, |
| 42667 | /* 119717 */ // Label 2600: @119717 |
| 42668 | /* 119717 */ GIM_Try, /*On fail goto*//*Label 2601*/ GIMT_Encode4(119759), // Rule ID 715 // |
| 42669 | /* 119722 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42670 | /* 119725 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 42671 | /* 119729 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42672 | /* 119733 */ // (srl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHR32rCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 42673 | /* 119733 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42674 | /* 119737 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42675 | /* 119743 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42676 | /* 119747 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32rCL_ND), |
| 42677 | /* 119750 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42678 | /* 119752 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42679 | /* 119754 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42680 | /* 119757 */ GIR_RootConstrainSelectedInstOperands, |
| 42681 | /* 119758 */ // GIR_Coverage, 715, |
| 42682 | /* 119758 */ GIR_EraseRootFromParent_Done, |
| 42683 | /* 119759 */ // Label 2601: @119759 |
| 42684 | /* 119759 */ GIM_Reject, |
| 42685 | /* 119760 */ // Label 2591: @119760 |
| 42686 | /* 119760 */ GIM_Reject, |
| 42687 | /* 119761 */ // Label 2575: @119761 |
| 42688 | /* 119761 */ GIM_Try, /*On fail goto*//*Label 2602*/ GIMT_Encode4(120453), |
| 42689 | /* 119766 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 42690 | /* 119769 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 42691 | /* 119772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42692 | /* 119776 */ GIM_Try, /*On fail goto*//*Label 2603*/ GIMT_Encode4(119843), // Rule ID 708 // |
| 42693 | /* 119781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42694 | /* 119784 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42695 | /* 119788 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42696 | /* 119792 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42697 | /* 119795 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42698 | /* 119799 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42699 | /* 119803 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 42700 | /* 119807 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42701 | /* 119811 */ // MIs[2] Operand 1 |
| 42702 | /* 119811 */ // No operand predicates |
| 42703 | /* 119811 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 42704 | /* 119813 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42705 | /* 119820 */ // (srl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src2) => (SHR64mi_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42706 | /* 119820 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64mi_ND), |
| 42707 | /* 119823 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42708 | /* 119825 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42709 | /* 119829 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 42710 | /* 119832 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42711 | /* 119835 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 42712 | /* 119841 */ GIR_RootConstrainSelectedInstOperands, |
| 42713 | /* 119842 */ // GIR_Coverage, 708, |
| 42714 | /* 119842 */ GIR_EraseRootFromParent_Done, |
| 42715 | /* 119843 */ // Label 2603: @119843 |
| 42716 | /* 119843 */ GIM_Try, /*On fail goto*//*Label 2604*/ GIMT_Encode4(119916), // Rule ID 724 // |
| 42717 | /* 119848 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42718 | /* 119851 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42719 | /* 119855 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42720 | /* 119859 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42721 | /* 119862 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42722 | /* 119866 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42723 | /* 119870 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42724 | /* 119874 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42725 | /* 119876 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42726 | /* 119883 */ // (srl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }) => (SHR64mCL_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 42727 | /* 119883 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42728 | /* 119887 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42729 | /* 119893 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42730 | /* 119897 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64mCL_ND), |
| 42731 | /* 119900 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42732 | /* 119902 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42733 | /* 119906 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42734 | /* 119909 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42735 | /* 119914 */ GIR_RootConstrainSelectedInstOperands, |
| 42736 | /* 119915 */ // GIR_Coverage, 724, |
| 42737 | /* 119915 */ GIR_EraseRootFromParent_Done, |
| 42738 | /* 119916 */ // Label 2604: @119916 |
| 42739 | /* 119916 */ GIM_Try, /*On fail goto*//*Label 2605*/ GIMT_Encode4(120026), // Rule ID 17665 // |
| 42740 | /* 119921 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 42741 | /* 119924 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42742 | /* 119928 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42743 | /* 119932 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42744 | /* 119935 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42745 | /* 119939 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42746 | /* 119943 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42747 | /* 119947 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42748 | /* 119949 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42749 | /* 119956 */ // (srl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2) => (SHRX64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42750 | /* 119956 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 42751 | /* 119959 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42752 | /* 119963 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42753 | /* 119968 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42754 | /* 119970 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 42755 | /* 119973 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42756 | /* 119977 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42757 | /* 119982 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42758 | /* 119985 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42759 | /* 119989 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42760 | /* 119992 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42761 | /* 119997 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42762 | /* 120002 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42763 | /* 120007 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX64rm), |
| 42764 | /* 120010 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42765 | /* 120012 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42766 | /* 120016 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42767 | /* 120019 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42768 | /* 120024 */ GIR_RootConstrainSelectedInstOperands, |
| 42769 | /* 120025 */ // GIR_Coverage, 17665, |
| 42770 | /* 120025 */ GIR_EraseRootFromParent_Done, |
| 42771 | /* 120026 */ // Label 2605: @120026 |
| 42772 | /* 120026 */ GIM_Try, /*On fail goto*//*Label 2606*/ GIMT_Encode4(120136), // Rule ID 17697 // |
| 42773 | /* 120031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 42774 | /* 120034 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42775 | /* 120038 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42776 | /* 120042 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42777 | /* 120045 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42778 | /* 120049 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42779 | /* 120053 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42780 | /* 120057 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42781 | /* 120059 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42782 | /* 120066 */ // (srl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2) => (SHRX64rm_EVEX:{ *:[i64] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42783 | /* 120066 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 42784 | /* 120069 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42785 | /* 120073 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42786 | /* 120078 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42787 | /* 120080 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 42788 | /* 120083 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42789 | /* 120087 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42790 | /* 120092 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42791 | /* 120095 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42792 | /* 120099 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42793 | /* 120102 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42794 | /* 120107 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42795 | /* 120112 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42796 | /* 120117 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX64rm_EVEX), |
| 42797 | /* 120120 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42798 | /* 120122 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42799 | /* 120126 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42800 | /* 120129 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42801 | /* 120134 */ GIR_RootConstrainSelectedInstOperands, |
| 42802 | /* 120135 */ // GIR_Coverage, 17697, |
| 42803 | /* 120135 */ GIR_EraseRootFromParent_Done, |
| 42804 | /* 120136 */ // Label 2606: @120136 |
| 42805 | /* 120136 */ GIM_Try, /*On fail goto*//*Label 2607*/ GIMT_Encode4(120173), // Rule ID 696 // |
| 42806 | /* 120141 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42807 | /* 120144 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42808 | /* 120148 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42809 | /* 120152 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42810 | /* 120156 */ // MIs[1] Operand 1 |
| 42811 | /* 120156 */ // No operand predicates |
| 42812 | /* 120156 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42813 | /* 120158 */ // (srl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42814 | /* 120158 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64ri), |
| 42815 | /* 120161 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42816 | /* 120163 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42817 | /* 120165 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42818 | /* 120168 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42819 | /* 120171 */ GIR_RootConstrainSelectedInstOperands, |
| 42820 | /* 120172 */ // GIR_Coverage, 696, |
| 42821 | /* 120172 */ GIR_EraseRootFromParent_Done, |
| 42822 | /* 120173 */ // Label 2607: @120173 |
| 42823 | /* 120173 */ GIM_Try, /*On fail goto*//*Label 2608*/ GIMT_Encode4(120210), // Rule ID 700 // |
| 42824 | /* 120178 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42825 | /* 120181 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42826 | /* 120185 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42827 | /* 120189 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42828 | /* 120193 */ // MIs[1] Operand 1 |
| 42829 | /* 120193 */ // No operand predicates |
| 42830 | /* 120193 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42831 | /* 120195 */ // (srl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR64ri_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42832 | /* 120195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64ri_ND), |
| 42833 | /* 120198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42834 | /* 120200 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42835 | /* 120202 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42836 | /* 120205 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42837 | /* 120208 */ GIR_RootConstrainSelectedInstOperands, |
| 42838 | /* 120209 */ // GIR_Coverage, 700, |
| 42839 | /* 120209 */ GIR_EraseRootFromParent_Done, |
| 42840 | /* 120210 */ // Label 2608: @120210 |
| 42841 | /* 120210 */ GIM_Try, /*On fail goto*//*Label 2609*/ GIMT_Encode4(120289), // Rule ID 17661 // |
| 42842 | /* 120215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 42843 | /* 120218 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42844 | /* 120222 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42845 | /* 120226 */ // (srl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR8:{ *:[i8] }:$src2) => (SHRX64rr:{ *:[i64] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42846 | /* 120226 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 42847 | /* 120229 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42848 | /* 120233 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42849 | /* 120238 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42850 | /* 120240 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 42851 | /* 120243 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42852 | /* 120247 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42853 | /* 120252 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42854 | /* 120255 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42855 | /* 120259 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42856 | /* 120262 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42857 | /* 120267 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42858 | /* 120272 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42859 | /* 120277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX64rr), |
| 42860 | /* 120280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42861 | /* 120282 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42862 | /* 120284 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42863 | /* 120287 */ GIR_RootConstrainSelectedInstOperands, |
| 42864 | /* 120288 */ // GIR_Coverage, 17661, |
| 42865 | /* 120288 */ GIR_EraseRootFromParent_Done, |
| 42866 | /* 120289 */ // Label 2609: @120289 |
| 42867 | /* 120289 */ GIM_Try, /*On fail goto*//*Label 2610*/ GIMT_Encode4(120368), // Rule ID 17693 // |
| 42868 | /* 120294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 42869 | /* 120297 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42870 | /* 120301 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42871 | /* 120305 */ // (srl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR8:{ *:[i8] }:$src2) => (SHRX64rr_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 42872 | /* 120305 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 42873 | /* 120308 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42874 | /* 120312 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42875 | /* 120317 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42876 | /* 120319 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 42877 | /* 120322 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42878 | /* 120326 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 42879 | /* 120331 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42880 | /* 120334 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42881 | /* 120338 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42882 | /* 120341 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42883 | /* 120346 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42884 | /* 120351 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42885 | /* 120356 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX64rr_EVEX), |
| 42886 | /* 120359 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42887 | /* 120361 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42888 | /* 120363 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42889 | /* 120366 */ GIR_RootConstrainSelectedInstOperands, |
| 42890 | /* 120367 */ // GIR_Coverage, 17693, |
| 42891 | /* 120367 */ GIR_EraseRootFromParent_Done, |
| 42892 | /* 120368 */ // Label 2610: @120368 |
| 42893 | /* 120368 */ GIM_Try, /*On fail goto*//*Label 2611*/ GIMT_Encode4(120410), // Rule ID 712 // |
| 42894 | /* 120373 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42895 | /* 120376 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42896 | /* 120380 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42897 | /* 120384 */ // (srl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHR64rCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 42898 | /* 120384 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42899 | /* 120388 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42900 | /* 120394 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42901 | /* 120398 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64rCL), |
| 42902 | /* 120401 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42903 | /* 120403 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42904 | /* 120405 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42905 | /* 120408 */ GIR_RootConstrainSelectedInstOperands, |
| 42906 | /* 120409 */ // GIR_Coverage, 712, |
| 42907 | /* 120409 */ GIR_EraseRootFromParent_Done, |
| 42908 | /* 120410 */ // Label 2611: @120410 |
| 42909 | /* 120410 */ GIM_Try, /*On fail goto*//*Label 2612*/ GIMT_Encode4(120452), // Rule ID 716 // |
| 42910 | /* 120415 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42911 | /* 120418 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42912 | /* 120422 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42913 | /* 120426 */ // (srl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHR64rCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 42914 | /* 120426 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42915 | /* 120430 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42916 | /* 120436 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42917 | /* 120440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64rCL_ND), |
| 42918 | /* 120443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42919 | /* 120445 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42920 | /* 120447 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42921 | /* 120450 */ GIR_RootConstrainSelectedInstOperands, |
| 42922 | /* 120451 */ // GIR_Coverage, 716, |
| 42923 | /* 120451 */ GIR_EraseRootFromParent_Done, |
| 42924 | /* 120452 */ // Label 2612: @120452 |
| 42925 | /* 120452 */ GIM_Reject, |
| 42926 | /* 120453 */ // Label 2602: @120453 |
| 42927 | /* 120453 */ GIM_Reject, |
| 42928 | /* 120454 */ // Label 2576: @120454 |
| 42929 | /* 120454 */ GIM_Reject, |
| 42930 | /* 120455 */ // Label 28: @120455 |
| 42931 | /* 120455 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 2617*/ GIMT_Encode4(122498), |
| 42932 | /* 120466 */ /*GILLT_s8*//*Label 2613*/ GIMT_Encode4(120482), |
| 42933 | /* 120470 */ /*GILLT_s16*//*Label 2614*/ GIMT_Encode4(120797), |
| 42934 | /* 120474 */ /*GILLT_s32*//*Label 2615*/ GIMT_Encode4(121112), |
| 42935 | /* 120478 */ /*GILLT_s64*//*Label 2616*/ GIMT_Encode4(121805), |
| 42936 | /* 120482 */ // Label 2613: @120482 |
| 42937 | /* 120482 */ GIM_Try, /*On fail goto*//*Label 2618*/ GIMT_Encode4(120796), |
| 42938 | /* 120487 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 42939 | /* 120490 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 42940 | /* 120493 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42941 | /* 120497 */ GIM_Try, /*On fail goto*//*Label 2619*/ GIMT_Encode4(120564), // Rule ID 737 // |
| 42942 | /* 120502 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42943 | /* 120505 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42944 | /* 120509 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42945 | /* 120513 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42946 | /* 120516 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42947 | /* 120520 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 42948 | /* 120524 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 42949 | /* 120528 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42950 | /* 120532 */ // MIs[2] Operand 1 |
| 42951 | /* 120532 */ // No operand predicates |
| 42952 | /* 120532 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 42953 | /* 120534 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42954 | /* 120541 */ // (sra:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, (imm:{ *:[i8] }):$src2) => (SAR8mi_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42955 | /* 120541 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8mi_ND), |
| 42956 | /* 120544 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42957 | /* 120546 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42958 | /* 120550 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 42959 | /* 120553 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42960 | /* 120556 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 42961 | /* 120562 */ GIR_RootConstrainSelectedInstOperands, |
| 42962 | /* 120563 */ // GIR_Coverage, 737, |
| 42963 | /* 120563 */ GIR_EraseRootFromParent_Done, |
| 42964 | /* 120564 */ // Label 2619: @120564 |
| 42965 | /* 120564 */ GIM_Try, /*On fail goto*//*Label 2620*/ GIMT_Encode4(120637), // Rule ID 753 // |
| 42966 | /* 120569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42967 | /* 120572 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 42968 | /* 120576 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42969 | /* 120580 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42970 | /* 120583 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42971 | /* 120587 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 42972 | /* 120591 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42973 | /* 120595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42974 | /* 120597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42975 | /* 120604 */ // (sra:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, CL:{ *:[i8] }) => (SAR8mCL_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 42976 | /* 120604 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42977 | /* 120608 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 42978 | /* 120614 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42979 | /* 120618 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8mCL_ND), |
| 42980 | /* 120621 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42981 | /* 120623 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 42982 | /* 120627 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42983 | /* 120630 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42984 | /* 120635 */ GIR_RootConstrainSelectedInstOperands, |
| 42985 | /* 120636 */ // GIR_Coverage, 753, |
| 42986 | /* 120636 */ GIR_EraseRootFromParent_Done, |
| 42987 | /* 120637 */ // Label 2620: @120637 |
| 42988 | /* 120637 */ GIM_Try, /*On fail goto*//*Label 2621*/ GIMT_Encode4(120674), // Rule ID 725 // |
| 42989 | /* 120642 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42990 | /* 120645 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42991 | /* 120649 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42992 | /* 120653 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42993 | /* 120657 */ // MIs[1] Operand 1 |
| 42994 | /* 120657 */ // No operand predicates |
| 42995 | /* 120657 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42996 | /* 120659 */ // (sra:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42997 | /* 120659 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8ri), |
| 42998 | /* 120662 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42999 | /* 120664 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43000 | /* 120666 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 43001 | /* 120669 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43002 | /* 120672 */ GIR_RootConstrainSelectedInstOperands, |
| 43003 | /* 120673 */ // GIR_Coverage, 725, |
| 43004 | /* 120673 */ GIR_EraseRootFromParent_Done, |
| 43005 | /* 120674 */ // Label 2621: @120674 |
| 43006 | /* 120674 */ GIM_Try, /*On fail goto*//*Label 2622*/ GIMT_Encode4(120711), // Rule ID 729 // |
| 43007 | /* 120679 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43008 | /* 120682 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43009 | /* 120686 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 43010 | /* 120690 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43011 | /* 120694 */ // MIs[1] Operand 1 |
| 43012 | /* 120694 */ // No operand predicates |
| 43013 | /* 120694 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43014 | /* 120696 */ // (sra:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43015 | /* 120696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8ri_ND), |
| 43016 | /* 120699 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43017 | /* 120701 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43018 | /* 120703 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 43019 | /* 120706 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43020 | /* 120709 */ GIR_RootConstrainSelectedInstOperands, |
| 43021 | /* 120710 */ // GIR_Coverage, 729, |
| 43022 | /* 120710 */ GIR_EraseRootFromParent_Done, |
| 43023 | /* 120711 */ // Label 2622: @120711 |
| 43024 | /* 120711 */ GIM_Try, /*On fail goto*//*Label 2623*/ GIMT_Encode4(120753), // Rule ID 741 // |
| 43025 | /* 120716 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43026 | /* 120719 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43027 | /* 120723 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43028 | /* 120727 */ // (sra:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SAR8rCL:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 43029 | /* 120727 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43030 | /* 120731 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43031 | /* 120737 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43032 | /* 120741 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8rCL), |
| 43033 | /* 120744 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43034 | /* 120746 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43035 | /* 120748 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43036 | /* 120751 */ GIR_RootConstrainSelectedInstOperands, |
| 43037 | /* 120752 */ // GIR_Coverage, 741, |
| 43038 | /* 120752 */ GIR_EraseRootFromParent_Done, |
| 43039 | /* 120753 */ // Label 2623: @120753 |
| 43040 | /* 120753 */ GIM_Try, /*On fail goto*//*Label 2624*/ GIMT_Encode4(120795), // Rule ID 745 // |
| 43041 | /* 120758 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43042 | /* 120761 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43043 | /* 120765 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43044 | /* 120769 */ // (sra:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SAR8rCL_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 43045 | /* 120769 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43046 | /* 120773 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43047 | /* 120779 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43048 | /* 120783 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8rCL_ND), |
| 43049 | /* 120786 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43050 | /* 120788 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43051 | /* 120790 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43052 | /* 120793 */ GIR_RootConstrainSelectedInstOperands, |
| 43053 | /* 120794 */ // GIR_Coverage, 745, |
| 43054 | /* 120794 */ GIR_EraseRootFromParent_Done, |
| 43055 | /* 120795 */ // Label 2624: @120795 |
| 43056 | /* 120795 */ GIM_Reject, |
| 43057 | /* 120796 */ // Label 2618: @120796 |
| 43058 | /* 120796 */ GIM_Reject, |
| 43059 | /* 120797 */ // Label 2614: @120797 |
| 43060 | /* 120797 */ GIM_Try, /*On fail goto*//*Label 2625*/ GIMT_Encode4(121111), |
| 43061 | /* 120802 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 43062 | /* 120805 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 43063 | /* 120808 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 43064 | /* 120812 */ GIM_Try, /*On fail goto*//*Label 2626*/ GIMT_Encode4(120879), // Rule ID 738 // |
| 43065 | /* 120817 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43066 | /* 120820 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43067 | /* 120824 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43068 | /* 120828 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43069 | /* 120831 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43070 | /* 120835 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 43071 | /* 120839 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 43072 | /* 120843 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43073 | /* 120847 */ // MIs[2] Operand 1 |
| 43074 | /* 120847 */ // No operand predicates |
| 43075 | /* 120847 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 43076 | /* 120849 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43077 | /* 120856 */ // (sra:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i8] }):$src2) => (SAR16mi_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43078 | /* 120856 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16mi_ND), |
| 43079 | /* 120859 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43080 | /* 120861 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43081 | /* 120865 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 43082 | /* 120868 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43083 | /* 120871 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 43084 | /* 120877 */ GIR_RootConstrainSelectedInstOperands, |
| 43085 | /* 120878 */ // GIR_Coverage, 738, |
| 43086 | /* 120878 */ GIR_EraseRootFromParent_Done, |
| 43087 | /* 120879 */ // Label 2626: @120879 |
| 43088 | /* 120879 */ GIM_Try, /*On fail goto*//*Label 2627*/ GIMT_Encode4(120952), // Rule ID 754 // |
| 43089 | /* 120884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43090 | /* 120887 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43091 | /* 120891 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43092 | /* 120895 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43093 | /* 120898 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43094 | /* 120902 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 43095 | /* 120906 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43096 | /* 120910 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43097 | /* 120912 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43098 | /* 120919 */ // (sra:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, CL:{ *:[i8] }) => (SAR16mCL_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 43099 | /* 120919 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43100 | /* 120923 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43101 | /* 120929 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43102 | /* 120933 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16mCL_ND), |
| 43103 | /* 120936 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43104 | /* 120938 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43105 | /* 120942 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43106 | /* 120945 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43107 | /* 120950 */ GIR_RootConstrainSelectedInstOperands, |
| 43108 | /* 120951 */ // GIR_Coverage, 754, |
| 43109 | /* 120951 */ GIR_EraseRootFromParent_Done, |
| 43110 | /* 120952 */ // Label 2627: @120952 |
| 43111 | /* 120952 */ GIM_Try, /*On fail goto*//*Label 2628*/ GIMT_Encode4(120989), // Rule ID 726 // |
| 43112 | /* 120957 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43113 | /* 120960 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 43114 | /* 120964 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 43115 | /* 120968 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43116 | /* 120972 */ // MIs[1] Operand 1 |
| 43117 | /* 120972 */ // No operand predicates |
| 43118 | /* 120972 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43119 | /* 120974 */ // (sra:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43120 | /* 120974 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16ri), |
| 43121 | /* 120977 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43122 | /* 120979 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43123 | /* 120981 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 43124 | /* 120984 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43125 | /* 120987 */ GIR_RootConstrainSelectedInstOperands, |
| 43126 | /* 120988 */ // GIR_Coverage, 726, |
| 43127 | /* 120988 */ GIR_EraseRootFromParent_Done, |
| 43128 | /* 120989 */ // Label 2628: @120989 |
| 43129 | /* 120989 */ GIM_Try, /*On fail goto*//*Label 2629*/ GIMT_Encode4(121026), // Rule ID 730 // |
| 43130 | /* 120994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43131 | /* 120997 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 43132 | /* 121001 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 43133 | /* 121005 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43134 | /* 121009 */ // MIs[1] Operand 1 |
| 43135 | /* 121009 */ // No operand predicates |
| 43136 | /* 121009 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43137 | /* 121011 */ // (sra:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43138 | /* 121011 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16ri_ND), |
| 43139 | /* 121014 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43140 | /* 121016 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43141 | /* 121018 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 43142 | /* 121021 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43143 | /* 121024 */ GIR_RootConstrainSelectedInstOperands, |
| 43144 | /* 121025 */ // GIR_Coverage, 730, |
| 43145 | /* 121025 */ GIR_EraseRootFromParent_Done, |
| 43146 | /* 121026 */ // Label 2629: @121026 |
| 43147 | /* 121026 */ GIM_Try, /*On fail goto*//*Label 2630*/ GIMT_Encode4(121068), // Rule ID 742 // |
| 43148 | /* 121031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43149 | /* 121034 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 43150 | /* 121038 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43151 | /* 121042 */ // (sra:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SAR16rCL:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 43152 | /* 121042 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43153 | /* 121046 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43154 | /* 121052 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43155 | /* 121056 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16rCL), |
| 43156 | /* 121059 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43157 | /* 121061 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43158 | /* 121063 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43159 | /* 121066 */ GIR_RootConstrainSelectedInstOperands, |
| 43160 | /* 121067 */ // GIR_Coverage, 742, |
| 43161 | /* 121067 */ GIR_EraseRootFromParent_Done, |
| 43162 | /* 121068 */ // Label 2630: @121068 |
| 43163 | /* 121068 */ GIM_Try, /*On fail goto*//*Label 2631*/ GIMT_Encode4(121110), // Rule ID 746 // |
| 43164 | /* 121073 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43165 | /* 121076 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 43166 | /* 121080 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43167 | /* 121084 */ // (sra:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SAR16rCL_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 43168 | /* 121084 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43169 | /* 121088 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43170 | /* 121094 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43171 | /* 121098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16rCL_ND), |
| 43172 | /* 121101 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43173 | /* 121103 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43174 | /* 121105 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43175 | /* 121108 */ GIR_RootConstrainSelectedInstOperands, |
| 43176 | /* 121109 */ // GIR_Coverage, 746, |
| 43177 | /* 121109 */ GIR_EraseRootFromParent_Done, |
| 43178 | /* 121110 */ // Label 2631: @121110 |
| 43179 | /* 121110 */ GIM_Reject, |
| 43180 | /* 121111 */ // Label 2625: @121111 |
| 43181 | /* 121111 */ GIM_Reject, |
| 43182 | /* 121112 */ // Label 2615: @121112 |
| 43183 | /* 121112 */ GIM_Try, /*On fail goto*//*Label 2632*/ GIMT_Encode4(121804), |
| 43184 | /* 121117 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 43185 | /* 121120 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 43186 | /* 121123 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43187 | /* 121127 */ GIM_Try, /*On fail goto*//*Label 2633*/ GIMT_Encode4(121194), // Rule ID 739 // |
| 43188 | /* 121132 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43189 | /* 121135 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43190 | /* 121139 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43191 | /* 121143 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43192 | /* 121146 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43193 | /* 121150 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 43194 | /* 121154 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 43195 | /* 121158 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43196 | /* 121162 */ // MIs[2] Operand 1 |
| 43197 | /* 121162 */ // No operand predicates |
| 43198 | /* 121162 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 43199 | /* 121164 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43200 | /* 121171 */ // (sra:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src2) => (SAR32mi_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43201 | /* 121171 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32mi_ND), |
| 43202 | /* 121174 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43203 | /* 121176 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43204 | /* 121180 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 43205 | /* 121183 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43206 | /* 121186 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 43207 | /* 121192 */ GIR_RootConstrainSelectedInstOperands, |
| 43208 | /* 121193 */ // GIR_Coverage, 739, |
| 43209 | /* 121193 */ GIR_EraseRootFromParent_Done, |
| 43210 | /* 121194 */ // Label 2633: @121194 |
| 43211 | /* 121194 */ GIM_Try, /*On fail goto*//*Label 2634*/ GIMT_Encode4(121267), // Rule ID 755 // |
| 43212 | /* 121199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43213 | /* 121202 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43214 | /* 121206 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43215 | /* 121210 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43216 | /* 121213 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43217 | /* 121217 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 43218 | /* 121221 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43219 | /* 121225 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43220 | /* 121227 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43221 | /* 121234 */ // (sra:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }) => (SAR32mCL_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 43222 | /* 121234 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43223 | /* 121238 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43224 | /* 121244 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43225 | /* 121248 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32mCL_ND), |
| 43226 | /* 121251 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43227 | /* 121253 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43228 | /* 121257 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43229 | /* 121260 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43230 | /* 121265 */ GIR_RootConstrainSelectedInstOperands, |
| 43231 | /* 121266 */ // GIR_Coverage, 755, |
| 43232 | /* 121266 */ GIR_EraseRootFromParent_Done, |
| 43233 | /* 121267 */ // Label 2634: @121267 |
| 43234 | /* 121267 */ GIM_Try, /*On fail goto*//*Label 2635*/ GIMT_Encode4(121377), // Rule ID 17656 // |
| 43235 | /* 121272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 43236 | /* 121275 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43237 | /* 121279 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43238 | /* 121283 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43239 | /* 121286 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43240 | /* 121290 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 43241 | /* 121294 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43242 | /* 121298 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43243 | /* 121300 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43244 | /* 121307 */ // (sra:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR8:{ *:[i8] }:$src2) => (SARX32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 43245 | /* 121307 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 43246 | /* 121310 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43247 | /* 121314 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43248 | /* 121319 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 43249 | /* 121321 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 43250 | /* 121324 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43251 | /* 121328 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43252 | /* 121333 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43253 | /* 121336 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43254 | /* 121340 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 43255 | /* 121343 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 43256 | /* 121348 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 43257 | /* 121353 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 43258 | /* 121358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX32rm), |
| 43259 | /* 121361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43260 | /* 121363 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43261 | /* 121367 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 43262 | /* 121370 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43263 | /* 121375 */ GIR_RootConstrainSelectedInstOperands, |
| 43264 | /* 121376 */ // GIR_Coverage, 17656, |
| 43265 | /* 121376 */ GIR_EraseRootFromParent_Done, |
| 43266 | /* 121377 */ // Label 2635: @121377 |
| 43267 | /* 121377 */ GIM_Try, /*On fail goto*//*Label 2636*/ GIMT_Encode4(121487), // Rule ID 17688 // |
| 43268 | /* 121382 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 43269 | /* 121385 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43270 | /* 121389 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43271 | /* 121393 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43272 | /* 121396 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43273 | /* 121400 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 43274 | /* 121404 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43275 | /* 121408 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43276 | /* 121410 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43277 | /* 121417 */ // (sra:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR8:{ *:[i8] }:$src2) => (SARX32rm_EVEX:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 43278 | /* 121417 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 43279 | /* 121420 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43280 | /* 121424 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43281 | /* 121429 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 43282 | /* 121431 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 43283 | /* 121434 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43284 | /* 121438 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43285 | /* 121443 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43286 | /* 121446 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43287 | /* 121450 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 43288 | /* 121453 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 43289 | /* 121458 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 43290 | /* 121463 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 43291 | /* 121468 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX32rm_EVEX), |
| 43292 | /* 121471 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43293 | /* 121473 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43294 | /* 121477 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 43295 | /* 121480 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43296 | /* 121485 */ GIR_RootConstrainSelectedInstOperands, |
| 43297 | /* 121486 */ // GIR_Coverage, 17688, |
| 43298 | /* 121486 */ GIR_EraseRootFromParent_Done, |
| 43299 | /* 121487 */ // Label 2636: @121487 |
| 43300 | /* 121487 */ GIM_Try, /*On fail goto*//*Label 2637*/ GIMT_Encode4(121524), // Rule ID 727 // |
| 43301 | /* 121492 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43302 | /* 121495 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43303 | /* 121499 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 43304 | /* 121503 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43305 | /* 121507 */ // MIs[1] Operand 1 |
| 43306 | /* 121507 */ // No operand predicates |
| 43307 | /* 121507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43308 | /* 121509 */ // (sra:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43309 | /* 121509 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32ri), |
| 43310 | /* 121512 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43311 | /* 121514 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43312 | /* 121516 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 43313 | /* 121519 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43314 | /* 121522 */ GIR_RootConstrainSelectedInstOperands, |
| 43315 | /* 121523 */ // GIR_Coverage, 727, |
| 43316 | /* 121523 */ GIR_EraseRootFromParent_Done, |
| 43317 | /* 121524 */ // Label 2637: @121524 |
| 43318 | /* 121524 */ GIM_Try, /*On fail goto*//*Label 2638*/ GIMT_Encode4(121561), // Rule ID 731 // |
| 43319 | /* 121529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43320 | /* 121532 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43321 | /* 121536 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 43322 | /* 121540 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43323 | /* 121544 */ // MIs[1] Operand 1 |
| 43324 | /* 121544 */ // No operand predicates |
| 43325 | /* 121544 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43326 | /* 121546 */ // (sra:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43327 | /* 121546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32ri_ND), |
| 43328 | /* 121549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43329 | /* 121551 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43330 | /* 121553 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 43331 | /* 121556 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43332 | /* 121559 */ GIR_RootConstrainSelectedInstOperands, |
| 43333 | /* 121560 */ // GIR_Coverage, 731, |
| 43334 | /* 121560 */ GIR_EraseRootFromParent_Done, |
| 43335 | /* 121561 */ // Label 2638: @121561 |
| 43336 | /* 121561 */ GIM_Try, /*On fail goto*//*Label 2639*/ GIMT_Encode4(121640), // Rule ID 17652 // |
| 43337 | /* 121566 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 43338 | /* 121569 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43339 | /* 121573 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43340 | /* 121577 */ // (sra:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) => (SARX32rr:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 43341 | /* 121577 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 43342 | /* 121580 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43343 | /* 121584 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43344 | /* 121589 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 43345 | /* 121591 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 43346 | /* 121594 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43347 | /* 121598 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43348 | /* 121603 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43349 | /* 121606 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43350 | /* 121610 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 43351 | /* 121613 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 43352 | /* 121618 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 43353 | /* 121623 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 43354 | /* 121628 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX32rr), |
| 43355 | /* 121631 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43356 | /* 121633 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43357 | /* 121635 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 43358 | /* 121638 */ GIR_RootConstrainSelectedInstOperands, |
| 43359 | /* 121639 */ // GIR_Coverage, 17652, |
| 43360 | /* 121639 */ GIR_EraseRootFromParent_Done, |
| 43361 | /* 121640 */ // Label 2639: @121640 |
| 43362 | /* 121640 */ GIM_Try, /*On fail goto*//*Label 2640*/ GIMT_Encode4(121719), // Rule ID 17684 // |
| 43363 | /* 121645 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 43364 | /* 121648 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43365 | /* 121652 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43366 | /* 121656 */ // (sra:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) => (SARX32rr_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 43367 | /* 121656 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 43368 | /* 121659 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43369 | /* 121663 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43370 | /* 121668 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 43371 | /* 121670 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 43372 | /* 121673 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43373 | /* 121677 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43374 | /* 121682 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43375 | /* 121685 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43376 | /* 121689 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 43377 | /* 121692 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 43378 | /* 121697 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 43379 | /* 121702 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 43380 | /* 121707 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX32rr_EVEX), |
| 43381 | /* 121710 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43382 | /* 121712 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43383 | /* 121714 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 43384 | /* 121717 */ GIR_RootConstrainSelectedInstOperands, |
| 43385 | /* 121718 */ // GIR_Coverage, 17684, |
| 43386 | /* 121718 */ GIR_EraseRootFromParent_Done, |
| 43387 | /* 121719 */ // Label 2640: @121719 |
| 43388 | /* 121719 */ GIM_Try, /*On fail goto*//*Label 2641*/ GIMT_Encode4(121761), // Rule ID 743 // |
| 43389 | /* 121724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43390 | /* 121727 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43391 | /* 121731 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43392 | /* 121735 */ // (sra:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SAR32rCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 43393 | /* 121735 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43394 | /* 121739 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43395 | /* 121745 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43396 | /* 121749 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32rCL), |
| 43397 | /* 121752 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43398 | /* 121754 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43399 | /* 121756 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43400 | /* 121759 */ GIR_RootConstrainSelectedInstOperands, |
| 43401 | /* 121760 */ // GIR_Coverage, 743, |
| 43402 | /* 121760 */ GIR_EraseRootFromParent_Done, |
| 43403 | /* 121761 */ // Label 2641: @121761 |
| 43404 | /* 121761 */ GIM_Try, /*On fail goto*//*Label 2642*/ GIMT_Encode4(121803), // Rule ID 747 // |
| 43405 | /* 121766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43406 | /* 121769 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43407 | /* 121773 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43408 | /* 121777 */ // (sra:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SAR32rCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 43409 | /* 121777 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43410 | /* 121781 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43411 | /* 121787 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43412 | /* 121791 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32rCL_ND), |
| 43413 | /* 121794 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43414 | /* 121796 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43415 | /* 121798 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43416 | /* 121801 */ GIR_RootConstrainSelectedInstOperands, |
| 43417 | /* 121802 */ // GIR_Coverage, 747, |
| 43418 | /* 121802 */ GIR_EraseRootFromParent_Done, |
| 43419 | /* 121803 */ // Label 2642: @121803 |
| 43420 | /* 121803 */ GIM_Reject, |
| 43421 | /* 121804 */ // Label 2632: @121804 |
| 43422 | /* 121804 */ GIM_Reject, |
| 43423 | /* 121805 */ // Label 2616: @121805 |
| 43424 | /* 121805 */ GIM_Try, /*On fail goto*//*Label 2643*/ GIMT_Encode4(122497), |
| 43425 | /* 121810 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 43426 | /* 121813 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 43427 | /* 121816 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43428 | /* 121820 */ GIM_Try, /*On fail goto*//*Label 2644*/ GIMT_Encode4(121887), // Rule ID 740 // |
| 43429 | /* 121825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43430 | /* 121828 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43431 | /* 121832 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43432 | /* 121836 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43433 | /* 121839 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43434 | /* 121843 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43435 | /* 121847 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 43436 | /* 121851 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43437 | /* 121855 */ // MIs[2] Operand 1 |
| 43438 | /* 121855 */ // No operand predicates |
| 43439 | /* 121855 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 43440 | /* 121857 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43441 | /* 121864 */ // (sra:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src2) => (SAR64mi_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43442 | /* 121864 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64mi_ND), |
| 43443 | /* 121867 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43444 | /* 121869 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43445 | /* 121873 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 43446 | /* 121876 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43447 | /* 121879 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 43448 | /* 121885 */ GIR_RootConstrainSelectedInstOperands, |
| 43449 | /* 121886 */ // GIR_Coverage, 740, |
| 43450 | /* 121886 */ GIR_EraseRootFromParent_Done, |
| 43451 | /* 121887 */ // Label 2644: @121887 |
| 43452 | /* 121887 */ GIM_Try, /*On fail goto*//*Label 2645*/ GIMT_Encode4(121960), // Rule ID 756 // |
| 43453 | /* 121892 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43454 | /* 121895 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43455 | /* 121899 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43456 | /* 121903 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43457 | /* 121906 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43458 | /* 121910 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43459 | /* 121914 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43460 | /* 121918 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43461 | /* 121920 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43462 | /* 121927 */ // (sra:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }) => (SAR64mCL_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 43463 | /* 121927 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43464 | /* 121931 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43465 | /* 121937 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43466 | /* 121941 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64mCL_ND), |
| 43467 | /* 121944 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43468 | /* 121946 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43469 | /* 121950 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43470 | /* 121953 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43471 | /* 121958 */ GIR_RootConstrainSelectedInstOperands, |
| 43472 | /* 121959 */ // GIR_Coverage, 756, |
| 43473 | /* 121959 */ GIR_EraseRootFromParent_Done, |
| 43474 | /* 121960 */ // Label 2645: @121960 |
| 43475 | /* 121960 */ GIM_Try, /*On fail goto*//*Label 2646*/ GIMT_Encode4(122070), // Rule ID 17657 // |
| 43476 | /* 121965 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 43477 | /* 121968 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43478 | /* 121972 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43479 | /* 121976 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43480 | /* 121979 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43481 | /* 121983 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43482 | /* 121987 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43483 | /* 121991 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43484 | /* 121993 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43485 | /* 122000 */ // (sra:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2) => (SARX64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 43486 | /* 122000 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 43487 | /* 122003 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43488 | /* 122007 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43489 | /* 122012 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 43490 | /* 122014 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 43491 | /* 122017 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43492 | /* 122021 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43493 | /* 122026 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43494 | /* 122029 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43495 | /* 122033 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 43496 | /* 122036 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 43497 | /* 122041 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 43498 | /* 122046 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 43499 | /* 122051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX64rm), |
| 43500 | /* 122054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43501 | /* 122056 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43502 | /* 122060 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 43503 | /* 122063 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43504 | /* 122068 */ GIR_RootConstrainSelectedInstOperands, |
| 43505 | /* 122069 */ // GIR_Coverage, 17657, |
| 43506 | /* 122069 */ GIR_EraseRootFromParent_Done, |
| 43507 | /* 122070 */ // Label 2646: @122070 |
| 43508 | /* 122070 */ GIM_Try, /*On fail goto*//*Label 2647*/ GIMT_Encode4(122180), // Rule ID 17689 // |
| 43509 | /* 122075 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 43510 | /* 122078 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43511 | /* 122082 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43512 | /* 122086 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43513 | /* 122089 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43514 | /* 122093 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43515 | /* 122097 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43516 | /* 122101 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43517 | /* 122103 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43518 | /* 122110 */ // (sra:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:{ *:[i8] }:$src2) => (SARX64rm_EVEX:{ *:[i64] } addr:{ *:[iPTR] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 43519 | /* 122110 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 43520 | /* 122113 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43521 | /* 122117 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43522 | /* 122122 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 43523 | /* 122124 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 43524 | /* 122127 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43525 | /* 122131 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43526 | /* 122136 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43527 | /* 122139 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43528 | /* 122143 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 43529 | /* 122146 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 43530 | /* 122151 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 43531 | /* 122156 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 43532 | /* 122161 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX64rm_EVEX), |
| 43533 | /* 122164 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43534 | /* 122166 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43535 | /* 122170 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 43536 | /* 122173 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43537 | /* 122178 */ GIR_RootConstrainSelectedInstOperands, |
| 43538 | /* 122179 */ // GIR_Coverage, 17689, |
| 43539 | /* 122179 */ GIR_EraseRootFromParent_Done, |
| 43540 | /* 122180 */ // Label 2647: @122180 |
| 43541 | /* 122180 */ GIM_Try, /*On fail goto*//*Label 2648*/ GIMT_Encode4(122217), // Rule ID 728 // |
| 43542 | /* 122185 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43543 | /* 122188 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43544 | /* 122192 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 43545 | /* 122196 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43546 | /* 122200 */ // MIs[1] Operand 1 |
| 43547 | /* 122200 */ // No operand predicates |
| 43548 | /* 122200 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43549 | /* 122202 */ // (sra:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43550 | /* 122202 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64ri), |
| 43551 | /* 122205 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43552 | /* 122207 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43553 | /* 122209 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 43554 | /* 122212 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43555 | /* 122215 */ GIR_RootConstrainSelectedInstOperands, |
| 43556 | /* 122216 */ // GIR_Coverage, 728, |
| 43557 | /* 122216 */ GIR_EraseRootFromParent_Done, |
| 43558 | /* 122217 */ // Label 2648: @122217 |
| 43559 | /* 122217 */ GIM_Try, /*On fail goto*//*Label 2649*/ GIMT_Encode4(122254), // Rule ID 732 // |
| 43560 | /* 122222 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43561 | /* 122225 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43562 | /* 122229 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 43563 | /* 122233 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43564 | /* 122237 */ // MIs[1] Operand 1 |
| 43565 | /* 122237 */ // No operand predicates |
| 43566 | /* 122237 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43567 | /* 122239 */ // (sra:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR64ri_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43568 | /* 122239 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64ri_ND), |
| 43569 | /* 122242 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43570 | /* 122244 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43571 | /* 122246 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 43572 | /* 122249 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43573 | /* 122252 */ GIR_RootConstrainSelectedInstOperands, |
| 43574 | /* 122253 */ // GIR_Coverage, 732, |
| 43575 | /* 122253 */ GIR_EraseRootFromParent_Done, |
| 43576 | /* 122254 */ // Label 2649: @122254 |
| 43577 | /* 122254 */ GIM_Try, /*On fail goto*//*Label 2650*/ GIMT_Encode4(122333), // Rule ID 17653 // |
| 43578 | /* 122259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 43579 | /* 122262 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43580 | /* 122266 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43581 | /* 122270 */ // (sra:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR8:{ *:[i8] }:$src2) => (SARX64rr:{ *:[i64] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 43582 | /* 122270 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 43583 | /* 122273 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43584 | /* 122277 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43585 | /* 122282 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 43586 | /* 122284 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 43587 | /* 122287 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43588 | /* 122291 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43589 | /* 122296 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43590 | /* 122299 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43591 | /* 122303 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 43592 | /* 122306 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 43593 | /* 122311 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 43594 | /* 122316 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 43595 | /* 122321 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX64rr), |
| 43596 | /* 122324 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43597 | /* 122326 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43598 | /* 122328 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 43599 | /* 122331 */ GIR_RootConstrainSelectedInstOperands, |
| 43600 | /* 122332 */ // GIR_Coverage, 17653, |
| 43601 | /* 122332 */ GIR_EraseRootFromParent_Done, |
| 43602 | /* 122333 */ // Label 2650: @122333 |
| 43603 | /* 122333 */ GIM_Try, /*On fail goto*//*Label 2651*/ GIMT_Encode4(122412), // Rule ID 17685 // |
| 43604 | /* 122338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 43605 | /* 122341 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43606 | /* 122345 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43607 | /* 122349 */ // (sra:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR8:{ *:[i8] }:$src2) => (SARX64rr_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src1, (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR8:{ *:[i8] }:$src2, sub_8bit:{ *:[i32] })) |
| 43608 | /* 122349 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 43609 | /* 122352 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43610 | /* 122356 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43611 | /* 122361 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 43612 | /* 122363 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 43613 | /* 122366 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43614 | /* 122370 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 43615 | /* 122375 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43616 | /* 122378 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43617 | /* 122382 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 43618 | /* 122385 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 43619 | /* 122390 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 43620 | /* 122395 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 43621 | /* 122400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX64rr_EVEX), |
| 43622 | /* 122403 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43623 | /* 122405 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43624 | /* 122407 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 43625 | /* 122410 */ GIR_RootConstrainSelectedInstOperands, |
| 43626 | /* 122411 */ // GIR_Coverage, 17685, |
| 43627 | /* 122411 */ GIR_EraseRootFromParent_Done, |
| 43628 | /* 122412 */ // Label 2651: @122412 |
| 43629 | /* 122412 */ GIM_Try, /*On fail goto*//*Label 2652*/ GIMT_Encode4(122454), // Rule ID 744 // |
| 43630 | /* 122417 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43631 | /* 122420 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43632 | /* 122424 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43633 | /* 122428 */ // (sra:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SAR64rCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 43634 | /* 122428 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43635 | /* 122432 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43636 | /* 122438 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43637 | /* 122442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64rCL), |
| 43638 | /* 122445 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43639 | /* 122447 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43640 | /* 122449 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43641 | /* 122452 */ GIR_RootConstrainSelectedInstOperands, |
| 43642 | /* 122453 */ // GIR_Coverage, 744, |
| 43643 | /* 122453 */ GIR_EraseRootFromParent_Done, |
| 43644 | /* 122454 */ // Label 2652: @122454 |
| 43645 | /* 122454 */ GIM_Try, /*On fail goto*//*Label 2653*/ GIMT_Encode4(122496), // Rule ID 748 // |
| 43646 | /* 122459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43647 | /* 122462 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43648 | /* 122466 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43649 | /* 122470 */ // (sra:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SAR64rCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 43650 | /* 122470 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43651 | /* 122474 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43652 | /* 122480 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 43653 | /* 122484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64rCL_ND), |
| 43654 | /* 122487 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43655 | /* 122489 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43656 | /* 122491 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43657 | /* 122494 */ GIR_RootConstrainSelectedInstOperands, |
| 43658 | /* 122495 */ // GIR_Coverage, 748, |
| 43659 | /* 122495 */ GIR_EraseRootFromParent_Done, |
| 43660 | /* 122496 */ // Label 2653: @122496 |
| 43661 | /* 122496 */ GIM_Reject, |
| 43662 | /* 122497 */ // Label 2643: @122497 |
| 43663 | /* 122497 */ GIM_Reject, |
| 43664 | /* 122498 */ // Label 2617: @122498 |
| 43665 | /* 122498 */ GIM_Reject, |
| 43666 | /* 122499 */ // Label 29: @122499 |
| 43667 | /* 122499 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(5), /*)*//*default:*//*Label 2656*/ GIMT_Encode4(123226), |
| 43668 | /* 122510 */ /*GILLT_s32*//*Label 2654*/ GIMT_Encode4(122518), |
| 43669 | /* 122514 */ /*GILLT_s64*//*Label 2655*/ GIMT_Encode4(122872), |
| 43670 | /* 122518 */ // Label 2654: @122518 |
| 43671 | /* 122518 */ GIM_Try, /*On fail goto*//*Label 2657*/ GIMT_Encode4(122871), |
| 43672 | /* 122523 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 43673 | /* 122526 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 43674 | /* 122529 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 43675 | /* 122532 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43676 | /* 122536 */ GIM_Try, /*On fail goto*//*Label 2658*/ GIMT_Encode4(122609), // Rule ID 840 // |
| 43677 | /* 122541 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43678 | /* 122544 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43679 | /* 122548 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43680 | /* 122552 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43681 | /* 122555 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43682 | /* 122559 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 43683 | /* 122563 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43684 | /* 122567 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 43685 | /* 122571 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43686 | /* 122575 */ // MIs[2] Operand 1 |
| 43687 | /* 122575 */ // No operand predicates |
| 43688 | /* 122575 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 43689 | /* 122577 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43690 | /* 122584 */ // (fshl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) => (SHLD32mri8_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43691 | /* 122584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32mri8_ND), |
| 43692 | /* 122587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43693 | /* 122589 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43694 | /* 122593 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43695 | /* 122595 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src3 |
| 43696 | /* 122598 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43697 | /* 122601 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 43698 | /* 122607 */ GIR_RootConstrainSelectedInstOperands, |
| 43699 | /* 122608 */ // GIR_Coverage, 840, |
| 43700 | /* 122608 */ GIR_EraseRootFromParent_Done, |
| 43701 | /* 122609 */ // Label 2658: @122609 |
| 43702 | /* 122609 */ GIM_Try, /*On fail goto*//*Label 2659*/ GIMT_Encode4(122688), // Rule ID 843 // |
| 43703 | /* 122614 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43704 | /* 122617 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43705 | /* 122621 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43706 | /* 122625 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43707 | /* 122628 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43708 | /* 122632 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 43709 | /* 122636 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43710 | /* 122640 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43711 | /* 122644 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43712 | /* 122646 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43713 | /* 122653 */ // (fshl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, GR32:{ *:[i32] }:$src2, CL:{ *:[i8] }) => (SHLD32mrCL_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 43714 | /* 122653 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43715 | /* 122657 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43716 | /* 122663 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43717 | /* 122667 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32mrCL_ND), |
| 43718 | /* 122670 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43719 | /* 122672 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43720 | /* 122676 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43721 | /* 122678 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43722 | /* 122681 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43723 | /* 122686 */ GIR_RootConstrainSelectedInstOperands, |
| 43724 | /* 122687 */ // GIR_Coverage, 843, |
| 43725 | /* 122687 */ GIR_EraseRootFromParent_Done, |
| 43726 | /* 122688 */ // Label 2659: @122688 |
| 43727 | /* 122688 */ GIM_Try, /*On fail goto*//*Label 2660*/ GIMT_Encode4(122731), // Rule ID 822 // |
| 43728 | /* 122693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43729 | /* 122696 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43730 | /* 122700 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43731 | /* 122704 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43732 | /* 122708 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43733 | /* 122712 */ // MIs[1] Operand 1 |
| 43734 | /* 122712 */ // No operand predicates |
| 43735 | /* 122712 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43736 | /* 122714 */ // (fshl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) => (SHLD32rri8:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43737 | /* 122714 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32rri8), |
| 43738 | /* 122717 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43739 | /* 122719 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43740 | /* 122721 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43741 | /* 122723 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 43742 | /* 122726 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43743 | /* 122729 */ GIR_RootConstrainSelectedInstOperands, |
| 43744 | /* 122730 */ // GIR_Coverage, 822, |
| 43745 | /* 122730 */ GIR_EraseRootFromParent_Done, |
| 43746 | /* 122731 */ // Label 2660: @122731 |
| 43747 | /* 122731 */ GIM_Try, /*On fail goto*//*Label 2661*/ GIMT_Encode4(122774), // Rule ID 828 // |
| 43748 | /* 122736 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43749 | /* 122739 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43750 | /* 122743 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43751 | /* 122747 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43752 | /* 122751 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43753 | /* 122755 */ // MIs[1] Operand 1 |
| 43754 | /* 122755 */ // No operand predicates |
| 43755 | /* 122755 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43756 | /* 122757 */ // (fshl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) => (SHLD32rri8_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43757 | /* 122757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32rri8_ND), |
| 43758 | /* 122760 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43759 | /* 122762 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43760 | /* 122764 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43761 | /* 122766 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 43762 | /* 122769 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43763 | /* 122772 */ GIR_RootConstrainSelectedInstOperands, |
| 43764 | /* 122773 */ // GIR_Coverage, 828, |
| 43765 | /* 122773 */ GIR_EraseRootFromParent_Done, |
| 43766 | /* 122774 */ // Label 2661: @122774 |
| 43767 | /* 122774 */ GIM_Try, /*On fail goto*//*Label 2662*/ GIMT_Encode4(122822), // Rule ID 825 // |
| 43768 | /* 122779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43769 | /* 122782 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43770 | /* 122786 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43771 | /* 122790 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43772 | /* 122794 */ // (fshl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, CL:{ *:[i8] }) => (SHLD32rrCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 43773 | /* 122794 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43774 | /* 122798 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43775 | /* 122804 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43776 | /* 122808 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32rrCL), |
| 43777 | /* 122811 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43778 | /* 122813 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43779 | /* 122815 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43780 | /* 122817 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43781 | /* 122820 */ GIR_RootConstrainSelectedInstOperands, |
| 43782 | /* 122821 */ // GIR_Coverage, 825, |
| 43783 | /* 122821 */ GIR_EraseRootFromParent_Done, |
| 43784 | /* 122822 */ // Label 2662: @122822 |
| 43785 | /* 122822 */ GIM_Try, /*On fail goto*//*Label 2663*/ GIMT_Encode4(122870), // Rule ID 831 // |
| 43786 | /* 122827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43787 | /* 122830 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43788 | /* 122834 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43789 | /* 122838 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43790 | /* 122842 */ // (fshl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, CL:{ *:[i8] }) => (SHLD32rrCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 43791 | /* 122842 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43792 | /* 122846 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43793 | /* 122852 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43794 | /* 122856 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32rrCL_ND), |
| 43795 | /* 122859 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43796 | /* 122861 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43797 | /* 122863 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43798 | /* 122865 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43799 | /* 122868 */ GIR_RootConstrainSelectedInstOperands, |
| 43800 | /* 122869 */ // GIR_Coverage, 831, |
| 43801 | /* 122869 */ GIR_EraseRootFromParent_Done, |
| 43802 | /* 122870 */ // Label 2663: @122870 |
| 43803 | /* 122870 */ GIM_Reject, |
| 43804 | /* 122871 */ // Label 2657: @122871 |
| 43805 | /* 122871 */ GIM_Reject, |
| 43806 | /* 122872 */ // Label 2655: @122872 |
| 43807 | /* 122872 */ GIM_Try, /*On fail goto*//*Label 2664*/ GIMT_Encode4(123225), |
| 43808 | /* 122877 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 43809 | /* 122880 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 43810 | /* 122883 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 43811 | /* 122886 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43812 | /* 122890 */ GIM_Try, /*On fail goto*//*Label 2665*/ GIMT_Encode4(122963), // Rule ID 841 // |
| 43813 | /* 122895 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43814 | /* 122898 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43815 | /* 122902 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43816 | /* 122906 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43817 | /* 122909 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43818 | /* 122913 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43819 | /* 122917 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43820 | /* 122921 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 43821 | /* 122925 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43822 | /* 122929 */ // MIs[2] Operand 1 |
| 43823 | /* 122929 */ // No operand predicates |
| 43824 | /* 122929 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 43825 | /* 122931 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43826 | /* 122938 */ // (fshl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) => (SHLD64mri8_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43827 | /* 122938 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64mri8_ND), |
| 43828 | /* 122941 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43829 | /* 122943 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43830 | /* 122947 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43831 | /* 122949 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src3 |
| 43832 | /* 122952 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43833 | /* 122955 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 43834 | /* 122961 */ GIR_RootConstrainSelectedInstOperands, |
| 43835 | /* 122962 */ // GIR_Coverage, 841, |
| 43836 | /* 122962 */ GIR_EraseRootFromParent_Done, |
| 43837 | /* 122963 */ // Label 2665: @122963 |
| 43838 | /* 122963 */ GIM_Try, /*On fail goto*//*Label 2666*/ GIMT_Encode4(123042), // Rule ID 844 // |
| 43839 | /* 122968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43840 | /* 122971 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 43841 | /* 122975 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43842 | /* 122979 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43843 | /* 122982 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43844 | /* 122986 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43845 | /* 122990 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43846 | /* 122994 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43847 | /* 122998 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43848 | /* 123000 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43849 | /* 123007 */ // (fshl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR64:{ *:[i64] }:$src2, CL:{ *:[i8] }) => (SHLD64mrCL_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 43850 | /* 123007 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43851 | /* 123011 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43852 | /* 123017 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43853 | /* 123021 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64mrCL_ND), |
| 43854 | /* 123024 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43855 | /* 123026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43856 | /* 123030 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43857 | /* 123032 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43858 | /* 123035 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43859 | /* 123040 */ GIR_RootConstrainSelectedInstOperands, |
| 43860 | /* 123041 */ // GIR_Coverage, 844, |
| 43861 | /* 123041 */ GIR_EraseRootFromParent_Done, |
| 43862 | /* 123042 */ // Label 2666: @123042 |
| 43863 | /* 123042 */ GIM_Try, /*On fail goto*//*Label 2667*/ GIMT_Encode4(123085), // Rule ID 823 // |
| 43864 | /* 123047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43865 | /* 123050 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43866 | /* 123054 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43867 | /* 123058 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43868 | /* 123062 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43869 | /* 123066 */ // MIs[1] Operand 1 |
| 43870 | /* 123066 */ // No operand predicates |
| 43871 | /* 123066 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43872 | /* 123068 */ // (fshl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) => (SHLD64rri8:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43873 | /* 123068 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64rri8), |
| 43874 | /* 123071 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43875 | /* 123073 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43876 | /* 123075 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43877 | /* 123077 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 43878 | /* 123080 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43879 | /* 123083 */ GIR_RootConstrainSelectedInstOperands, |
| 43880 | /* 123084 */ // GIR_Coverage, 823, |
| 43881 | /* 123084 */ GIR_EraseRootFromParent_Done, |
| 43882 | /* 123085 */ // Label 2667: @123085 |
| 43883 | /* 123085 */ GIM_Try, /*On fail goto*//*Label 2668*/ GIMT_Encode4(123128), // Rule ID 829 // |
| 43884 | /* 123090 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43885 | /* 123093 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43886 | /* 123097 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43887 | /* 123101 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43888 | /* 123105 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43889 | /* 123109 */ // MIs[1] Operand 1 |
| 43890 | /* 123109 */ // No operand predicates |
| 43891 | /* 123109 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43892 | /* 123111 */ // (fshl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) => (SHLD64rri8_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43893 | /* 123111 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64rri8_ND), |
| 43894 | /* 123114 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43895 | /* 123116 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43896 | /* 123118 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43897 | /* 123120 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 43898 | /* 123123 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43899 | /* 123126 */ GIR_RootConstrainSelectedInstOperands, |
| 43900 | /* 123127 */ // GIR_Coverage, 829, |
| 43901 | /* 123127 */ GIR_EraseRootFromParent_Done, |
| 43902 | /* 123128 */ // Label 2668: @123128 |
| 43903 | /* 123128 */ GIM_Try, /*On fail goto*//*Label 2669*/ GIMT_Encode4(123176), // Rule ID 826 // |
| 43904 | /* 123133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43905 | /* 123136 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43906 | /* 123140 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43907 | /* 123144 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43908 | /* 123148 */ // (fshl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, CL:{ *:[i8] }) => (SHLD64rrCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 43909 | /* 123148 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43910 | /* 123152 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43911 | /* 123158 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43912 | /* 123162 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64rrCL), |
| 43913 | /* 123165 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43914 | /* 123167 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43915 | /* 123169 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43916 | /* 123171 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43917 | /* 123174 */ GIR_RootConstrainSelectedInstOperands, |
| 43918 | /* 123175 */ // GIR_Coverage, 826, |
| 43919 | /* 123175 */ GIR_EraseRootFromParent_Done, |
| 43920 | /* 123176 */ // Label 2669: @123176 |
| 43921 | /* 123176 */ GIM_Try, /*On fail goto*//*Label 2670*/ GIMT_Encode4(123224), // Rule ID 832 // |
| 43922 | /* 123181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43923 | /* 123184 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43924 | /* 123188 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43925 | /* 123192 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43926 | /* 123196 */ // (fshl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, CL:{ *:[i8] }) => (SHLD64rrCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 43927 | /* 123196 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43928 | /* 123200 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43929 | /* 123206 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43930 | /* 123210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64rrCL_ND), |
| 43931 | /* 123213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43932 | /* 123215 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43933 | /* 123217 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 43934 | /* 123219 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43935 | /* 123222 */ GIR_RootConstrainSelectedInstOperands, |
| 43936 | /* 123223 */ // GIR_Coverage, 832, |
| 43937 | /* 123223 */ GIR_EraseRootFromParent_Done, |
| 43938 | /* 123224 */ // Label 2670: @123224 |
| 43939 | /* 123224 */ GIM_Reject, |
| 43940 | /* 123225 */ // Label 2664: @123225 |
| 43941 | /* 123225 */ GIM_Reject, |
| 43942 | /* 123226 */ // Label 2656: @123226 |
| 43943 | /* 123226 */ GIM_Reject, |
| 43944 | /* 123227 */ // Label 30: @123227 |
| 43945 | /* 123227 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(5), /*)*//*default:*//*Label 2673*/ GIMT_Encode4(123914), |
| 43946 | /* 123238 */ /*GILLT_s32*//*Label 2671*/ GIMT_Encode4(123246), |
| 43947 | /* 123242 */ /*GILLT_s64*//*Label 2672*/ GIMT_Encode4(123580), |
| 43948 | /* 123246 */ // Label 2671: @123246 |
| 43949 | /* 123246 */ GIM_Try, /*On fail goto*//*Label 2674*/ GIMT_Encode4(123579), |
| 43950 | /* 123251 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 43951 | /* 123254 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 43952 | /* 123257 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 43953 | /* 123260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43954 | /* 123264 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43955 | /* 123268 */ GIM_Try, /*On fail goto*//*Label 2675*/ GIMT_Encode4(123337), // Rule ID 864 // |
| 43956 | /* 123273 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43957 | /* 123276 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 43958 | /* 123280 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43959 | /* 123284 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43960 | /* 123287 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43961 | /* 123291 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 43962 | /* 123295 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 43963 | /* 123299 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43964 | /* 123303 */ // MIs[2] Operand 1 |
| 43965 | /* 123303 */ // No operand predicates |
| 43966 | /* 123303 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 43967 | /* 123305 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43968 | /* 123312 */ // (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src3) => (SHRD32mri8_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43969 | /* 123312 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32mri8_ND), |
| 43970 | /* 123315 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43971 | /* 123317 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43972 | /* 123321 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43973 | /* 123323 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src3 |
| 43974 | /* 123326 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43975 | /* 123329 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 43976 | /* 123335 */ GIR_RootConstrainSelectedInstOperands, |
| 43977 | /* 123336 */ // GIR_Coverage, 864, |
| 43978 | /* 123336 */ GIR_EraseRootFromParent_Done, |
| 43979 | /* 123337 */ // Label 2675: @123337 |
| 43980 | /* 123337 */ GIM_Try, /*On fail goto*//*Label 2676*/ GIMT_Encode4(123412), // Rule ID 867 // |
| 43981 | /* 123342 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43982 | /* 123345 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 43983 | /* 123349 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43984 | /* 123353 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43985 | /* 123356 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43986 | /* 123360 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 43987 | /* 123364 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43988 | /* 123368 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43989 | /* 123370 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43990 | /* 123377 */ // (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }) => (SHRD32mrCL_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR32:{ *:[i32] }:$src2) |
| 43991 | /* 123377 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43992 | /* 123381 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 43993 | /* 123387 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43994 | /* 123391 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32mrCL_ND), |
| 43995 | /* 123394 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43996 | /* 123396 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 43997 | /* 123400 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43998 | /* 123402 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43999 | /* 123405 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44000 | /* 123410 */ GIR_RootConstrainSelectedInstOperands, |
| 44001 | /* 123411 */ // GIR_Coverage, 867, |
| 44002 | /* 123411 */ GIR_EraseRootFromParent_Done, |
| 44003 | /* 123412 */ // Label 2676: @123412 |
| 44004 | /* 123412 */ GIM_Try, /*On fail goto*//*Label 2677*/ GIMT_Encode4(123451), // Rule ID 846 // |
| 44005 | /* 123417 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44006 | /* 123420 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44007 | /* 123424 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 44008 | /* 123428 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44009 | /* 123432 */ // MIs[1] Operand 1 |
| 44010 | /* 123432 */ // No operand predicates |
| 44011 | /* 123432 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44012 | /* 123434 */ // (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src3) => (SHRD32rri8:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 44013 | /* 123434 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32rri8), |
| 44014 | /* 123437 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44015 | /* 123439 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 44016 | /* 123441 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 44017 | /* 123443 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 44018 | /* 123446 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44019 | /* 123449 */ GIR_RootConstrainSelectedInstOperands, |
| 44020 | /* 123450 */ // GIR_Coverage, 846, |
| 44021 | /* 123450 */ GIR_EraseRootFromParent_Done, |
| 44022 | /* 123451 */ // Label 2677: @123451 |
| 44023 | /* 123451 */ GIM_Try, /*On fail goto*//*Label 2678*/ GIMT_Encode4(123490), // Rule ID 852 // |
| 44024 | /* 123456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44025 | /* 123459 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44026 | /* 123463 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 44027 | /* 123467 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44028 | /* 123471 */ // MIs[1] Operand 1 |
| 44029 | /* 123471 */ // No operand predicates |
| 44030 | /* 123471 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44031 | /* 123473 */ // (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src3) => (SHRD32rri8_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 44032 | /* 123473 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32rri8_ND), |
| 44033 | /* 123476 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44034 | /* 123478 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 44035 | /* 123480 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 44036 | /* 123482 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 44037 | /* 123485 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44038 | /* 123488 */ GIR_RootConstrainSelectedInstOperands, |
| 44039 | /* 123489 */ // GIR_Coverage, 852, |
| 44040 | /* 123489 */ GIR_EraseRootFromParent_Done, |
| 44041 | /* 123490 */ // Label 2678: @123490 |
| 44042 | /* 123490 */ GIM_Try, /*On fail goto*//*Label 2679*/ GIMT_Encode4(123534), // Rule ID 849 // |
| 44043 | /* 123495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44044 | /* 123498 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44045 | /* 123502 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44046 | /* 123506 */ // (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHRD32rrCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 44047 | /* 123506 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44048 | /* 123510 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44049 | /* 123516 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 44050 | /* 123520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32rrCL), |
| 44051 | /* 123523 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44052 | /* 123525 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 44053 | /* 123527 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 44054 | /* 123529 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44055 | /* 123532 */ GIR_RootConstrainSelectedInstOperands, |
| 44056 | /* 123533 */ // GIR_Coverage, 849, |
| 44057 | /* 123533 */ GIR_EraseRootFromParent_Done, |
| 44058 | /* 123534 */ // Label 2679: @123534 |
| 44059 | /* 123534 */ GIM_Try, /*On fail goto*//*Label 2680*/ GIMT_Encode4(123578), // Rule ID 855 // |
| 44060 | /* 123539 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44061 | /* 123542 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44062 | /* 123546 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44063 | /* 123550 */ // (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHRD32rrCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 44064 | /* 123550 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44065 | /* 123554 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44066 | /* 123560 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 44067 | /* 123564 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32rrCL_ND), |
| 44068 | /* 123567 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44069 | /* 123569 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 44070 | /* 123571 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 44071 | /* 123573 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44072 | /* 123576 */ GIR_RootConstrainSelectedInstOperands, |
| 44073 | /* 123577 */ // GIR_Coverage, 855, |
| 44074 | /* 123577 */ GIR_EraseRootFromParent_Done, |
| 44075 | /* 123578 */ // Label 2680: @123578 |
| 44076 | /* 123578 */ GIM_Reject, |
| 44077 | /* 123579 */ // Label 2674: @123579 |
| 44078 | /* 123579 */ GIM_Reject, |
| 44079 | /* 123580 */ // Label 2672: @123580 |
| 44080 | /* 123580 */ GIM_Try, /*On fail goto*//*Label 2681*/ GIMT_Encode4(123913), |
| 44081 | /* 123585 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 44082 | /* 123588 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 44083 | /* 123591 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 44084 | /* 123594 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44085 | /* 123598 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44086 | /* 123602 */ GIM_Try, /*On fail goto*//*Label 2682*/ GIMT_Encode4(123671), // Rule ID 865 // |
| 44087 | /* 123607 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44088 | /* 123610 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44089 | /* 123614 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44090 | /* 123618 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44091 | /* 123621 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44092 | /* 123625 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44093 | /* 123629 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 44094 | /* 123633 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44095 | /* 123637 */ // MIs[2] Operand 1 |
| 44096 | /* 123637 */ // No operand predicates |
| 44097 | /* 123637 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44098 | /* 123639 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44099 | /* 123646 */ // (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src3) => (SHRD64mri8_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 44100 | /* 123646 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64mri8_ND), |
| 44101 | /* 123649 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44102 | /* 123651 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 44103 | /* 123655 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 44104 | /* 123657 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src3 |
| 44105 | /* 123660 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44106 | /* 123663 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44107 | /* 123669 */ GIR_RootConstrainSelectedInstOperands, |
| 44108 | /* 123670 */ // GIR_Coverage, 865, |
| 44109 | /* 123670 */ GIR_EraseRootFromParent_Done, |
| 44110 | /* 123671 */ // Label 2682: @123671 |
| 44111 | /* 123671 */ GIM_Try, /*On fail goto*//*Label 2683*/ GIMT_Encode4(123746), // Rule ID 868 // |
| 44112 | /* 123676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44113 | /* 123679 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44114 | /* 123683 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44115 | /* 123687 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44116 | /* 123690 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44117 | /* 123694 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44118 | /* 123698 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44119 | /* 123702 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44120 | /* 123704 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44121 | /* 123711 */ // (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }) => (SHRD64mrCL_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, GR64:{ *:[i64] }:$src2) |
| 44122 | /* 123711 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44123 | /* 123715 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44124 | /* 123721 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 44125 | /* 123725 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64mrCL_ND), |
| 44126 | /* 123728 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44127 | /* 123730 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 44128 | /* 123734 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 44129 | /* 123736 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44130 | /* 123739 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44131 | /* 123744 */ GIR_RootConstrainSelectedInstOperands, |
| 44132 | /* 123745 */ // GIR_Coverage, 868, |
| 44133 | /* 123745 */ GIR_EraseRootFromParent_Done, |
| 44134 | /* 123746 */ // Label 2683: @123746 |
| 44135 | /* 123746 */ GIM_Try, /*On fail goto*//*Label 2684*/ GIMT_Encode4(123785), // Rule ID 847 // |
| 44136 | /* 123751 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44137 | /* 123754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44138 | /* 123758 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 44139 | /* 123762 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44140 | /* 123766 */ // MIs[1] Operand 1 |
| 44141 | /* 123766 */ // No operand predicates |
| 44142 | /* 123766 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44143 | /* 123768 */ // (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src3) => (SHRD64rri8:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 44144 | /* 123768 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64rri8), |
| 44145 | /* 123771 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44146 | /* 123773 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 44147 | /* 123775 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 44148 | /* 123777 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 44149 | /* 123780 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44150 | /* 123783 */ GIR_RootConstrainSelectedInstOperands, |
| 44151 | /* 123784 */ // GIR_Coverage, 847, |
| 44152 | /* 123784 */ GIR_EraseRootFromParent_Done, |
| 44153 | /* 123785 */ // Label 2684: @123785 |
| 44154 | /* 123785 */ GIM_Try, /*On fail goto*//*Label 2685*/ GIMT_Encode4(123824), // Rule ID 853 // |
| 44155 | /* 123790 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44156 | /* 123793 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44157 | /* 123797 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 44158 | /* 123801 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44159 | /* 123805 */ // MIs[1] Operand 1 |
| 44160 | /* 123805 */ // No operand predicates |
| 44161 | /* 123805 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44162 | /* 123807 */ // (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src3) => (SHRD64rri8_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 44163 | /* 123807 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64rri8_ND), |
| 44164 | /* 123810 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44165 | /* 123812 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 44166 | /* 123814 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 44167 | /* 123816 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 44168 | /* 123819 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44169 | /* 123822 */ GIR_RootConstrainSelectedInstOperands, |
| 44170 | /* 123823 */ // GIR_Coverage, 853, |
| 44171 | /* 123823 */ GIR_EraseRootFromParent_Done, |
| 44172 | /* 123824 */ // Label 2685: @123824 |
| 44173 | /* 123824 */ GIM_Try, /*On fail goto*//*Label 2686*/ GIMT_Encode4(123868), // Rule ID 850 // |
| 44174 | /* 123829 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44175 | /* 123832 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44176 | /* 123836 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44177 | /* 123840 */ // (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHRD64rrCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 44178 | /* 123840 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44179 | /* 123844 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44180 | /* 123850 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 44181 | /* 123854 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64rrCL), |
| 44182 | /* 123857 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44183 | /* 123859 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 44184 | /* 123861 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 44185 | /* 123863 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44186 | /* 123866 */ GIR_RootConstrainSelectedInstOperands, |
| 44187 | /* 123867 */ // GIR_Coverage, 850, |
| 44188 | /* 123867 */ GIR_EraseRootFromParent_Done, |
| 44189 | /* 123868 */ // Label 2686: @123868 |
| 44190 | /* 123868 */ GIM_Try, /*On fail goto*//*Label 2687*/ GIMT_Encode4(123912), // Rule ID 856 // |
| 44191 | /* 123873 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44192 | /* 123876 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44193 | /* 123880 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44194 | /* 123884 */ // (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHRD64rrCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 44195 | /* 123884 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44196 | /* 123888 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44197 | /* 123894 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 44198 | /* 123898 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64rrCL_ND), |
| 44199 | /* 123901 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44200 | /* 123903 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 44201 | /* 123905 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 44202 | /* 123907 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44203 | /* 123910 */ GIR_RootConstrainSelectedInstOperands, |
| 44204 | /* 123911 */ // GIR_Coverage, 856, |
| 44205 | /* 123911 */ GIR_EraseRootFromParent_Done, |
| 44206 | /* 123912 */ // Label 2687: @123912 |
| 44207 | /* 123912 */ GIM_Reject, |
| 44208 | /* 123913 */ // Label 2681: @123913 |
| 44209 | /* 123913 */ GIM_Reject, |
| 44210 | /* 123914 */ // Label 2673: @123914 |
| 44211 | /* 123914 */ GIM_Reject, |
| 44212 | /* 123915 */ // Label 31: @123915 |
| 44213 | /* 123915 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(20), /*)*//*default:*//*Label 2698*/ GIMT_Encode4(127412), |
| 44214 | /* 123926 */ /*GILLT_s8*//*Label 2688*/ GIMT_Encode4(124002), |
| 44215 | /* 123930 */ /*GILLT_s16*//*Label 2689*/ GIMT_Encode4(124432), |
| 44216 | /* 123934 */ /*GILLT_s32*//*Label 2690*/ GIMT_Encode4(124862), |
| 44217 | /* 123938 */ /*GILLT_s64*//*Label 2691*/ GIMT_Encode4(125525), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 44218 | /* 123954 */ /*GILLT_v2s64*//*Label 2692*/ GIMT_Encode4(126188), GIMT_Encode4(0), |
| 44219 | /* 123962 */ /*GILLT_v4s32*//*Label 2693*/ GIMT_Encode4(126455), |
| 44220 | /* 123966 */ /*GILLT_v4s64*//*Label 2694*/ GIMT_Encode4(126722), GIMT_Encode4(0), GIMT_Encode4(0), |
| 44221 | /* 123978 */ /*GILLT_v8s32*//*Label 2695*/ GIMT_Encode4(126973), |
| 44222 | /* 123982 */ /*GILLT_v8s64*//*Label 2696*/ GIMT_Encode4(127224), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 44223 | /* 123998 */ /*GILLT_v16s32*//*Label 2697*/ GIMT_Encode4(127318), |
| 44224 | /* 124002 */ // Label 2688: @124002 |
| 44225 | /* 124002 */ GIM_Try, /*On fail goto*//*Label 2699*/ GIMT_Encode4(124431), |
| 44226 | /* 124007 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 44227 | /* 124010 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 44228 | /* 124013 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 44229 | /* 124017 */ GIM_Try, /*On fail goto*//*Label 2700*/ GIMT_Encode4(124076), // Rule ID 17624 // |
| 44230 | /* 124022 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 44231 | /* 124025 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44232 | /* 124029 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44233 | /* 124033 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44234 | /* 124036 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44235 | /* 124040 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 44236 | /* 124044 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 7, |
| 44237 | /* 124048 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44238 | /* 124050 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44239 | /* 124057 */ // (rotr:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, 7:{ *:[i8] }) => (ROL8m1_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 44240 | /* 124057 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8m1_ND), |
| 44241 | /* 124060 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44242 | /* 124062 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44243 | /* 124066 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44244 | /* 124069 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44245 | /* 124074 */ GIR_RootConstrainSelectedInstOperands, |
| 44246 | /* 124075 */ // GIR_Coverage, 17624, |
| 44247 | /* 124075 */ GIR_EraseRootFromParent_Done, |
| 44248 | /* 124076 */ // Label 2700: @124076 |
| 44249 | /* 124076 */ GIM_Try, /*On fail goto*//*Label 2701*/ GIMT_Encode4(124143), // Rule ID 801 // |
| 44250 | /* 124081 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44251 | /* 124084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44252 | /* 124088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44253 | /* 124092 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44254 | /* 124095 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44255 | /* 124099 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 44256 | /* 124103 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44257 | /* 124107 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44258 | /* 124111 */ // MIs[2] Operand 1 |
| 44259 | /* 124111 */ // No operand predicates |
| 44260 | /* 124111 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44261 | /* 124113 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44262 | /* 124120 */ // (rotr:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, (imm:{ *:[i8] }):$src2) => (ROR8mi_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44263 | /* 124120 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8mi_ND), |
| 44264 | /* 124123 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44265 | /* 124125 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 44266 | /* 124129 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 44267 | /* 124132 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44268 | /* 124135 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44269 | /* 124141 */ GIR_RootConstrainSelectedInstOperands, |
| 44270 | /* 124142 */ // GIR_Coverage, 801, |
| 44271 | /* 124142 */ GIR_EraseRootFromParent_Done, |
| 44272 | /* 124143 */ // Label 2701: @124143 |
| 44273 | /* 124143 */ GIM_Try, /*On fail goto*//*Label 2702*/ GIMT_Encode4(124216), // Rule ID 817 // |
| 44274 | /* 124148 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44275 | /* 124151 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44276 | /* 124155 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44277 | /* 124159 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44278 | /* 124162 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44279 | /* 124166 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 44280 | /* 124170 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44281 | /* 124174 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44282 | /* 124176 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44283 | /* 124183 */ // (rotr:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, CL:{ *:[i8] }) => (ROR8mCL_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 44284 | /* 124183 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44285 | /* 124187 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44286 | /* 124193 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44287 | /* 124197 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8mCL_ND), |
| 44288 | /* 124200 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44289 | /* 124202 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 44290 | /* 124206 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44291 | /* 124209 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44292 | /* 124214 */ GIR_RootConstrainSelectedInstOperands, |
| 44293 | /* 124215 */ // GIR_Coverage, 817, |
| 44294 | /* 124215 */ GIR_EraseRootFromParent_Done, |
| 44295 | /* 124216 */ // Label 2702: @124216 |
| 44296 | /* 124216 */ GIM_Try, /*On fail goto*//*Label 2703*/ GIMT_Encode4(124244), // Rule ID 17600 // |
| 44297 | /* 124221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44298 | /* 124224 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 44299 | /* 124228 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 7, |
| 44300 | /* 124232 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, 7:{ *:[i8] }) => (ROL8r1:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 44301 | /* 124232 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8r1), |
| 44302 | /* 124235 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44303 | /* 124237 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44304 | /* 124239 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44305 | /* 124242 */ GIR_RootConstrainSelectedInstOperands, |
| 44306 | /* 124243 */ // GIR_Coverage, 17600, |
| 44307 | /* 124243 */ GIR_EraseRootFromParent_Done, |
| 44308 | /* 124244 */ // Label 2703: @124244 |
| 44309 | /* 124244 */ GIM_Try, /*On fail goto*//*Label 2704*/ GIMT_Encode4(124272), // Rule ID 17608 // |
| 44310 | /* 124249 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 44311 | /* 124252 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 44312 | /* 124256 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 7, |
| 44313 | /* 124260 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, 7:{ *:[i8] }) => (ROL8r1_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 44314 | /* 124260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8r1_ND), |
| 44315 | /* 124263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44316 | /* 124265 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44317 | /* 124267 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44318 | /* 124270 */ GIR_RootConstrainSelectedInstOperands, |
| 44319 | /* 124271 */ // GIR_Coverage, 17608, |
| 44320 | /* 124271 */ GIR_EraseRootFromParent_Done, |
| 44321 | /* 124272 */ // Label 2704: @124272 |
| 44322 | /* 124272 */ GIM_Try, /*On fail goto*//*Label 2705*/ GIMT_Encode4(124309), // Rule ID 789 // |
| 44323 | /* 124277 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44324 | /* 124280 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 44325 | /* 124284 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44326 | /* 124288 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44327 | /* 124292 */ // MIs[1] Operand 1 |
| 44328 | /* 124292 */ // No operand predicates |
| 44329 | /* 124292 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44330 | /* 124294 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44331 | /* 124294 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8ri), |
| 44332 | /* 124297 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44333 | /* 124299 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44334 | /* 124301 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44335 | /* 124304 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44336 | /* 124307 */ GIR_RootConstrainSelectedInstOperands, |
| 44337 | /* 124308 */ // GIR_Coverage, 789, |
| 44338 | /* 124308 */ GIR_EraseRootFromParent_Done, |
| 44339 | /* 124309 */ // Label 2705: @124309 |
| 44340 | /* 124309 */ GIM_Try, /*On fail goto*//*Label 2706*/ GIMT_Encode4(124346), // Rule ID 793 // |
| 44341 | /* 124314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44342 | /* 124317 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 44343 | /* 124321 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44344 | /* 124325 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44345 | /* 124329 */ // MIs[1] Operand 1 |
| 44346 | /* 124329 */ // No operand predicates |
| 44347 | /* 124329 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44348 | /* 124331 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44349 | /* 124331 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8ri_ND), |
| 44350 | /* 124334 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44351 | /* 124336 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44352 | /* 124338 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44353 | /* 124341 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44354 | /* 124344 */ GIR_RootConstrainSelectedInstOperands, |
| 44355 | /* 124345 */ // GIR_Coverage, 793, |
| 44356 | /* 124345 */ GIR_EraseRootFromParent_Done, |
| 44357 | /* 124346 */ // Label 2706: @124346 |
| 44358 | /* 124346 */ GIM_Try, /*On fail goto*//*Label 2707*/ GIMT_Encode4(124388), // Rule ID 805 // |
| 44359 | /* 124351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44360 | /* 124354 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 44361 | /* 124358 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44362 | /* 124362 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (ROR8rCL:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 44363 | /* 124362 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44364 | /* 124366 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44365 | /* 124372 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44366 | /* 124376 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8rCL), |
| 44367 | /* 124379 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44368 | /* 124381 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44369 | /* 124383 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44370 | /* 124386 */ GIR_RootConstrainSelectedInstOperands, |
| 44371 | /* 124387 */ // GIR_Coverage, 805, |
| 44372 | /* 124387 */ GIR_EraseRootFromParent_Done, |
| 44373 | /* 124388 */ // Label 2707: @124388 |
| 44374 | /* 124388 */ GIM_Try, /*On fail goto*//*Label 2708*/ GIMT_Encode4(124430), // Rule ID 809 // |
| 44375 | /* 124393 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44376 | /* 124396 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 44377 | /* 124400 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44378 | /* 124404 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (ROR8rCL_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 44379 | /* 124404 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44380 | /* 124408 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44381 | /* 124414 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44382 | /* 124418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8rCL_ND), |
| 44383 | /* 124421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44384 | /* 124423 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44385 | /* 124425 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44386 | /* 124428 */ GIR_RootConstrainSelectedInstOperands, |
| 44387 | /* 124429 */ // GIR_Coverage, 809, |
| 44388 | /* 124429 */ GIR_EraseRootFromParent_Done, |
| 44389 | /* 124430 */ // Label 2708: @124430 |
| 44390 | /* 124430 */ GIM_Reject, |
| 44391 | /* 124431 */ // Label 2699: @124431 |
| 44392 | /* 124431 */ GIM_Reject, |
| 44393 | /* 124432 */ // Label 2689: @124432 |
| 44394 | /* 124432 */ GIM_Try, /*On fail goto*//*Label 2709*/ GIMT_Encode4(124861), |
| 44395 | /* 124437 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 44396 | /* 124440 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 44397 | /* 124443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 44398 | /* 124447 */ GIM_Try, /*On fail goto*//*Label 2710*/ GIMT_Encode4(124506), // Rule ID 17625 // |
| 44399 | /* 124452 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 44400 | /* 124455 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44401 | /* 124459 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44402 | /* 124463 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44403 | /* 124466 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44404 | /* 124470 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 44405 | /* 124474 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 15, |
| 44406 | /* 124478 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44407 | /* 124480 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44408 | /* 124487 */ // (rotr:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, 15:{ *:[i8] }) => (ROL16m1_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 44409 | /* 124487 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16m1_ND), |
| 44410 | /* 124490 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44411 | /* 124492 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44412 | /* 124496 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44413 | /* 124499 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44414 | /* 124504 */ GIR_RootConstrainSelectedInstOperands, |
| 44415 | /* 124505 */ // GIR_Coverage, 17625, |
| 44416 | /* 124505 */ GIR_EraseRootFromParent_Done, |
| 44417 | /* 124506 */ // Label 2710: @124506 |
| 44418 | /* 124506 */ GIM_Try, /*On fail goto*//*Label 2711*/ GIMT_Encode4(124573), // Rule ID 802 // |
| 44419 | /* 124511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44420 | /* 124514 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44421 | /* 124518 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44422 | /* 124522 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44423 | /* 124525 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44424 | /* 124529 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 44425 | /* 124533 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44426 | /* 124537 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44427 | /* 124541 */ // MIs[2] Operand 1 |
| 44428 | /* 124541 */ // No operand predicates |
| 44429 | /* 124541 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44430 | /* 124543 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44431 | /* 124550 */ // (rotr:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i8] }):$src2) => (ROR16mi_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44432 | /* 124550 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16mi_ND), |
| 44433 | /* 124553 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44434 | /* 124555 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 44435 | /* 124559 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 44436 | /* 124562 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44437 | /* 124565 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44438 | /* 124571 */ GIR_RootConstrainSelectedInstOperands, |
| 44439 | /* 124572 */ // GIR_Coverage, 802, |
| 44440 | /* 124572 */ GIR_EraseRootFromParent_Done, |
| 44441 | /* 124573 */ // Label 2711: @124573 |
| 44442 | /* 124573 */ GIM_Try, /*On fail goto*//*Label 2712*/ GIMT_Encode4(124646), // Rule ID 818 // |
| 44443 | /* 124578 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44444 | /* 124581 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44445 | /* 124585 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44446 | /* 124589 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44447 | /* 124592 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44448 | /* 124596 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 44449 | /* 124600 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44450 | /* 124604 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44451 | /* 124606 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44452 | /* 124613 */ // (rotr:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, CL:{ *:[i8] }) => (ROR16mCL_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 44453 | /* 124613 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44454 | /* 124617 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44455 | /* 124623 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44456 | /* 124627 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16mCL_ND), |
| 44457 | /* 124630 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44458 | /* 124632 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 44459 | /* 124636 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44460 | /* 124639 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44461 | /* 124644 */ GIR_RootConstrainSelectedInstOperands, |
| 44462 | /* 124645 */ // GIR_Coverage, 818, |
| 44463 | /* 124645 */ GIR_EraseRootFromParent_Done, |
| 44464 | /* 124646 */ // Label 2712: @124646 |
| 44465 | /* 124646 */ GIM_Try, /*On fail goto*//*Label 2713*/ GIMT_Encode4(124674), // Rule ID 17601 // |
| 44466 | /* 124651 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44467 | /* 124654 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 44468 | /* 124658 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 15, |
| 44469 | /* 124662 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, 15:{ *:[i8] }) => (ROL16r1:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 44470 | /* 124662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16r1), |
| 44471 | /* 124665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44472 | /* 124667 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44473 | /* 124669 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44474 | /* 124672 */ GIR_RootConstrainSelectedInstOperands, |
| 44475 | /* 124673 */ // GIR_Coverage, 17601, |
| 44476 | /* 124673 */ GIR_EraseRootFromParent_Done, |
| 44477 | /* 124674 */ // Label 2713: @124674 |
| 44478 | /* 124674 */ GIM_Try, /*On fail goto*//*Label 2714*/ GIMT_Encode4(124702), // Rule ID 17609 // |
| 44479 | /* 124679 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 44480 | /* 124682 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 44481 | /* 124686 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 15, |
| 44482 | /* 124690 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, 15:{ *:[i8] }) => (ROL16r1_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 44483 | /* 124690 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16r1_ND), |
| 44484 | /* 124693 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44485 | /* 124695 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44486 | /* 124697 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44487 | /* 124700 */ GIR_RootConstrainSelectedInstOperands, |
| 44488 | /* 124701 */ // GIR_Coverage, 17609, |
| 44489 | /* 124701 */ GIR_EraseRootFromParent_Done, |
| 44490 | /* 124702 */ // Label 2714: @124702 |
| 44491 | /* 124702 */ GIM_Try, /*On fail goto*//*Label 2715*/ GIMT_Encode4(124739), // Rule ID 790 // |
| 44492 | /* 124707 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44493 | /* 124710 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 44494 | /* 124714 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44495 | /* 124718 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44496 | /* 124722 */ // MIs[1] Operand 1 |
| 44497 | /* 124722 */ // No operand predicates |
| 44498 | /* 124722 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44499 | /* 124724 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44500 | /* 124724 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16ri), |
| 44501 | /* 124727 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44502 | /* 124729 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44503 | /* 124731 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44504 | /* 124734 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44505 | /* 124737 */ GIR_RootConstrainSelectedInstOperands, |
| 44506 | /* 124738 */ // GIR_Coverage, 790, |
| 44507 | /* 124738 */ GIR_EraseRootFromParent_Done, |
| 44508 | /* 124739 */ // Label 2715: @124739 |
| 44509 | /* 124739 */ GIM_Try, /*On fail goto*//*Label 2716*/ GIMT_Encode4(124776), // Rule ID 794 // |
| 44510 | /* 124744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44511 | /* 124747 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 44512 | /* 124751 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44513 | /* 124755 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44514 | /* 124759 */ // MIs[1] Operand 1 |
| 44515 | /* 124759 */ // No operand predicates |
| 44516 | /* 124759 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44517 | /* 124761 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44518 | /* 124761 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16ri_ND), |
| 44519 | /* 124764 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44520 | /* 124766 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44521 | /* 124768 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44522 | /* 124771 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44523 | /* 124774 */ GIR_RootConstrainSelectedInstOperands, |
| 44524 | /* 124775 */ // GIR_Coverage, 794, |
| 44525 | /* 124775 */ GIR_EraseRootFromParent_Done, |
| 44526 | /* 124776 */ // Label 2716: @124776 |
| 44527 | /* 124776 */ GIM_Try, /*On fail goto*//*Label 2717*/ GIMT_Encode4(124818), // Rule ID 806 // |
| 44528 | /* 124781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44529 | /* 124784 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 44530 | /* 124788 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44531 | /* 124792 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (ROR16rCL:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 44532 | /* 124792 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44533 | /* 124796 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44534 | /* 124802 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44535 | /* 124806 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16rCL), |
| 44536 | /* 124809 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44537 | /* 124811 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44538 | /* 124813 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44539 | /* 124816 */ GIR_RootConstrainSelectedInstOperands, |
| 44540 | /* 124817 */ // GIR_Coverage, 806, |
| 44541 | /* 124817 */ GIR_EraseRootFromParent_Done, |
| 44542 | /* 124818 */ // Label 2717: @124818 |
| 44543 | /* 124818 */ GIM_Try, /*On fail goto*//*Label 2718*/ GIMT_Encode4(124860), // Rule ID 810 // |
| 44544 | /* 124823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44545 | /* 124826 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 44546 | /* 124830 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44547 | /* 124834 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (ROR16rCL_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 44548 | /* 124834 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44549 | /* 124838 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44550 | /* 124844 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44551 | /* 124848 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16rCL_ND), |
| 44552 | /* 124851 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44553 | /* 124853 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44554 | /* 124855 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44555 | /* 124858 */ GIR_RootConstrainSelectedInstOperands, |
| 44556 | /* 124859 */ // GIR_Coverage, 810, |
| 44557 | /* 124859 */ GIR_EraseRootFromParent_Done, |
| 44558 | /* 124860 */ // Label 2718: @124860 |
| 44559 | /* 124860 */ GIM_Reject, |
| 44560 | /* 124861 */ // Label 2709: @124861 |
| 44561 | /* 124861 */ GIM_Reject, |
| 44562 | /* 124862 */ // Label 2690: @124862 |
| 44563 | /* 124862 */ GIM_Try, /*On fail goto*//*Label 2719*/ GIMT_Encode4(125524), |
| 44564 | /* 124867 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 44565 | /* 124870 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 44566 | /* 124873 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44567 | /* 124877 */ GIM_Try, /*On fail goto*//*Label 2720*/ GIMT_Encode4(124936), // Rule ID 17626 // |
| 44568 | /* 124882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 44569 | /* 124885 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44570 | /* 124889 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44571 | /* 124893 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44572 | /* 124896 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44573 | /* 124900 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 44574 | /* 124904 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 31, |
| 44575 | /* 124908 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44576 | /* 124910 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44577 | /* 124917 */ // (rotr:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, 31:{ *:[i8] }) => (ROL32m1_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 44578 | /* 124917 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32m1_ND), |
| 44579 | /* 124920 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44580 | /* 124922 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44581 | /* 124926 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44582 | /* 124929 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44583 | /* 124934 */ GIR_RootConstrainSelectedInstOperands, |
| 44584 | /* 124935 */ // GIR_Coverage, 17626, |
| 44585 | /* 124935 */ GIR_EraseRootFromParent_Done, |
| 44586 | /* 124936 */ // Label 2720: @124936 |
| 44587 | /* 124936 */ GIM_Try, /*On fail goto*//*Label 2721*/ GIMT_Encode4(125003), // Rule ID 803 // |
| 44588 | /* 124941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44589 | /* 124944 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44590 | /* 124948 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44591 | /* 124952 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44592 | /* 124955 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44593 | /* 124959 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 44594 | /* 124963 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44595 | /* 124967 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44596 | /* 124971 */ // MIs[2] Operand 1 |
| 44597 | /* 124971 */ // No operand predicates |
| 44598 | /* 124971 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44599 | /* 124973 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44600 | /* 124980 */ // (rotr:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src2) => (ROR32mi_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44601 | /* 124980 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32mi_ND), |
| 44602 | /* 124983 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44603 | /* 124985 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 44604 | /* 124989 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 44605 | /* 124992 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44606 | /* 124995 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44607 | /* 125001 */ GIR_RootConstrainSelectedInstOperands, |
| 44608 | /* 125002 */ // GIR_Coverage, 803, |
| 44609 | /* 125002 */ GIR_EraseRootFromParent_Done, |
| 44610 | /* 125003 */ // Label 2721: @125003 |
| 44611 | /* 125003 */ GIM_Try, /*On fail goto*//*Label 2722*/ GIMT_Encode4(125067), // Rule ID 17648 // |
| 44612 | /* 125008 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 44613 | /* 125011 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44614 | /* 125015 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44615 | /* 125019 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44616 | /* 125022 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44617 | /* 125026 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 44618 | /* 125030 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44619 | /* 125034 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44620 | /* 125038 */ // MIs[2] Operand 1 |
| 44621 | /* 125038 */ // No operand predicates |
| 44622 | /* 125038 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44623 | /* 125040 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44624 | /* 125047 */ // (rotr:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$shamt) => (RORX32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44625 | /* 125047 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX32mi), |
| 44626 | /* 125050 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44627 | /* 125052 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44628 | /* 125056 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // shamt |
| 44629 | /* 125059 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44630 | /* 125065 */ GIR_RootConstrainSelectedInstOperands, |
| 44631 | /* 125066 */ // GIR_Coverage, 17648, |
| 44632 | /* 125066 */ GIR_EraseRootFromParent_Done, |
| 44633 | /* 125067 */ // Label 2722: @125067 |
| 44634 | /* 125067 */ GIM_Try, /*On fail goto*//*Label 2723*/ GIMT_Encode4(125131), // Rule ID 17680 // |
| 44635 | /* 125072 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 44636 | /* 125075 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44637 | /* 125079 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44638 | /* 125083 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44639 | /* 125086 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44640 | /* 125090 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 44641 | /* 125094 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44642 | /* 125098 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44643 | /* 125102 */ // MIs[2] Operand 1 |
| 44644 | /* 125102 */ // No operand predicates |
| 44645 | /* 125102 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44646 | /* 125104 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44647 | /* 125111 */ // (rotr:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$shamt) => (RORX32mi_EVEX:{ *:[i32] } addr:{ *:[iPTR] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44648 | /* 125111 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX32mi_EVEX), |
| 44649 | /* 125114 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44650 | /* 125116 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44651 | /* 125120 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // shamt |
| 44652 | /* 125123 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44653 | /* 125129 */ GIR_RootConstrainSelectedInstOperands, |
| 44654 | /* 125130 */ // GIR_Coverage, 17680, |
| 44655 | /* 125130 */ GIR_EraseRootFromParent_Done, |
| 44656 | /* 125131 */ // Label 2723: @125131 |
| 44657 | /* 125131 */ GIM_Try, /*On fail goto*//*Label 2724*/ GIMT_Encode4(125204), // Rule ID 819 // |
| 44658 | /* 125136 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44659 | /* 125139 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44660 | /* 125143 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44661 | /* 125147 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44662 | /* 125150 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44663 | /* 125154 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 44664 | /* 125158 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44665 | /* 125162 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44666 | /* 125164 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44667 | /* 125171 */ // (rotr:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }) => (ROR32mCL_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 44668 | /* 125171 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44669 | /* 125175 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44670 | /* 125181 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44671 | /* 125185 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32mCL_ND), |
| 44672 | /* 125188 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44673 | /* 125190 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 44674 | /* 125194 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44675 | /* 125197 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44676 | /* 125202 */ GIR_RootConstrainSelectedInstOperands, |
| 44677 | /* 125203 */ // GIR_Coverage, 819, |
| 44678 | /* 125203 */ GIR_EraseRootFromParent_Done, |
| 44679 | /* 125204 */ // Label 2724: @125204 |
| 44680 | /* 125204 */ GIM_Try, /*On fail goto*//*Label 2725*/ GIMT_Encode4(125238), // Rule ID 17644 // |
| 44681 | /* 125209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 44682 | /* 125212 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44683 | /* 125216 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44684 | /* 125220 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44685 | /* 125224 */ // MIs[1] Operand 1 |
| 44686 | /* 125224 */ // No operand predicates |
| 44687 | /* 125224 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44688 | /* 125226 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src, (imm:{ *:[i8] }):$shamt) => (RORX32ri:{ *:[i32] } GR32:{ *:[i32] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44689 | /* 125226 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX32ri), |
| 44690 | /* 125229 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44691 | /* 125231 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 44692 | /* 125233 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44693 | /* 125236 */ GIR_RootConstrainSelectedInstOperands, |
| 44694 | /* 125237 */ // GIR_Coverage, 17644, |
| 44695 | /* 125237 */ GIR_EraseRootFromParent_Done, |
| 44696 | /* 125238 */ // Label 2725: @125238 |
| 44697 | /* 125238 */ GIM_Try, /*On fail goto*//*Label 2726*/ GIMT_Encode4(125272), // Rule ID 17676 // |
| 44698 | /* 125243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 44699 | /* 125246 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44700 | /* 125250 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44701 | /* 125254 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44702 | /* 125258 */ // MIs[1] Operand 1 |
| 44703 | /* 125258 */ // No operand predicates |
| 44704 | /* 125258 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44705 | /* 125260 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src, (imm:{ *:[i8] }):$shamt) => (RORX32ri_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44706 | /* 125260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX32ri_EVEX), |
| 44707 | /* 125263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44708 | /* 125265 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 44709 | /* 125267 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44710 | /* 125270 */ GIR_RootConstrainSelectedInstOperands, |
| 44711 | /* 125271 */ // GIR_Coverage, 17676, |
| 44712 | /* 125271 */ GIR_EraseRootFromParent_Done, |
| 44713 | /* 125272 */ // Label 2726: @125272 |
| 44714 | /* 125272 */ GIM_Try, /*On fail goto*//*Label 2727*/ GIMT_Encode4(125309), // Rule ID 871 // |
| 44715 | /* 125277 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFastSHLDRotate), |
| 44716 | /* 125280 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44717 | /* 125284 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44718 | /* 125288 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44719 | /* 125292 */ // MIs[1] Operand 1 |
| 44720 | /* 125292 */ // No operand predicates |
| 44721 | /* 125292 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44722 | /* 125294 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$shamt) => (SHRDROT32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$shamt) |
| 44723 | /* 125294 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRDROT32ri), |
| 44724 | /* 125297 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44725 | /* 125299 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44726 | /* 125301 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44727 | /* 125304 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44728 | /* 125307 */ GIR_RootConstrainSelectedInstOperands, |
| 44729 | /* 125308 */ // GIR_Coverage, 871, |
| 44730 | /* 125308 */ GIR_EraseRootFromParent_Done, |
| 44731 | /* 125309 */ // Label 2727: @125309 |
| 44732 | /* 125309 */ GIM_Try, /*On fail goto*//*Label 2728*/ GIMT_Encode4(125337), // Rule ID 17602 // |
| 44733 | /* 125314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44734 | /* 125317 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44735 | /* 125321 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 31, |
| 44736 | /* 125325 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, 31:{ *:[i8] }) => (ROL32r1:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 44737 | /* 125325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32r1), |
| 44738 | /* 125328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44739 | /* 125330 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44740 | /* 125332 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44741 | /* 125335 */ GIR_RootConstrainSelectedInstOperands, |
| 44742 | /* 125336 */ // GIR_Coverage, 17602, |
| 44743 | /* 125336 */ GIR_EraseRootFromParent_Done, |
| 44744 | /* 125337 */ // Label 2728: @125337 |
| 44745 | /* 125337 */ GIM_Try, /*On fail goto*//*Label 2729*/ GIMT_Encode4(125365), // Rule ID 17610 // |
| 44746 | /* 125342 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 44747 | /* 125345 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44748 | /* 125349 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 31, |
| 44749 | /* 125353 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, 31:{ *:[i8] }) => (ROL32r1_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 44750 | /* 125353 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32r1_ND), |
| 44751 | /* 125356 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44752 | /* 125358 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44753 | /* 125360 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44754 | /* 125363 */ GIR_RootConstrainSelectedInstOperands, |
| 44755 | /* 125364 */ // GIR_Coverage, 17610, |
| 44756 | /* 125364 */ GIR_EraseRootFromParent_Done, |
| 44757 | /* 125365 */ // Label 2729: @125365 |
| 44758 | /* 125365 */ GIM_Try, /*On fail goto*//*Label 2730*/ GIMT_Encode4(125402), // Rule ID 791 // |
| 44759 | /* 125370 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44760 | /* 125373 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44761 | /* 125377 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44762 | /* 125381 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44763 | /* 125385 */ // MIs[1] Operand 1 |
| 44764 | /* 125385 */ // No operand predicates |
| 44765 | /* 125385 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44766 | /* 125387 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44767 | /* 125387 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32ri), |
| 44768 | /* 125390 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44769 | /* 125392 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44770 | /* 125394 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44771 | /* 125397 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44772 | /* 125400 */ GIR_RootConstrainSelectedInstOperands, |
| 44773 | /* 125401 */ // GIR_Coverage, 791, |
| 44774 | /* 125401 */ GIR_EraseRootFromParent_Done, |
| 44775 | /* 125402 */ // Label 2730: @125402 |
| 44776 | /* 125402 */ GIM_Try, /*On fail goto*//*Label 2731*/ GIMT_Encode4(125439), // Rule ID 795 // |
| 44777 | /* 125407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44778 | /* 125410 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44779 | /* 125414 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44780 | /* 125418 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44781 | /* 125422 */ // MIs[1] Operand 1 |
| 44782 | /* 125422 */ // No operand predicates |
| 44783 | /* 125422 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44784 | /* 125424 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44785 | /* 125424 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32ri_ND), |
| 44786 | /* 125427 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44787 | /* 125429 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44788 | /* 125431 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44789 | /* 125434 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44790 | /* 125437 */ GIR_RootConstrainSelectedInstOperands, |
| 44791 | /* 125438 */ // GIR_Coverage, 795, |
| 44792 | /* 125438 */ GIR_EraseRootFromParent_Done, |
| 44793 | /* 125439 */ // Label 2731: @125439 |
| 44794 | /* 125439 */ GIM_Try, /*On fail goto*//*Label 2732*/ GIMT_Encode4(125481), // Rule ID 807 // |
| 44795 | /* 125444 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44796 | /* 125447 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44797 | /* 125451 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44798 | /* 125455 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (ROR32rCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 44799 | /* 125455 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44800 | /* 125459 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44801 | /* 125465 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44802 | /* 125469 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32rCL), |
| 44803 | /* 125472 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44804 | /* 125474 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44805 | /* 125476 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44806 | /* 125479 */ GIR_RootConstrainSelectedInstOperands, |
| 44807 | /* 125480 */ // GIR_Coverage, 807, |
| 44808 | /* 125480 */ GIR_EraseRootFromParent_Done, |
| 44809 | /* 125481 */ // Label 2732: @125481 |
| 44810 | /* 125481 */ GIM_Try, /*On fail goto*//*Label 2733*/ GIMT_Encode4(125523), // Rule ID 811 // |
| 44811 | /* 125486 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44812 | /* 125489 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44813 | /* 125493 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44814 | /* 125497 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (ROR32rCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 44815 | /* 125497 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44816 | /* 125501 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44817 | /* 125507 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44818 | /* 125511 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32rCL_ND), |
| 44819 | /* 125514 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44820 | /* 125516 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44821 | /* 125518 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44822 | /* 125521 */ GIR_RootConstrainSelectedInstOperands, |
| 44823 | /* 125522 */ // GIR_Coverage, 811, |
| 44824 | /* 125522 */ GIR_EraseRootFromParent_Done, |
| 44825 | /* 125523 */ // Label 2733: @125523 |
| 44826 | /* 125523 */ GIM_Reject, |
| 44827 | /* 125524 */ // Label 2719: @125524 |
| 44828 | /* 125524 */ GIM_Reject, |
| 44829 | /* 125525 */ // Label 2691: @125525 |
| 44830 | /* 125525 */ GIM_Try, /*On fail goto*//*Label 2734*/ GIMT_Encode4(126187), |
| 44831 | /* 125530 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 44832 | /* 125533 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 44833 | /* 125536 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44834 | /* 125540 */ GIM_Try, /*On fail goto*//*Label 2735*/ GIMT_Encode4(125599), // Rule ID 17627 // |
| 44835 | /* 125545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 44836 | /* 125548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44837 | /* 125552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44838 | /* 125556 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44839 | /* 125559 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44840 | /* 125563 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44841 | /* 125567 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 63, |
| 44842 | /* 125571 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44843 | /* 125573 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44844 | /* 125580 */ // (rotr:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, 63:{ *:[i8] }) => (ROL64m1_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 44845 | /* 125580 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64m1_ND), |
| 44846 | /* 125583 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44847 | /* 125585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44848 | /* 125589 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44849 | /* 125592 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44850 | /* 125597 */ GIR_RootConstrainSelectedInstOperands, |
| 44851 | /* 125598 */ // GIR_Coverage, 17627, |
| 44852 | /* 125598 */ GIR_EraseRootFromParent_Done, |
| 44853 | /* 125599 */ // Label 2735: @125599 |
| 44854 | /* 125599 */ GIM_Try, /*On fail goto*//*Label 2736*/ GIMT_Encode4(125666), // Rule ID 804 // |
| 44855 | /* 125604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44856 | /* 125607 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44857 | /* 125611 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44858 | /* 125615 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44859 | /* 125618 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44860 | /* 125622 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44861 | /* 125626 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44862 | /* 125630 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44863 | /* 125634 */ // MIs[2] Operand 1 |
| 44864 | /* 125634 */ // No operand predicates |
| 44865 | /* 125634 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44866 | /* 125636 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44867 | /* 125643 */ // (rotr:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src2) => (ROR64mi_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44868 | /* 125643 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64mi_ND), |
| 44869 | /* 125646 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44870 | /* 125648 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 44871 | /* 125652 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 44872 | /* 125655 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44873 | /* 125658 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44874 | /* 125664 */ GIR_RootConstrainSelectedInstOperands, |
| 44875 | /* 125665 */ // GIR_Coverage, 804, |
| 44876 | /* 125665 */ GIR_EraseRootFromParent_Done, |
| 44877 | /* 125666 */ // Label 2736: @125666 |
| 44878 | /* 125666 */ GIM_Try, /*On fail goto*//*Label 2737*/ GIMT_Encode4(125730), // Rule ID 17649 // |
| 44879 | /* 125671 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 44880 | /* 125674 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44881 | /* 125678 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44882 | /* 125682 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44883 | /* 125685 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44884 | /* 125689 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44885 | /* 125693 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44886 | /* 125697 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44887 | /* 125701 */ // MIs[2] Operand 1 |
| 44888 | /* 125701 */ // No operand predicates |
| 44889 | /* 125701 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44890 | /* 125703 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44891 | /* 125710 */ // (rotr:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$shamt) => (RORX64mi:{ *:[i64] } addr:{ *:[iPTR] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44892 | /* 125710 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX64mi), |
| 44893 | /* 125713 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44894 | /* 125715 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44895 | /* 125719 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // shamt |
| 44896 | /* 125722 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44897 | /* 125728 */ GIR_RootConstrainSelectedInstOperands, |
| 44898 | /* 125729 */ // GIR_Coverage, 17649, |
| 44899 | /* 125729 */ GIR_EraseRootFromParent_Done, |
| 44900 | /* 125730 */ // Label 2737: @125730 |
| 44901 | /* 125730 */ GIM_Try, /*On fail goto*//*Label 2738*/ GIMT_Encode4(125794), // Rule ID 17681 // |
| 44902 | /* 125735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 44903 | /* 125738 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44904 | /* 125742 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44905 | /* 125746 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44906 | /* 125749 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44907 | /* 125753 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44908 | /* 125757 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44909 | /* 125761 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44910 | /* 125765 */ // MIs[2] Operand 1 |
| 44911 | /* 125765 */ // No operand predicates |
| 44912 | /* 125765 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44913 | /* 125767 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44914 | /* 125774 */ // (rotr:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$shamt) => (RORX64mi_EVEX:{ *:[i64] } addr:{ *:[iPTR] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44915 | /* 125774 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX64mi_EVEX), |
| 44916 | /* 125777 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44917 | /* 125779 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44918 | /* 125783 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // shamt |
| 44919 | /* 125786 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44920 | /* 125792 */ GIR_RootConstrainSelectedInstOperands, |
| 44921 | /* 125793 */ // GIR_Coverage, 17681, |
| 44922 | /* 125793 */ GIR_EraseRootFromParent_Done, |
| 44923 | /* 125794 */ // Label 2738: @125794 |
| 44924 | /* 125794 */ GIM_Try, /*On fail goto*//*Label 2739*/ GIMT_Encode4(125867), // Rule ID 820 // |
| 44925 | /* 125799 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44926 | /* 125802 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44927 | /* 125806 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44928 | /* 125810 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44929 | /* 125813 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44930 | /* 125817 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44931 | /* 125821 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44932 | /* 125825 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44933 | /* 125827 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44934 | /* 125834 */ // (rotr:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }) => (ROR64mCL_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 44935 | /* 125834 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44936 | /* 125838 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 44937 | /* 125844 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44938 | /* 125848 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64mCL_ND), |
| 44939 | /* 125851 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44940 | /* 125853 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 44941 | /* 125857 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44942 | /* 125860 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44943 | /* 125865 */ GIR_RootConstrainSelectedInstOperands, |
| 44944 | /* 125866 */ // GIR_Coverage, 820, |
| 44945 | /* 125866 */ GIR_EraseRootFromParent_Done, |
| 44946 | /* 125867 */ // Label 2739: @125867 |
| 44947 | /* 125867 */ GIM_Try, /*On fail goto*//*Label 2740*/ GIMT_Encode4(125901), // Rule ID 17645 // |
| 44948 | /* 125872 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 44949 | /* 125875 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44950 | /* 125879 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44951 | /* 125883 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44952 | /* 125887 */ // MIs[1] Operand 1 |
| 44953 | /* 125887 */ // No operand predicates |
| 44954 | /* 125887 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44955 | /* 125889 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src, (imm:{ *:[i8] }):$shamt) => (RORX64ri:{ *:[i64] } GR64:{ *:[i64] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44956 | /* 125889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX64ri), |
| 44957 | /* 125892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44958 | /* 125894 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 44959 | /* 125896 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44960 | /* 125899 */ GIR_RootConstrainSelectedInstOperands, |
| 44961 | /* 125900 */ // GIR_Coverage, 17645, |
| 44962 | /* 125900 */ GIR_EraseRootFromParent_Done, |
| 44963 | /* 125901 */ // Label 2740: @125901 |
| 44964 | /* 125901 */ GIM_Try, /*On fail goto*//*Label 2741*/ GIMT_Encode4(125935), // Rule ID 17677 // |
| 44965 | /* 125906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 44966 | /* 125909 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44967 | /* 125913 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44968 | /* 125917 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44969 | /* 125921 */ // MIs[1] Operand 1 |
| 44970 | /* 125921 */ // No operand predicates |
| 44971 | /* 125921 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44972 | /* 125923 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src, (imm:{ *:[i8] }):$shamt) => (RORX64ri_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44973 | /* 125923 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX64ri_EVEX), |
| 44974 | /* 125926 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44975 | /* 125928 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 44976 | /* 125930 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44977 | /* 125933 */ GIR_RootConstrainSelectedInstOperands, |
| 44978 | /* 125934 */ // GIR_Coverage, 17677, |
| 44979 | /* 125934 */ GIR_EraseRootFromParent_Done, |
| 44980 | /* 125935 */ // Label 2741: @125935 |
| 44981 | /* 125935 */ GIM_Try, /*On fail goto*//*Label 2742*/ GIMT_Encode4(125972), // Rule ID 872 // |
| 44982 | /* 125940 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFastSHLDRotate), |
| 44983 | /* 125943 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44984 | /* 125947 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44985 | /* 125951 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44986 | /* 125955 */ // MIs[1] Operand 1 |
| 44987 | /* 125955 */ // No operand predicates |
| 44988 | /* 125955 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44989 | /* 125957 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$shamt) => (SHRDROT64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$shamt) |
| 44990 | /* 125957 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRDROT64ri), |
| 44991 | /* 125960 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44992 | /* 125962 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44993 | /* 125964 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44994 | /* 125967 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44995 | /* 125970 */ GIR_RootConstrainSelectedInstOperands, |
| 44996 | /* 125971 */ // GIR_Coverage, 872, |
| 44997 | /* 125971 */ GIR_EraseRootFromParent_Done, |
| 44998 | /* 125972 */ // Label 2742: @125972 |
| 44999 | /* 125972 */ GIM_Try, /*On fail goto*//*Label 2743*/ GIMT_Encode4(126000), // Rule ID 17603 // |
| 45000 | /* 125977 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45001 | /* 125980 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 45002 | /* 125984 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 63, |
| 45003 | /* 125988 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, 63:{ *:[i8] }) => (ROL64r1:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 45004 | /* 125988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64r1), |
| 45005 | /* 125991 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45006 | /* 125993 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45007 | /* 125995 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45008 | /* 125998 */ GIR_RootConstrainSelectedInstOperands, |
| 45009 | /* 125999 */ // GIR_Coverage, 17603, |
| 45010 | /* 125999 */ GIR_EraseRootFromParent_Done, |
| 45011 | /* 126000 */ // Label 2743: @126000 |
| 45012 | /* 126000 */ GIM_Try, /*On fail goto*//*Label 2744*/ GIMT_Encode4(126028), // Rule ID 17611 // |
| 45013 | /* 126005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45014 | /* 126008 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 45015 | /* 126012 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 63, |
| 45016 | /* 126016 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, 63:{ *:[i8] }) => (ROL64r1_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 45017 | /* 126016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64r1_ND), |
| 45018 | /* 126019 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45019 | /* 126021 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45020 | /* 126023 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45021 | /* 126026 */ GIR_RootConstrainSelectedInstOperands, |
| 45022 | /* 126027 */ // GIR_Coverage, 17611, |
| 45023 | /* 126027 */ GIR_EraseRootFromParent_Done, |
| 45024 | /* 126028 */ // Label 2744: @126028 |
| 45025 | /* 126028 */ GIM_Try, /*On fail goto*//*Label 2745*/ GIMT_Encode4(126065), // Rule ID 792 // |
| 45026 | /* 126033 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45027 | /* 126036 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 45028 | /* 126040 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45029 | /* 126044 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45030 | /* 126048 */ // MIs[1] Operand 1 |
| 45031 | /* 126048 */ // No operand predicates |
| 45032 | /* 126048 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45033 | /* 126050 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45034 | /* 126050 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64ri), |
| 45035 | /* 126053 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45036 | /* 126055 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45037 | /* 126057 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45038 | /* 126060 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45039 | /* 126063 */ GIR_RootConstrainSelectedInstOperands, |
| 45040 | /* 126064 */ // GIR_Coverage, 792, |
| 45041 | /* 126064 */ GIR_EraseRootFromParent_Done, |
| 45042 | /* 126065 */ // Label 2745: @126065 |
| 45043 | /* 126065 */ GIM_Try, /*On fail goto*//*Label 2746*/ GIMT_Encode4(126102), // Rule ID 796 // |
| 45044 | /* 126070 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45045 | /* 126073 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 45046 | /* 126077 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45047 | /* 126081 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45048 | /* 126085 */ // MIs[1] Operand 1 |
| 45049 | /* 126085 */ // No operand predicates |
| 45050 | /* 126085 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45051 | /* 126087 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR64ri_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45052 | /* 126087 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64ri_ND), |
| 45053 | /* 126090 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45054 | /* 126092 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45055 | /* 126094 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45056 | /* 126097 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45057 | /* 126100 */ GIR_RootConstrainSelectedInstOperands, |
| 45058 | /* 126101 */ // GIR_Coverage, 796, |
| 45059 | /* 126101 */ GIR_EraseRootFromParent_Done, |
| 45060 | /* 126102 */ // Label 2746: @126102 |
| 45061 | /* 126102 */ GIM_Try, /*On fail goto*//*Label 2747*/ GIMT_Encode4(126144), // Rule ID 808 // |
| 45062 | /* 126107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45063 | /* 126110 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 45064 | /* 126114 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45065 | /* 126118 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (ROR64rCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 45066 | /* 126118 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45067 | /* 126122 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 45068 | /* 126128 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45069 | /* 126132 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64rCL), |
| 45070 | /* 126135 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45071 | /* 126137 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45072 | /* 126139 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45073 | /* 126142 */ GIR_RootConstrainSelectedInstOperands, |
| 45074 | /* 126143 */ // GIR_Coverage, 808, |
| 45075 | /* 126143 */ GIR_EraseRootFromParent_Done, |
| 45076 | /* 126144 */ // Label 2747: @126144 |
| 45077 | /* 126144 */ GIM_Try, /*On fail goto*//*Label 2748*/ GIMT_Encode4(126186), // Rule ID 812 // |
| 45078 | /* 126149 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45079 | /* 126152 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 45080 | /* 126156 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45081 | /* 126160 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (ROR64rCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 45082 | /* 126160 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45083 | /* 126164 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 45084 | /* 126170 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45085 | /* 126174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64rCL_ND), |
| 45086 | /* 126177 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45087 | /* 126179 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45088 | /* 126181 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45089 | /* 126184 */ GIR_RootConstrainSelectedInstOperands, |
| 45090 | /* 126185 */ // GIR_Coverage, 812, |
| 45091 | /* 126185 */ GIR_EraseRootFromParent_Done, |
| 45092 | /* 126186 */ // Label 2748: @126186 |
| 45093 | /* 126186 */ GIM_Reject, |
| 45094 | /* 126187 */ // Label 2734: @126187 |
| 45095 | /* 126187 */ GIM_Reject, |
| 45096 | /* 126188 */ // Label 2692: @126188 |
| 45097 | /* 126188 */ GIM_Try, /*On fail goto*//*Label 2749*/ GIMT_Encode4(126454), |
| 45098 | /* 126193 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 45099 | /* 126196 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 45100 | /* 126199 */ GIM_Try, /*On fail goto*//*Label 2750*/ GIMT_Encode4(126261), // Rule ID 8005 // |
| 45101 | /* 126204 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45102 | /* 126207 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45103 | /* 126211 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45104 | /* 126215 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45105 | /* 126219 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45106 | /* 126223 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45107 | /* 126226 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45108 | /* 126230 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45109 | /* 126234 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45110 | /* 126236 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45111 | /* 126243 */ // (rotr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45112 | /* 126243 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVQZ128rm), |
| 45113 | /* 126246 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45114 | /* 126248 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45115 | /* 126250 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45116 | /* 126254 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45117 | /* 126259 */ GIR_RootConstrainSelectedInstOperands, |
| 45118 | /* 126260 */ // GIR_Coverage, 8005, |
| 45119 | /* 126260 */ GIR_EraseRootFromParent_Done, |
| 45120 | /* 126261 */ // Label 2750: @126261 |
| 45121 | /* 126261 */ GIM_Try, /*On fail goto*//*Label 2751*/ GIMT_Encode4(126288), // Rule ID 8002 // |
| 45122 | /* 126266 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45123 | /* 126269 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45124 | /* 126273 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45125 | /* 126277 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45126 | /* 126281 */ // (rotr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPRORVQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 45127 | /* 126281 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVQZ128rr), |
| 45128 | /* 126286 */ GIR_RootConstrainSelectedInstOperands, |
| 45129 | /* 126287 */ // GIR_Coverage, 8002, |
| 45130 | /* 126287 */ GIR_Done, |
| 45131 | /* 126288 */ // Label 2751: @126288 |
| 45132 | /* 126288 */ GIM_Try, /*On fail goto*//*Label 2752*/ GIMT_Encode4(126453), // Rule ID 20804 // |
| 45133 | /* 126293 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 45134 | /* 126296 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 45135 | /* 126300 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45136 | /* 126304 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45137 | /* 126308 */ // (rotr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPRORVQZrr:{ *:[v8i64] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 45138 | /* 126308 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 45139 | /* 126311 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45140 | /* 126315 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45141 | /* 126320 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 45142 | /* 126322 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 45143 | /* 126325 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45144 | /* 126329 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45145 | /* 126334 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 45146 | /* 126337 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 45147 | /* 126341 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 45148 | /* 126344 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45149 | /* 126349 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45150 | /* 126354 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 45151 | /* 126359 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 45152 | /* 126362 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45153 | /* 126366 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45154 | /* 126371 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 45155 | /* 126373 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 45156 | /* 126376 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45157 | /* 126380 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45158 | /* 126385 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 45159 | /* 126388 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 45160 | /* 126392 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 45161 | /* 126395 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45162 | /* 126400 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45163 | /* 126405 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 45164 | /* 126410 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 45165 | /* 126413 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPRORVQZrr), |
| 45166 | /* 126417 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45167 | /* 126422 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 45168 | /* 126425 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 45169 | /* 126428 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 45170 | /* 126430 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45171 | /* 126433 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45172 | /* 126435 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 45173 | /* 126442 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 45174 | /* 126447 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45175 | /* 126452 */ // GIR_Coverage, 20804, |
| 45176 | /* 126452 */ GIR_EraseRootFromParent_Done, |
| 45177 | /* 126453 */ // Label 2752: @126453 |
| 45178 | /* 126453 */ GIM_Reject, |
| 45179 | /* 126454 */ // Label 2749: @126454 |
| 45180 | /* 126454 */ GIM_Reject, |
| 45181 | /* 126455 */ // Label 2693: @126455 |
| 45182 | /* 126455 */ GIM_Try, /*On fail goto*//*Label 2753*/ GIMT_Encode4(126721), |
| 45183 | /* 126460 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 45184 | /* 126463 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 45185 | /* 126466 */ GIM_Try, /*On fail goto*//*Label 2754*/ GIMT_Encode4(126528), // Rule ID 7978 // |
| 45186 | /* 126471 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45187 | /* 126474 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45188 | /* 126478 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45189 | /* 126482 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45190 | /* 126486 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45191 | /* 126490 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45192 | /* 126493 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45193 | /* 126497 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45194 | /* 126501 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45195 | /* 126503 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45196 | /* 126510 */ // (rotr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45197 | /* 126510 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVDZ128rm), |
| 45198 | /* 126513 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45199 | /* 126515 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45200 | /* 126517 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45201 | /* 126521 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45202 | /* 126526 */ GIR_RootConstrainSelectedInstOperands, |
| 45203 | /* 126527 */ // GIR_Coverage, 7978, |
| 45204 | /* 126527 */ GIR_EraseRootFromParent_Done, |
| 45205 | /* 126528 */ // Label 2754: @126528 |
| 45206 | /* 126528 */ GIM_Try, /*On fail goto*//*Label 2755*/ GIMT_Encode4(126555), // Rule ID 7975 // |
| 45207 | /* 126533 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45208 | /* 126536 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45209 | /* 126540 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45210 | /* 126544 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45211 | /* 126548 */ // (rotr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPRORVDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 45212 | /* 126548 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVDZ128rr), |
| 45213 | /* 126553 */ GIR_RootConstrainSelectedInstOperands, |
| 45214 | /* 126554 */ // GIR_Coverage, 7975, |
| 45215 | /* 126554 */ GIR_Done, |
| 45216 | /* 126555 */ // Label 2755: @126555 |
| 45217 | /* 126555 */ GIM_Try, /*On fail goto*//*Label 2756*/ GIMT_Encode4(126720), // Rule ID 20806 // |
| 45218 | /* 126560 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 45219 | /* 126563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 45220 | /* 126567 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45221 | /* 126571 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45222 | /* 126575 */ // (rotr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (EXTRACT_SUBREG:{ *:[v4i32] } (VPRORVDZrr:{ *:[v16i32] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 45223 | /* 126575 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 45224 | /* 126578 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45225 | /* 126582 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45226 | /* 126587 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 45227 | /* 126589 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 45228 | /* 126592 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45229 | /* 126596 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45230 | /* 126601 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 45231 | /* 126604 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 45232 | /* 126608 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 45233 | /* 126611 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45234 | /* 126616 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45235 | /* 126621 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 45236 | /* 126626 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 45237 | /* 126629 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45238 | /* 126633 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45239 | /* 126638 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 45240 | /* 126640 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 45241 | /* 126643 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45242 | /* 126647 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45243 | /* 126652 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 45244 | /* 126655 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 45245 | /* 126659 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 45246 | /* 126662 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45247 | /* 126667 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45248 | /* 126672 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 45249 | /* 126677 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 45250 | /* 126680 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPRORVDZrr), |
| 45251 | /* 126684 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45252 | /* 126689 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 45253 | /* 126692 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 45254 | /* 126695 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 45255 | /* 126697 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45256 | /* 126700 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45257 | /* 126702 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 45258 | /* 126709 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 45259 | /* 126714 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45260 | /* 126719 */ // GIR_Coverage, 20806, |
| 45261 | /* 126719 */ GIR_EraseRootFromParent_Done, |
| 45262 | /* 126720 */ // Label 2756: @126720 |
| 45263 | /* 126720 */ GIM_Reject, |
| 45264 | /* 126721 */ // Label 2753: @126721 |
| 45265 | /* 126721 */ GIM_Reject, |
| 45266 | /* 126722 */ // Label 2694: @126722 |
| 45267 | /* 126722 */ GIM_Try, /*On fail goto*//*Label 2757*/ GIMT_Encode4(126972), |
| 45268 | /* 126727 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 45269 | /* 126730 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 45270 | /* 126733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45271 | /* 126737 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45272 | /* 126741 */ GIM_Try, /*On fail goto*//*Label 2758*/ GIMT_Encode4(126795), // Rule ID 7996 // |
| 45273 | /* 126746 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45274 | /* 126749 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45275 | /* 126753 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45276 | /* 126757 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45277 | /* 126760 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45278 | /* 126764 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45279 | /* 126768 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45280 | /* 126770 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45281 | /* 126777 */ // (rotr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45282 | /* 126777 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVQZ256rm), |
| 45283 | /* 126780 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45284 | /* 126782 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45285 | /* 126784 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45286 | /* 126788 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45287 | /* 126793 */ GIR_RootConstrainSelectedInstOperands, |
| 45288 | /* 126794 */ // GIR_Coverage, 7996, |
| 45289 | /* 126794 */ GIR_EraseRootFromParent_Done, |
| 45290 | /* 126795 */ // Label 2758: @126795 |
| 45291 | /* 126795 */ GIM_Try, /*On fail goto*//*Label 2759*/ GIMT_Encode4(126814), // Rule ID 7993 // |
| 45292 | /* 126800 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45293 | /* 126803 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45294 | /* 126807 */ // (rotr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPRORVQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 45295 | /* 126807 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVQZ256rr), |
| 45296 | /* 126812 */ GIR_RootConstrainSelectedInstOperands, |
| 45297 | /* 126813 */ // GIR_Coverage, 7993, |
| 45298 | /* 126813 */ GIR_Done, |
| 45299 | /* 126814 */ // Label 2759: @126814 |
| 45300 | /* 126814 */ GIM_Try, /*On fail goto*//*Label 2760*/ GIMT_Encode4(126971), // Rule ID 20805 // |
| 45301 | /* 126819 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 45302 | /* 126822 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45303 | /* 126826 */ // (rotr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPRORVQZrr:{ *:[v8i64] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 45304 | /* 126826 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 45305 | /* 126829 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45306 | /* 126833 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45307 | /* 126838 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 45308 | /* 126840 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 45309 | /* 126843 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45310 | /* 126847 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45311 | /* 126852 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 45312 | /* 126855 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 45313 | /* 126859 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 45314 | /* 126862 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45315 | /* 126867 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45316 | /* 126872 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 45317 | /* 126877 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 45318 | /* 126880 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45319 | /* 126884 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45320 | /* 126889 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 45321 | /* 126891 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 45322 | /* 126894 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45323 | /* 126898 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45324 | /* 126903 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 45325 | /* 126906 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 45326 | /* 126910 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 45327 | /* 126913 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45328 | /* 126918 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45329 | /* 126923 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 45330 | /* 126928 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 45331 | /* 126931 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPRORVQZrr), |
| 45332 | /* 126935 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45333 | /* 126940 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 45334 | /* 126943 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 45335 | /* 126946 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 45336 | /* 126948 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45337 | /* 126951 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45338 | /* 126953 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 45339 | /* 126960 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 45340 | /* 126965 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45341 | /* 126970 */ // GIR_Coverage, 20805, |
| 45342 | /* 126970 */ GIR_EraseRootFromParent_Done, |
| 45343 | /* 126971 */ // Label 2760: @126971 |
| 45344 | /* 126971 */ GIM_Reject, |
| 45345 | /* 126972 */ // Label 2757: @126972 |
| 45346 | /* 126972 */ GIM_Reject, |
| 45347 | /* 126973 */ // Label 2695: @126973 |
| 45348 | /* 126973 */ GIM_Try, /*On fail goto*//*Label 2761*/ GIMT_Encode4(127223), |
| 45349 | /* 126978 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 45350 | /* 126981 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 45351 | /* 126984 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45352 | /* 126988 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45353 | /* 126992 */ GIM_Try, /*On fail goto*//*Label 2762*/ GIMT_Encode4(127046), // Rule ID 7969 // |
| 45354 | /* 126997 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45355 | /* 127000 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45356 | /* 127004 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45357 | /* 127008 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45358 | /* 127011 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45359 | /* 127015 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45360 | /* 127019 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45361 | /* 127021 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45362 | /* 127028 */ // (rotr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45363 | /* 127028 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVDZ256rm), |
| 45364 | /* 127031 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45365 | /* 127033 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45366 | /* 127035 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45367 | /* 127039 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45368 | /* 127044 */ GIR_RootConstrainSelectedInstOperands, |
| 45369 | /* 127045 */ // GIR_Coverage, 7969, |
| 45370 | /* 127045 */ GIR_EraseRootFromParent_Done, |
| 45371 | /* 127046 */ // Label 2762: @127046 |
| 45372 | /* 127046 */ GIM_Try, /*On fail goto*//*Label 2763*/ GIMT_Encode4(127065), // Rule ID 7966 // |
| 45373 | /* 127051 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45374 | /* 127054 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45375 | /* 127058 */ // (rotr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPRORVDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 45376 | /* 127058 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVDZ256rr), |
| 45377 | /* 127063 */ GIR_RootConstrainSelectedInstOperands, |
| 45378 | /* 127064 */ // GIR_Coverage, 7966, |
| 45379 | /* 127064 */ GIR_Done, |
| 45380 | /* 127065 */ // Label 2763: @127065 |
| 45381 | /* 127065 */ GIM_Try, /*On fail goto*//*Label 2764*/ GIMT_Encode4(127222), // Rule ID 20807 // |
| 45382 | /* 127070 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 45383 | /* 127073 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45384 | /* 127077 */ // (rotr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (EXTRACT_SUBREG:{ *:[v8i32] } (VPRORVDZrr:{ *:[v16i32] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 45385 | /* 127077 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 45386 | /* 127080 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45387 | /* 127084 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45388 | /* 127089 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 45389 | /* 127091 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 45390 | /* 127094 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45391 | /* 127098 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45392 | /* 127103 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 45393 | /* 127106 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 45394 | /* 127110 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 45395 | /* 127113 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45396 | /* 127118 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45397 | /* 127123 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 45398 | /* 127128 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 45399 | /* 127131 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45400 | /* 127135 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45401 | /* 127140 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 45402 | /* 127142 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 45403 | /* 127145 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45404 | /* 127149 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45405 | /* 127154 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 45406 | /* 127157 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 45407 | /* 127161 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 45408 | /* 127164 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45409 | /* 127169 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45410 | /* 127174 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 45411 | /* 127179 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 45412 | /* 127182 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPRORVDZrr), |
| 45413 | /* 127186 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 45414 | /* 127191 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 45415 | /* 127194 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 45416 | /* 127197 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 45417 | /* 127199 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45418 | /* 127202 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45419 | /* 127204 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 45420 | /* 127211 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 45421 | /* 127216 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45422 | /* 127221 */ // GIR_Coverage, 20807, |
| 45423 | /* 127221 */ GIR_EraseRootFromParent_Done, |
| 45424 | /* 127222 */ // Label 2764: @127222 |
| 45425 | /* 127222 */ GIM_Reject, |
| 45426 | /* 127223 */ // Label 2761: @127223 |
| 45427 | /* 127223 */ GIM_Reject, |
| 45428 | /* 127224 */ // Label 2696: @127224 |
| 45429 | /* 127224 */ GIM_Try, /*On fail goto*//*Label 2765*/ GIMT_Encode4(127317), |
| 45430 | /* 127229 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 45431 | /* 127232 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 45432 | /* 127235 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45433 | /* 127239 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45434 | /* 127243 */ GIM_Try, /*On fail goto*//*Label 2766*/ GIMT_Encode4(127297), // Rule ID 7987 // |
| 45435 | /* 127248 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 45436 | /* 127251 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45437 | /* 127255 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45438 | /* 127259 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45439 | /* 127262 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45440 | /* 127266 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45441 | /* 127270 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45442 | /* 127272 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45443 | /* 127279 */ // (rotr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45444 | /* 127279 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVQZrm), |
| 45445 | /* 127282 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45446 | /* 127284 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45447 | /* 127286 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45448 | /* 127290 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45449 | /* 127295 */ GIR_RootConstrainSelectedInstOperands, |
| 45450 | /* 127296 */ // GIR_Coverage, 7987, |
| 45451 | /* 127296 */ GIR_EraseRootFromParent_Done, |
| 45452 | /* 127297 */ // Label 2766: @127297 |
| 45453 | /* 127297 */ GIM_Try, /*On fail goto*//*Label 2767*/ GIMT_Encode4(127316), // Rule ID 7984 // |
| 45454 | /* 127302 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 45455 | /* 127305 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45456 | /* 127309 */ // (rotr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPRORVQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 45457 | /* 127309 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVQZrr), |
| 45458 | /* 127314 */ GIR_RootConstrainSelectedInstOperands, |
| 45459 | /* 127315 */ // GIR_Coverage, 7984, |
| 45460 | /* 127315 */ GIR_Done, |
| 45461 | /* 127316 */ // Label 2767: @127316 |
| 45462 | /* 127316 */ GIM_Reject, |
| 45463 | /* 127317 */ // Label 2765: @127317 |
| 45464 | /* 127317 */ GIM_Reject, |
| 45465 | /* 127318 */ // Label 2697: @127318 |
| 45466 | /* 127318 */ GIM_Try, /*On fail goto*//*Label 2768*/ GIMT_Encode4(127411), |
| 45467 | /* 127323 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 45468 | /* 127326 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 45469 | /* 127329 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45470 | /* 127333 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45471 | /* 127337 */ GIM_Try, /*On fail goto*//*Label 2769*/ GIMT_Encode4(127391), // Rule ID 7960 // |
| 45472 | /* 127342 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 45473 | /* 127345 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45474 | /* 127349 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45475 | /* 127353 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45476 | /* 127356 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45477 | /* 127360 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45478 | /* 127364 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45479 | /* 127366 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45480 | /* 127373 */ // (rotr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45481 | /* 127373 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVDZrm), |
| 45482 | /* 127376 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45483 | /* 127378 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45484 | /* 127380 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45485 | /* 127384 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45486 | /* 127389 */ GIR_RootConstrainSelectedInstOperands, |
| 45487 | /* 127390 */ // GIR_Coverage, 7960, |
| 45488 | /* 127390 */ GIR_EraseRootFromParent_Done, |
| 45489 | /* 127391 */ // Label 2769: @127391 |
| 45490 | /* 127391 */ GIM_Try, /*On fail goto*//*Label 2770*/ GIMT_Encode4(127410), // Rule ID 7957 // |
| 45491 | /* 127396 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 45492 | /* 127399 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45493 | /* 127403 */ // (rotr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPRORVDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 45494 | /* 127403 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVDZrr), |
| 45495 | /* 127408 */ GIR_RootConstrainSelectedInstOperands, |
| 45496 | /* 127409 */ // GIR_Coverage, 7957, |
| 45497 | /* 127409 */ GIR_Done, |
| 45498 | /* 127410 */ // Label 2770: @127410 |
| 45499 | /* 127410 */ GIM_Reject, |
| 45500 | /* 127411 */ // Label 2768: @127411 |
| 45501 | /* 127411 */ GIM_Reject, |
| 45502 | /* 127412 */ // Label 2698: @127412 |
| 45503 | /* 127412 */ GIM_Reject, |
| 45504 | /* 127413 */ // Label 32: @127413 |
| 45505 | /* 127413 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(20), /*)*//*default:*//*Label 2783*/ GIMT_Encode4(131132), |
| 45506 | /* 127424 */ /*GILLT_s8*//*Label 2771*/ GIMT_Encode4(127500), |
| 45507 | /* 127428 */ /*GILLT_s16*//*Label 2772*/ GIMT_Encode4(127930), |
| 45508 | /* 127432 */ /*GILLT_s32*//*Label 2773*/ GIMT_Encode4(128360), |
| 45509 | /* 127436 */ /*GILLT_s64*//*Label 2774*/ GIMT_Encode4(128827), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 45510 | /* 127452 */ /*GILLT_v2s64*//*Label 2775*/ GIMT_Encode4(129294), GIMT_Encode4(0), |
| 45511 | /* 127460 */ /*GILLT_v4s32*//*Label 2776*/ GIMT_Encode4(129712), |
| 45512 | /* 127464 */ /*GILLT_v4s64*//*Label 2777*/ GIMT_Encode4(130130), GIMT_Encode4(0), |
| 45513 | /* 127472 */ /*GILLT_v8s16*//*Label 2778*/ GIMT_Encode4(130381), |
| 45514 | /* 127476 */ /*GILLT_v8s32*//*Label 2779*/ GIMT_Encode4(130537), |
| 45515 | /* 127480 */ /*GILLT_v8s64*//*Label 2780*/ GIMT_Encode4(130788), GIMT_Encode4(0), |
| 45516 | /* 127488 */ /*GILLT_v16s8*//*Label 2781*/ GIMT_Encode4(130882), GIMT_Encode4(0), |
| 45517 | /* 127496 */ /*GILLT_v16s32*//*Label 2782*/ GIMT_Encode4(131038), |
| 45518 | /* 127500 */ // Label 2771: @127500 |
| 45519 | /* 127500 */ GIM_Try, /*On fail goto*//*Label 2784*/ GIMT_Encode4(127929), |
| 45520 | /* 127505 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 45521 | /* 127508 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 45522 | /* 127511 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 45523 | /* 127515 */ GIM_Try, /*On fail goto*//*Label 2785*/ GIMT_Encode4(127574), // Rule ID 17620 // |
| 45524 | /* 127520 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45525 | /* 127523 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45526 | /* 127527 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45527 | /* 127531 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45528 | /* 127534 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45529 | /* 127538 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 45530 | /* 127542 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 7, |
| 45531 | /* 127546 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45532 | /* 127548 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45533 | /* 127555 */ // (rotl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, 7:{ *:[i8] }) => (ROR8m1_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 45534 | /* 127555 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8m1_ND), |
| 45535 | /* 127558 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45536 | /* 127560 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 45537 | /* 127564 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45538 | /* 127567 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45539 | /* 127572 */ GIR_RootConstrainSelectedInstOperands, |
| 45540 | /* 127573 */ // GIR_Coverage, 17620, |
| 45541 | /* 127573 */ GIR_EraseRootFromParent_Done, |
| 45542 | /* 127574 */ // Label 2785: @127574 |
| 45543 | /* 127574 */ GIM_Try, /*On fail goto*//*Label 2786*/ GIMT_Encode4(127641), // Rule ID 769 // |
| 45544 | /* 127579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45545 | /* 127582 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45546 | /* 127586 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45547 | /* 127590 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45548 | /* 127593 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45549 | /* 127597 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 45550 | /* 127601 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 45551 | /* 127605 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45552 | /* 127609 */ // MIs[2] Operand 1 |
| 45553 | /* 127609 */ // No operand predicates |
| 45554 | /* 127609 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 45555 | /* 127611 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45556 | /* 127618 */ // (rotl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, (imm:{ *:[i8] }):$src2) => (ROL8mi_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45557 | /* 127618 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8mi_ND), |
| 45558 | /* 127621 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45559 | /* 127623 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 45560 | /* 127627 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 45561 | /* 127630 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45562 | /* 127633 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 45563 | /* 127639 */ GIR_RootConstrainSelectedInstOperands, |
| 45564 | /* 127640 */ // GIR_Coverage, 769, |
| 45565 | /* 127640 */ GIR_EraseRootFromParent_Done, |
| 45566 | /* 127641 */ // Label 2786: @127641 |
| 45567 | /* 127641 */ GIM_Try, /*On fail goto*//*Label 2787*/ GIMT_Encode4(127714), // Rule ID 785 // |
| 45568 | /* 127646 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45569 | /* 127649 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45570 | /* 127653 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45571 | /* 127657 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45572 | /* 127660 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45573 | /* 127664 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 45574 | /* 127668 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45575 | /* 127672 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45576 | /* 127674 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45577 | /* 127681 */ // (rotl:{ *:[i8] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>>, CL:{ *:[i8] }) => (ROL8mCL_ND:{ *:[i8] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 45578 | /* 127681 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45579 | /* 127685 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 45580 | /* 127691 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45581 | /* 127695 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8mCL_ND), |
| 45582 | /* 127698 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45583 | /* 127700 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 45584 | /* 127704 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45585 | /* 127707 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45586 | /* 127712 */ GIR_RootConstrainSelectedInstOperands, |
| 45587 | /* 127713 */ // GIR_Coverage, 785, |
| 45588 | /* 127713 */ GIR_EraseRootFromParent_Done, |
| 45589 | /* 127714 */ // Label 2787: @127714 |
| 45590 | /* 127714 */ GIM_Try, /*On fail goto*//*Label 2788*/ GIMT_Encode4(127742), // Rule ID 17596 // |
| 45591 | /* 127719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45592 | /* 127722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 45593 | /* 127726 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 7, |
| 45594 | /* 127730 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, 7:{ *:[i8] }) => (ROR8r1:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 45595 | /* 127730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8r1), |
| 45596 | /* 127733 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45597 | /* 127735 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45598 | /* 127737 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45599 | /* 127740 */ GIR_RootConstrainSelectedInstOperands, |
| 45600 | /* 127741 */ // GIR_Coverage, 17596, |
| 45601 | /* 127741 */ GIR_EraseRootFromParent_Done, |
| 45602 | /* 127742 */ // Label 2788: @127742 |
| 45603 | /* 127742 */ GIM_Try, /*On fail goto*//*Label 2789*/ GIMT_Encode4(127770), // Rule ID 17604 // |
| 45604 | /* 127747 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45605 | /* 127750 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 45606 | /* 127754 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 7, |
| 45607 | /* 127758 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, 7:{ *:[i8] }) => (ROR8r1_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 45608 | /* 127758 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8r1_ND), |
| 45609 | /* 127761 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45610 | /* 127763 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45611 | /* 127765 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45612 | /* 127768 */ GIR_RootConstrainSelectedInstOperands, |
| 45613 | /* 127769 */ // GIR_Coverage, 17604, |
| 45614 | /* 127769 */ GIR_EraseRootFromParent_Done, |
| 45615 | /* 127770 */ // Label 2789: @127770 |
| 45616 | /* 127770 */ GIM_Try, /*On fail goto*//*Label 2790*/ GIMT_Encode4(127807), // Rule ID 757 // |
| 45617 | /* 127775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45618 | /* 127778 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 45619 | /* 127782 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45620 | /* 127786 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45621 | /* 127790 */ // MIs[1] Operand 1 |
| 45622 | /* 127790 */ // No operand predicates |
| 45623 | /* 127790 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45624 | /* 127792 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45625 | /* 127792 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8ri), |
| 45626 | /* 127795 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45627 | /* 127797 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45628 | /* 127799 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45629 | /* 127802 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45630 | /* 127805 */ GIR_RootConstrainSelectedInstOperands, |
| 45631 | /* 127806 */ // GIR_Coverage, 757, |
| 45632 | /* 127806 */ GIR_EraseRootFromParent_Done, |
| 45633 | /* 127807 */ // Label 2790: @127807 |
| 45634 | /* 127807 */ GIM_Try, /*On fail goto*//*Label 2791*/ GIMT_Encode4(127844), // Rule ID 761 // |
| 45635 | /* 127812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45636 | /* 127815 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 45637 | /* 127819 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45638 | /* 127823 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45639 | /* 127827 */ // MIs[1] Operand 1 |
| 45640 | /* 127827 */ // No operand predicates |
| 45641 | /* 127827 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45642 | /* 127829 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45643 | /* 127829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8ri_ND), |
| 45644 | /* 127832 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45645 | /* 127834 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45646 | /* 127836 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45647 | /* 127839 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45648 | /* 127842 */ GIR_RootConstrainSelectedInstOperands, |
| 45649 | /* 127843 */ // GIR_Coverage, 761, |
| 45650 | /* 127843 */ GIR_EraseRootFromParent_Done, |
| 45651 | /* 127844 */ // Label 2791: @127844 |
| 45652 | /* 127844 */ GIM_Try, /*On fail goto*//*Label 2792*/ GIMT_Encode4(127886), // Rule ID 773 // |
| 45653 | /* 127849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45654 | /* 127852 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 45655 | /* 127856 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45656 | /* 127860 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (ROL8rCL:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 45657 | /* 127860 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45658 | /* 127864 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 45659 | /* 127870 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45660 | /* 127874 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8rCL), |
| 45661 | /* 127877 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45662 | /* 127879 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45663 | /* 127881 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45664 | /* 127884 */ GIR_RootConstrainSelectedInstOperands, |
| 45665 | /* 127885 */ // GIR_Coverage, 773, |
| 45666 | /* 127885 */ GIR_EraseRootFromParent_Done, |
| 45667 | /* 127886 */ // Label 2792: @127886 |
| 45668 | /* 127886 */ GIM_Try, /*On fail goto*//*Label 2793*/ GIMT_Encode4(127928), // Rule ID 777 // |
| 45669 | /* 127891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45670 | /* 127894 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 45671 | /* 127898 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45672 | /* 127902 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (ROL8rCL_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 45673 | /* 127902 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45674 | /* 127906 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 45675 | /* 127912 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45676 | /* 127916 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8rCL_ND), |
| 45677 | /* 127919 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45678 | /* 127921 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45679 | /* 127923 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45680 | /* 127926 */ GIR_RootConstrainSelectedInstOperands, |
| 45681 | /* 127927 */ // GIR_Coverage, 777, |
| 45682 | /* 127927 */ GIR_EraseRootFromParent_Done, |
| 45683 | /* 127928 */ // Label 2793: @127928 |
| 45684 | /* 127928 */ GIM_Reject, |
| 45685 | /* 127929 */ // Label 2784: @127929 |
| 45686 | /* 127929 */ GIM_Reject, |
| 45687 | /* 127930 */ // Label 2772: @127930 |
| 45688 | /* 127930 */ GIM_Try, /*On fail goto*//*Label 2794*/ GIMT_Encode4(128359), |
| 45689 | /* 127935 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 45690 | /* 127938 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 45691 | /* 127941 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 45692 | /* 127945 */ GIM_Try, /*On fail goto*//*Label 2795*/ GIMT_Encode4(128004), // Rule ID 17621 // |
| 45693 | /* 127950 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45694 | /* 127953 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45695 | /* 127957 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45696 | /* 127961 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45697 | /* 127964 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45698 | /* 127968 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 45699 | /* 127972 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 15, |
| 45700 | /* 127976 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45701 | /* 127978 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45702 | /* 127985 */ // (rotl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, 15:{ *:[i8] }) => (ROR16m1_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 45703 | /* 127985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16m1_ND), |
| 45704 | /* 127988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45705 | /* 127990 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 45706 | /* 127994 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45707 | /* 127997 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45708 | /* 128002 */ GIR_RootConstrainSelectedInstOperands, |
| 45709 | /* 128003 */ // GIR_Coverage, 17621, |
| 45710 | /* 128003 */ GIR_EraseRootFromParent_Done, |
| 45711 | /* 128004 */ // Label 2795: @128004 |
| 45712 | /* 128004 */ GIM_Try, /*On fail goto*//*Label 2796*/ GIMT_Encode4(128071), // Rule ID 770 // |
| 45713 | /* 128009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45714 | /* 128012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45715 | /* 128016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45716 | /* 128020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45717 | /* 128023 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45718 | /* 128027 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 45719 | /* 128031 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 45720 | /* 128035 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45721 | /* 128039 */ // MIs[2] Operand 1 |
| 45722 | /* 128039 */ // No operand predicates |
| 45723 | /* 128039 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 45724 | /* 128041 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45725 | /* 128048 */ // (rotl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i8] }):$src2) => (ROL16mi_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45726 | /* 128048 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16mi_ND), |
| 45727 | /* 128051 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45728 | /* 128053 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 45729 | /* 128057 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 45730 | /* 128060 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45731 | /* 128063 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 45732 | /* 128069 */ GIR_RootConstrainSelectedInstOperands, |
| 45733 | /* 128070 */ // GIR_Coverage, 770, |
| 45734 | /* 128070 */ GIR_EraseRootFromParent_Done, |
| 45735 | /* 128071 */ // Label 2796: @128071 |
| 45736 | /* 128071 */ GIM_Try, /*On fail goto*//*Label 2797*/ GIMT_Encode4(128144), // Rule ID 786 // |
| 45737 | /* 128076 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45738 | /* 128079 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45739 | /* 128083 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45740 | /* 128087 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45741 | /* 128090 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45742 | /* 128094 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 45743 | /* 128098 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45744 | /* 128102 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45745 | /* 128104 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45746 | /* 128111 */ // (rotl:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, CL:{ *:[i8] }) => (ROL16mCL_ND:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 45747 | /* 128111 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45748 | /* 128115 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 45749 | /* 128121 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45750 | /* 128125 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16mCL_ND), |
| 45751 | /* 128128 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45752 | /* 128130 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 45753 | /* 128134 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45754 | /* 128137 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45755 | /* 128142 */ GIR_RootConstrainSelectedInstOperands, |
| 45756 | /* 128143 */ // GIR_Coverage, 786, |
| 45757 | /* 128143 */ GIR_EraseRootFromParent_Done, |
| 45758 | /* 128144 */ // Label 2797: @128144 |
| 45759 | /* 128144 */ GIM_Try, /*On fail goto*//*Label 2798*/ GIMT_Encode4(128172), // Rule ID 17597 // |
| 45760 | /* 128149 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45761 | /* 128152 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 45762 | /* 128156 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 15, |
| 45763 | /* 128160 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, 15:{ *:[i8] }) => (ROR16r1:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 45764 | /* 128160 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16r1), |
| 45765 | /* 128163 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45766 | /* 128165 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45767 | /* 128167 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45768 | /* 128170 */ GIR_RootConstrainSelectedInstOperands, |
| 45769 | /* 128171 */ // GIR_Coverage, 17597, |
| 45770 | /* 128171 */ GIR_EraseRootFromParent_Done, |
| 45771 | /* 128172 */ // Label 2798: @128172 |
| 45772 | /* 128172 */ GIM_Try, /*On fail goto*//*Label 2799*/ GIMT_Encode4(128200), // Rule ID 17605 // |
| 45773 | /* 128177 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45774 | /* 128180 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 45775 | /* 128184 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 15, |
| 45776 | /* 128188 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, 15:{ *:[i8] }) => (ROR16r1_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 45777 | /* 128188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16r1_ND), |
| 45778 | /* 128191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45779 | /* 128193 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45780 | /* 128195 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45781 | /* 128198 */ GIR_RootConstrainSelectedInstOperands, |
| 45782 | /* 128199 */ // GIR_Coverage, 17605, |
| 45783 | /* 128199 */ GIR_EraseRootFromParent_Done, |
| 45784 | /* 128200 */ // Label 2799: @128200 |
| 45785 | /* 128200 */ GIM_Try, /*On fail goto*//*Label 2800*/ GIMT_Encode4(128237), // Rule ID 758 // |
| 45786 | /* 128205 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45787 | /* 128208 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 45788 | /* 128212 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45789 | /* 128216 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45790 | /* 128220 */ // MIs[1] Operand 1 |
| 45791 | /* 128220 */ // No operand predicates |
| 45792 | /* 128220 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45793 | /* 128222 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45794 | /* 128222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16ri), |
| 45795 | /* 128225 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45796 | /* 128227 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45797 | /* 128229 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45798 | /* 128232 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45799 | /* 128235 */ GIR_RootConstrainSelectedInstOperands, |
| 45800 | /* 128236 */ // GIR_Coverage, 758, |
| 45801 | /* 128236 */ GIR_EraseRootFromParent_Done, |
| 45802 | /* 128237 */ // Label 2800: @128237 |
| 45803 | /* 128237 */ GIM_Try, /*On fail goto*//*Label 2801*/ GIMT_Encode4(128274), // Rule ID 762 // |
| 45804 | /* 128242 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45805 | /* 128245 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 45806 | /* 128249 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45807 | /* 128253 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45808 | /* 128257 */ // MIs[1] Operand 1 |
| 45809 | /* 128257 */ // No operand predicates |
| 45810 | /* 128257 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45811 | /* 128259 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45812 | /* 128259 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16ri_ND), |
| 45813 | /* 128262 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45814 | /* 128264 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45815 | /* 128266 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45816 | /* 128269 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45817 | /* 128272 */ GIR_RootConstrainSelectedInstOperands, |
| 45818 | /* 128273 */ // GIR_Coverage, 762, |
| 45819 | /* 128273 */ GIR_EraseRootFromParent_Done, |
| 45820 | /* 128274 */ // Label 2801: @128274 |
| 45821 | /* 128274 */ GIM_Try, /*On fail goto*//*Label 2802*/ GIMT_Encode4(128316), // Rule ID 774 // |
| 45822 | /* 128279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45823 | /* 128282 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 45824 | /* 128286 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45825 | /* 128290 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (ROL16rCL:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 45826 | /* 128290 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45827 | /* 128294 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 45828 | /* 128300 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45829 | /* 128304 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16rCL), |
| 45830 | /* 128307 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45831 | /* 128309 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45832 | /* 128311 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45833 | /* 128314 */ GIR_RootConstrainSelectedInstOperands, |
| 45834 | /* 128315 */ // GIR_Coverage, 774, |
| 45835 | /* 128315 */ GIR_EraseRootFromParent_Done, |
| 45836 | /* 128316 */ // Label 2802: @128316 |
| 45837 | /* 128316 */ GIM_Try, /*On fail goto*//*Label 2803*/ GIMT_Encode4(128358), // Rule ID 778 // |
| 45838 | /* 128321 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45839 | /* 128324 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 45840 | /* 128328 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45841 | /* 128332 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (ROL16rCL_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 45842 | /* 128332 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45843 | /* 128336 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 45844 | /* 128342 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45845 | /* 128346 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16rCL_ND), |
| 45846 | /* 128349 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45847 | /* 128351 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45848 | /* 128353 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45849 | /* 128356 */ GIR_RootConstrainSelectedInstOperands, |
| 45850 | /* 128357 */ // GIR_Coverage, 778, |
| 45851 | /* 128357 */ GIR_EraseRootFromParent_Done, |
| 45852 | /* 128358 */ // Label 2803: @128358 |
| 45853 | /* 128358 */ GIM_Reject, |
| 45854 | /* 128359 */ // Label 2794: @128359 |
| 45855 | /* 128359 */ GIM_Reject, |
| 45856 | /* 128360 */ // Label 2773: @128360 |
| 45857 | /* 128360 */ GIM_Try, /*On fail goto*//*Label 2804*/ GIMT_Encode4(128826), |
| 45858 | /* 128365 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 45859 | /* 128368 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 45860 | /* 128371 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 45861 | /* 128375 */ GIM_Try, /*On fail goto*//*Label 2805*/ GIMT_Encode4(128434), // Rule ID 17622 // |
| 45862 | /* 128380 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45863 | /* 128383 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45864 | /* 128387 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45865 | /* 128391 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45866 | /* 128394 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45867 | /* 128398 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 45868 | /* 128402 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 31, |
| 45869 | /* 128406 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45870 | /* 128408 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45871 | /* 128415 */ // (rotl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, 31:{ *:[i8] }) => (ROR32m1_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 45872 | /* 128415 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32m1_ND), |
| 45873 | /* 128418 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45874 | /* 128420 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 45875 | /* 128424 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45876 | /* 128427 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45877 | /* 128432 */ GIR_RootConstrainSelectedInstOperands, |
| 45878 | /* 128433 */ // GIR_Coverage, 17622, |
| 45879 | /* 128433 */ GIR_EraseRootFromParent_Done, |
| 45880 | /* 128434 */ // Label 2805: @128434 |
| 45881 | /* 128434 */ GIM_Try, /*On fail goto*//*Label 2806*/ GIMT_Encode4(128501), // Rule ID 771 // |
| 45882 | /* 128439 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45883 | /* 128442 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45884 | /* 128446 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45885 | /* 128450 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45886 | /* 128453 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45887 | /* 128457 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 45888 | /* 128461 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 45889 | /* 128465 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45890 | /* 128469 */ // MIs[2] Operand 1 |
| 45891 | /* 128469 */ // No operand predicates |
| 45892 | /* 128469 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 45893 | /* 128471 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45894 | /* 128478 */ // (rotl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$src2) => (ROL32mi_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45895 | /* 128478 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32mi_ND), |
| 45896 | /* 128481 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45897 | /* 128483 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 45898 | /* 128487 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 45899 | /* 128490 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45900 | /* 128493 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 45901 | /* 128499 */ GIR_RootConstrainSelectedInstOperands, |
| 45902 | /* 128500 */ // GIR_Coverage, 771, |
| 45903 | /* 128500 */ GIR_EraseRootFromParent_Done, |
| 45904 | /* 128501 */ // Label 2806: @128501 |
| 45905 | /* 128501 */ GIM_Try, /*On fail goto*//*Label 2807*/ GIMT_Encode4(128574), // Rule ID 787 // |
| 45906 | /* 128506 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45907 | /* 128509 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45908 | /* 128513 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45909 | /* 128517 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45910 | /* 128520 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45911 | /* 128524 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 45912 | /* 128528 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45913 | /* 128532 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45914 | /* 128534 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45915 | /* 128541 */ // (rotl:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, CL:{ *:[i8] }) => (ROL32mCL_ND:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 45916 | /* 128541 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45917 | /* 128545 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 45918 | /* 128551 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45919 | /* 128555 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32mCL_ND), |
| 45920 | /* 128558 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45921 | /* 128560 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 45922 | /* 128564 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45923 | /* 128567 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45924 | /* 128572 */ GIR_RootConstrainSelectedInstOperands, |
| 45925 | /* 128573 */ // GIR_Coverage, 787, |
| 45926 | /* 128573 */ GIR_EraseRootFromParent_Done, |
| 45927 | /* 128574 */ // Label 2807: @128574 |
| 45928 | /* 128574 */ GIM_Try, /*On fail goto*//*Label 2808*/ GIMT_Encode4(128611), // Rule ID 869 // |
| 45929 | /* 128579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFastSHLDRotate), |
| 45930 | /* 128582 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 45931 | /* 128586 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45932 | /* 128590 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45933 | /* 128594 */ // MIs[1] Operand 1 |
| 45934 | /* 128594 */ // No operand predicates |
| 45935 | /* 128594 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45936 | /* 128596 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$shamt) => (SHLDROT32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$shamt) |
| 45937 | /* 128596 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLDROT32ri), |
| 45938 | /* 128599 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45939 | /* 128601 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45940 | /* 128603 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 45941 | /* 128606 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45942 | /* 128609 */ GIR_RootConstrainSelectedInstOperands, |
| 45943 | /* 128610 */ // GIR_Coverage, 869, |
| 45944 | /* 128610 */ GIR_EraseRootFromParent_Done, |
| 45945 | /* 128611 */ // Label 2808: @128611 |
| 45946 | /* 128611 */ GIM_Try, /*On fail goto*//*Label 2809*/ GIMT_Encode4(128639), // Rule ID 17598 // |
| 45947 | /* 128616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45948 | /* 128619 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 45949 | /* 128623 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 31, |
| 45950 | /* 128627 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, 31:{ *:[i8] }) => (ROR32r1:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 45951 | /* 128627 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32r1), |
| 45952 | /* 128630 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45953 | /* 128632 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45954 | /* 128634 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45955 | /* 128637 */ GIR_RootConstrainSelectedInstOperands, |
| 45956 | /* 128638 */ // GIR_Coverage, 17598, |
| 45957 | /* 128638 */ GIR_EraseRootFromParent_Done, |
| 45958 | /* 128639 */ // Label 2809: @128639 |
| 45959 | /* 128639 */ GIM_Try, /*On fail goto*//*Label 2810*/ GIMT_Encode4(128667), // Rule ID 17606 // |
| 45960 | /* 128644 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45961 | /* 128647 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 45962 | /* 128651 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 31, |
| 45963 | /* 128655 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, 31:{ *:[i8] }) => (ROR32r1_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 45964 | /* 128655 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32r1_ND), |
| 45965 | /* 128658 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45966 | /* 128660 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45967 | /* 128662 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45968 | /* 128665 */ GIR_RootConstrainSelectedInstOperands, |
| 45969 | /* 128666 */ // GIR_Coverage, 17606, |
| 45970 | /* 128666 */ GIR_EraseRootFromParent_Done, |
| 45971 | /* 128667 */ // Label 2810: @128667 |
| 45972 | /* 128667 */ GIM_Try, /*On fail goto*//*Label 2811*/ GIMT_Encode4(128704), // Rule ID 759 // |
| 45973 | /* 128672 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45974 | /* 128675 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 45975 | /* 128679 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45976 | /* 128683 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45977 | /* 128687 */ // MIs[1] Operand 1 |
| 45978 | /* 128687 */ // No operand predicates |
| 45979 | /* 128687 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45980 | /* 128689 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45981 | /* 128689 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32ri), |
| 45982 | /* 128692 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45983 | /* 128694 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45984 | /* 128696 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45985 | /* 128699 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45986 | /* 128702 */ GIR_RootConstrainSelectedInstOperands, |
| 45987 | /* 128703 */ // GIR_Coverage, 759, |
| 45988 | /* 128703 */ GIR_EraseRootFromParent_Done, |
| 45989 | /* 128704 */ // Label 2811: @128704 |
| 45990 | /* 128704 */ GIM_Try, /*On fail goto*//*Label 2812*/ GIMT_Encode4(128741), // Rule ID 763 // |
| 45991 | /* 128709 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45992 | /* 128712 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 45993 | /* 128716 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45994 | /* 128720 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45995 | /* 128724 */ // MIs[1] Operand 1 |
| 45996 | /* 128724 */ // No operand predicates |
| 45997 | /* 128724 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45998 | /* 128726 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45999 | /* 128726 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32ri_ND), |
| 46000 | /* 128729 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46001 | /* 128731 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46002 | /* 128733 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 46003 | /* 128736 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46004 | /* 128739 */ GIR_RootConstrainSelectedInstOperands, |
| 46005 | /* 128740 */ // GIR_Coverage, 763, |
| 46006 | /* 128740 */ GIR_EraseRootFromParent_Done, |
| 46007 | /* 128741 */ // Label 2812: @128741 |
| 46008 | /* 128741 */ GIM_Try, /*On fail goto*//*Label 2813*/ GIMT_Encode4(128783), // Rule ID 775 // |
| 46009 | /* 128746 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 46010 | /* 128749 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 46011 | /* 128753 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 46012 | /* 128757 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (ROL32rCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 46013 | /* 128757 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46014 | /* 128761 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 46015 | /* 128767 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 46016 | /* 128771 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32rCL), |
| 46017 | /* 128774 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46018 | /* 128776 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46019 | /* 128778 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46020 | /* 128781 */ GIR_RootConstrainSelectedInstOperands, |
| 46021 | /* 128782 */ // GIR_Coverage, 775, |
| 46022 | /* 128782 */ GIR_EraseRootFromParent_Done, |
| 46023 | /* 128783 */ // Label 2813: @128783 |
| 46024 | /* 128783 */ GIM_Try, /*On fail goto*//*Label 2814*/ GIMT_Encode4(128825), // Rule ID 779 // |
| 46025 | /* 128788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 46026 | /* 128791 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 46027 | /* 128795 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 46028 | /* 128799 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (ROL32rCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 46029 | /* 128799 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46030 | /* 128803 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 46031 | /* 128809 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 46032 | /* 128813 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32rCL_ND), |
| 46033 | /* 128816 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46034 | /* 128818 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46035 | /* 128820 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46036 | /* 128823 */ GIR_RootConstrainSelectedInstOperands, |
| 46037 | /* 128824 */ // GIR_Coverage, 779, |
| 46038 | /* 128824 */ GIR_EraseRootFromParent_Done, |
| 46039 | /* 128825 */ // Label 2814: @128825 |
| 46040 | /* 128825 */ GIM_Reject, |
| 46041 | /* 128826 */ // Label 2804: @128826 |
| 46042 | /* 128826 */ GIM_Reject, |
| 46043 | /* 128827 */ // Label 2774: @128827 |
| 46044 | /* 128827 */ GIM_Try, /*On fail goto*//*Label 2815*/ GIMT_Encode4(129293), |
| 46045 | /* 128832 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 46046 | /* 128835 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 46047 | /* 128838 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 46048 | /* 128842 */ GIM_Try, /*On fail goto*//*Label 2816*/ GIMT_Encode4(128901), // Rule ID 17623 // |
| 46049 | /* 128847 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 46050 | /* 128850 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 46051 | /* 128854 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46052 | /* 128858 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46053 | /* 128861 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46054 | /* 128865 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46055 | /* 128869 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 63, |
| 46056 | /* 128873 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46057 | /* 128875 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46058 | /* 128882 */ // (rotl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, 63:{ *:[i8] }) => (ROR64m1_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 46059 | /* 128882 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64m1_ND), |
| 46060 | /* 128885 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46061 | /* 128887 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 46062 | /* 128891 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46063 | /* 128894 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46064 | /* 128899 */ GIR_RootConstrainSelectedInstOperands, |
| 46065 | /* 128900 */ // GIR_Coverage, 17623, |
| 46066 | /* 128900 */ GIR_EraseRootFromParent_Done, |
| 46067 | /* 128901 */ // Label 2816: @128901 |
| 46068 | /* 128901 */ GIM_Try, /*On fail goto*//*Label 2817*/ GIMT_Encode4(128968), // Rule ID 772 // |
| 46069 | /* 128906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 46070 | /* 128909 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 46071 | /* 128913 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46072 | /* 128917 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46073 | /* 128920 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46074 | /* 128924 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46075 | /* 128928 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 46076 | /* 128932 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 46077 | /* 128936 */ // MIs[2] Operand 1 |
| 46078 | /* 128936 */ // No operand predicates |
| 46079 | /* 128936 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 46080 | /* 128938 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46081 | /* 128945 */ // (rotl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$src2) => (ROL64mi_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i8] }):$src2) |
| 46082 | /* 128945 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64mi_ND), |
| 46083 | /* 128948 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46084 | /* 128950 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 46085 | /* 128954 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 46086 | /* 128957 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46087 | /* 128960 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 46088 | /* 128966 */ GIR_RootConstrainSelectedInstOperands, |
| 46089 | /* 128967 */ // GIR_Coverage, 772, |
| 46090 | /* 128967 */ GIR_EraseRootFromParent_Done, |
| 46091 | /* 128968 */ // Label 2817: @128968 |
| 46092 | /* 128968 */ GIM_Try, /*On fail goto*//*Label 2818*/ GIMT_Encode4(129041), // Rule ID 788 // |
| 46093 | /* 128973 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 46094 | /* 128976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 46095 | /* 128980 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46096 | /* 128984 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46097 | /* 128987 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46098 | /* 128991 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46099 | /* 128995 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 46100 | /* 128999 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46101 | /* 129001 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46102 | /* 129008 */ // (rotl:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, CL:{ *:[i8] }) => (ROL64mCL_ND:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 46103 | /* 129008 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46104 | /* 129012 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 46105 | /* 129018 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 46106 | /* 129022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64mCL_ND), |
| 46107 | /* 129025 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46108 | /* 129027 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 46109 | /* 129031 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46110 | /* 129034 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46111 | /* 129039 */ GIR_RootConstrainSelectedInstOperands, |
| 46112 | /* 129040 */ // GIR_Coverage, 788, |
| 46113 | /* 129040 */ GIR_EraseRootFromParent_Done, |
| 46114 | /* 129041 */ // Label 2818: @129041 |
| 46115 | /* 129041 */ GIM_Try, /*On fail goto*//*Label 2819*/ GIMT_Encode4(129078), // Rule ID 870 // |
| 46116 | /* 129046 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFastSHLDRotate), |
| 46117 | /* 129049 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 46118 | /* 129053 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46119 | /* 129057 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 46120 | /* 129061 */ // MIs[1] Operand 1 |
| 46121 | /* 129061 */ // No operand predicates |
| 46122 | /* 129061 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46123 | /* 129063 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$shamt) => (SHLDROT64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$shamt) |
| 46124 | /* 129063 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLDROT64ri), |
| 46125 | /* 129066 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46126 | /* 129068 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46127 | /* 129070 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 46128 | /* 129073 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46129 | /* 129076 */ GIR_RootConstrainSelectedInstOperands, |
| 46130 | /* 129077 */ // GIR_Coverage, 870, |
| 46131 | /* 129077 */ GIR_EraseRootFromParent_Done, |
| 46132 | /* 129078 */ // Label 2819: @129078 |
| 46133 | /* 129078 */ GIM_Try, /*On fail goto*//*Label 2820*/ GIMT_Encode4(129106), // Rule ID 17599 // |
| 46134 | /* 129083 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 46135 | /* 129086 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 46136 | /* 129090 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 63, |
| 46137 | /* 129094 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, 63:{ *:[i8] }) => (ROR64r1:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 46138 | /* 129094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64r1), |
| 46139 | /* 129097 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46140 | /* 129099 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46141 | /* 129101 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46142 | /* 129104 */ GIR_RootConstrainSelectedInstOperands, |
| 46143 | /* 129105 */ // GIR_Coverage, 17599, |
| 46144 | /* 129105 */ GIR_EraseRootFromParent_Done, |
| 46145 | /* 129106 */ // Label 2820: @129106 |
| 46146 | /* 129106 */ GIM_Try, /*On fail goto*//*Label 2821*/ GIMT_Encode4(129134), // Rule ID 17607 // |
| 46147 | /* 129111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 46148 | /* 129114 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 46149 | /* 129118 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 63, |
| 46150 | /* 129122 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, 63:{ *:[i8] }) => (ROR64r1_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 46151 | /* 129122 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64r1_ND), |
| 46152 | /* 129125 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46153 | /* 129127 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46154 | /* 129129 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46155 | /* 129132 */ GIR_RootConstrainSelectedInstOperands, |
| 46156 | /* 129133 */ // GIR_Coverage, 17607, |
| 46157 | /* 129133 */ GIR_EraseRootFromParent_Done, |
| 46158 | /* 129134 */ // Label 2821: @129134 |
| 46159 | /* 129134 */ GIM_Try, /*On fail goto*//*Label 2822*/ GIMT_Encode4(129171), // Rule ID 760 // |
| 46160 | /* 129139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 46161 | /* 129142 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 46162 | /* 129146 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46163 | /* 129150 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 46164 | /* 129154 */ // MIs[1] Operand 1 |
| 46165 | /* 129154 */ // No operand predicates |
| 46166 | /* 129154 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46167 | /* 129156 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 46168 | /* 129156 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64ri), |
| 46169 | /* 129159 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46170 | /* 129161 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46171 | /* 129163 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 46172 | /* 129166 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46173 | /* 129169 */ GIR_RootConstrainSelectedInstOperands, |
| 46174 | /* 129170 */ // GIR_Coverage, 760, |
| 46175 | /* 129170 */ GIR_EraseRootFromParent_Done, |
| 46176 | /* 129171 */ // Label 2822: @129171 |
| 46177 | /* 129171 */ GIM_Try, /*On fail goto*//*Label 2823*/ GIMT_Encode4(129208), // Rule ID 764 // |
| 46178 | /* 129176 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 46179 | /* 129179 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 46180 | /* 129183 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46181 | /* 129187 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 46182 | /* 129191 */ // MIs[1] Operand 1 |
| 46183 | /* 129191 */ // No operand predicates |
| 46184 | /* 129191 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46185 | /* 129193 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL64ri_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 46186 | /* 129193 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64ri_ND), |
| 46187 | /* 129196 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46188 | /* 129198 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46189 | /* 129200 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 46190 | /* 129203 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46191 | /* 129206 */ GIR_RootConstrainSelectedInstOperands, |
| 46192 | /* 129207 */ // GIR_Coverage, 764, |
| 46193 | /* 129207 */ GIR_EraseRootFromParent_Done, |
| 46194 | /* 129208 */ // Label 2823: @129208 |
| 46195 | /* 129208 */ GIM_Try, /*On fail goto*//*Label 2824*/ GIMT_Encode4(129250), // Rule ID 776 // |
| 46196 | /* 129213 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 46197 | /* 129216 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 46198 | /* 129220 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 46199 | /* 129224 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (ROL64rCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 46200 | /* 129224 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46201 | /* 129228 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 46202 | /* 129234 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 46203 | /* 129238 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64rCL), |
| 46204 | /* 129241 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46205 | /* 129243 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46206 | /* 129245 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46207 | /* 129248 */ GIR_RootConstrainSelectedInstOperands, |
| 46208 | /* 129249 */ // GIR_Coverage, 776, |
| 46209 | /* 129249 */ GIR_EraseRootFromParent_Done, |
| 46210 | /* 129250 */ // Label 2824: @129250 |
| 46211 | /* 129250 */ GIM_Try, /*On fail goto*//*Label 2825*/ GIMT_Encode4(129292), // Rule ID 780 // |
| 46212 | /* 129255 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 46213 | /* 129258 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 46214 | /* 129262 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 46215 | /* 129266 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (ROL64rCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 46216 | /* 129266 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46217 | /* 129270 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(RegState::Define), |
| 46218 | /* 129276 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 46219 | /* 129280 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64rCL_ND), |
| 46220 | /* 129283 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46221 | /* 129285 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46222 | /* 129287 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 46223 | /* 129290 */ GIR_RootConstrainSelectedInstOperands, |
| 46224 | /* 129291 */ // GIR_Coverage, 780, |
| 46225 | /* 129291 */ GIR_EraseRootFromParent_Done, |
| 46226 | /* 129292 */ // Label 2825: @129292 |
| 46227 | /* 129292 */ GIM_Reject, |
| 46228 | /* 129293 */ // Label 2815: @129293 |
| 46229 | /* 129293 */ GIM_Reject, |
| 46230 | /* 129294 */ // Label 2775: @129294 |
| 46231 | /* 129294 */ GIM_Try, /*On fail goto*//*Label 2826*/ GIMT_Encode4(129711), |
| 46232 | /* 129299 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 46233 | /* 129302 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 46234 | /* 129305 */ GIM_Try, /*On fail goto*//*Label 2827*/ GIMT_Encode4(129367), // Rule ID 1583 // |
| 46235 | /* 129310 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46236 | /* 129313 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46237 | /* 129317 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 46238 | /* 129321 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46239 | /* 129325 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46240 | /* 129328 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46241 | /* 129332 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46242 | /* 129336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46243 | /* 129340 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46244 | /* 129342 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46245 | /* 129349 */ // (rotl:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src2) => (VPROTQmr:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 46246 | /* 129349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTQmr), |
| 46247 | /* 129352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46248 | /* 129354 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 46249 | /* 129358 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 46250 | /* 129360 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46251 | /* 129365 */ GIR_RootConstrainSelectedInstOperands, |
| 46252 | /* 129366 */ // GIR_Coverage, 1583, |
| 46253 | /* 129366 */ GIR_EraseRootFromParent_Done, |
| 46254 | /* 129367 */ // Label 2827: @129367 |
| 46255 | /* 129367 */ GIM_Try, /*On fail goto*//*Label 2828*/ GIMT_Encode4(129429), // Rule ID 1582 // |
| 46256 | /* 129372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46257 | /* 129375 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46258 | /* 129379 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46259 | /* 129383 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46260 | /* 129387 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46261 | /* 129391 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46262 | /* 129394 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46263 | /* 129398 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46264 | /* 129402 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46265 | /* 129404 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46266 | /* 129411 */ // (rotl:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROTQrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46267 | /* 129411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTQrm), |
| 46268 | /* 129414 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46269 | /* 129416 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46270 | /* 129418 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46271 | /* 129422 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46272 | /* 129427 */ GIR_RootConstrainSelectedInstOperands, |
| 46273 | /* 129428 */ // GIR_Coverage, 1582, |
| 46274 | /* 129428 */ GIR_EraseRootFromParent_Done, |
| 46275 | /* 129429 */ // Label 2828: @129429 |
| 46276 | /* 129429 */ GIM_Try, /*On fail goto*//*Label 2829*/ GIMT_Encode4(129491), // Rule ID 8059 // |
| 46277 | /* 129434 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46278 | /* 129437 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46279 | /* 129441 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46280 | /* 129445 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46281 | /* 129449 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46282 | /* 129453 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46283 | /* 129456 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46284 | /* 129460 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46285 | /* 129464 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46286 | /* 129466 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46287 | /* 129473 */ // (rotl:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46288 | /* 129473 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVQZ128rm), |
| 46289 | /* 129476 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46290 | /* 129478 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46291 | /* 129480 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46292 | /* 129484 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46293 | /* 129489 */ GIR_RootConstrainSelectedInstOperands, |
| 46294 | /* 129490 */ // GIR_Coverage, 8059, |
| 46295 | /* 129490 */ GIR_EraseRootFromParent_Done, |
| 46296 | /* 129491 */ // Label 2829: @129491 |
| 46297 | /* 129491 */ GIM_Try, /*On fail goto*//*Label 2830*/ GIMT_Encode4(129518), // Rule ID 1581 // |
| 46298 | /* 129496 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46299 | /* 129499 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46300 | /* 129503 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46301 | /* 129507 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46302 | /* 129511 */ // (rotl:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPROTQrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 46303 | /* 129511 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROTQrr), |
| 46304 | /* 129516 */ GIR_RootConstrainSelectedInstOperands, |
| 46305 | /* 129517 */ // GIR_Coverage, 1581, |
| 46306 | /* 129517 */ GIR_Done, |
| 46307 | /* 129518 */ // Label 2830: @129518 |
| 46308 | /* 129518 */ GIM_Try, /*On fail goto*//*Label 2831*/ GIMT_Encode4(129545), // Rule ID 8056 // |
| 46309 | /* 129523 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46310 | /* 129526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46311 | /* 129530 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46312 | /* 129534 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46313 | /* 129538 */ // (rotl:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPROLVQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 46314 | /* 129538 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVQZ128rr), |
| 46315 | /* 129543 */ GIR_RootConstrainSelectedInstOperands, |
| 46316 | /* 129544 */ // GIR_Coverage, 8056, |
| 46317 | /* 129544 */ GIR_Done, |
| 46318 | /* 129545 */ // Label 2831: @129545 |
| 46319 | /* 129545 */ GIM_Try, /*On fail goto*//*Label 2832*/ GIMT_Encode4(129710), // Rule ID 20796 // |
| 46320 | /* 129550 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 46321 | /* 129553 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 46322 | /* 129557 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46323 | /* 129561 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46324 | /* 129565 */ // (rotl:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPROLVQZrr:{ *:[v8i64] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 46325 | /* 129565 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 46326 | /* 129568 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46327 | /* 129572 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46328 | /* 129577 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 46329 | /* 129579 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 46330 | /* 129582 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46331 | /* 129586 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46332 | /* 129591 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 46333 | /* 129594 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 46334 | /* 129598 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 46335 | /* 129601 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46336 | /* 129606 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46337 | /* 129611 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46338 | /* 129616 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 46339 | /* 129619 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46340 | /* 129623 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46341 | /* 129628 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46342 | /* 129630 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 46343 | /* 129633 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46344 | /* 129637 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46345 | /* 129642 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46346 | /* 129645 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 46347 | /* 129649 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 46348 | /* 129652 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46349 | /* 129657 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46350 | /* 129662 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46351 | /* 129667 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 46352 | /* 129670 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPROLVQZrr), |
| 46353 | /* 129674 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46354 | /* 129679 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46355 | /* 129682 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 46356 | /* 129685 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46357 | /* 129687 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46358 | /* 129690 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46359 | /* 129692 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 46360 | /* 129699 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 46361 | /* 129704 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46362 | /* 129709 */ // GIR_Coverage, 20796, |
| 46363 | /* 129709 */ GIR_EraseRootFromParent_Done, |
| 46364 | /* 129710 */ // Label 2832: @129710 |
| 46365 | /* 129710 */ GIM_Reject, |
| 46366 | /* 129711 */ // Label 2826: @129711 |
| 46367 | /* 129711 */ GIM_Reject, |
| 46368 | /* 129712 */ // Label 2776: @129712 |
| 46369 | /* 129712 */ GIM_Try, /*On fail goto*//*Label 2833*/ GIMT_Encode4(130129), |
| 46370 | /* 129717 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 46371 | /* 129720 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 46372 | /* 129723 */ GIM_Try, /*On fail goto*//*Label 2834*/ GIMT_Encode4(129785), // Rule ID 1580 // |
| 46373 | /* 129728 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46374 | /* 129731 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46375 | /* 129735 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 46376 | /* 129739 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46377 | /* 129743 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46378 | /* 129746 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46379 | /* 129750 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46380 | /* 129754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46381 | /* 129758 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46382 | /* 129760 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46383 | /* 129767 */ // (rotl:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src2) => (VPROTDmr:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 46384 | /* 129767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTDmr), |
| 46385 | /* 129770 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46386 | /* 129772 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 46387 | /* 129776 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 46388 | /* 129778 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46389 | /* 129783 */ GIR_RootConstrainSelectedInstOperands, |
| 46390 | /* 129784 */ // GIR_Coverage, 1580, |
| 46391 | /* 129784 */ GIR_EraseRootFromParent_Done, |
| 46392 | /* 129785 */ // Label 2834: @129785 |
| 46393 | /* 129785 */ GIM_Try, /*On fail goto*//*Label 2835*/ GIMT_Encode4(129847), // Rule ID 1579 // |
| 46394 | /* 129790 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46395 | /* 129793 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46396 | /* 129797 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46397 | /* 129801 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46398 | /* 129805 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46399 | /* 129809 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46400 | /* 129812 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46401 | /* 129816 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46402 | /* 129820 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46403 | /* 129822 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46404 | /* 129829 */ // (rotl:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROTDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46405 | /* 129829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTDrm), |
| 46406 | /* 129832 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46407 | /* 129834 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46408 | /* 129836 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46409 | /* 129840 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46410 | /* 129845 */ GIR_RootConstrainSelectedInstOperands, |
| 46411 | /* 129846 */ // GIR_Coverage, 1579, |
| 46412 | /* 129846 */ GIR_EraseRootFromParent_Done, |
| 46413 | /* 129847 */ // Label 2835: @129847 |
| 46414 | /* 129847 */ GIM_Try, /*On fail goto*//*Label 2836*/ GIMT_Encode4(129909), // Rule ID 8032 // |
| 46415 | /* 129852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46416 | /* 129855 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46417 | /* 129859 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46418 | /* 129863 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46419 | /* 129867 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46420 | /* 129871 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46421 | /* 129874 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46422 | /* 129878 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46423 | /* 129882 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46424 | /* 129884 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46425 | /* 129891 */ // (rotl:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46426 | /* 129891 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVDZ128rm), |
| 46427 | /* 129894 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46428 | /* 129896 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46429 | /* 129898 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46430 | /* 129902 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46431 | /* 129907 */ GIR_RootConstrainSelectedInstOperands, |
| 46432 | /* 129908 */ // GIR_Coverage, 8032, |
| 46433 | /* 129908 */ GIR_EraseRootFromParent_Done, |
| 46434 | /* 129909 */ // Label 2836: @129909 |
| 46435 | /* 129909 */ GIM_Try, /*On fail goto*//*Label 2837*/ GIMT_Encode4(129936), // Rule ID 1578 // |
| 46436 | /* 129914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46437 | /* 129917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46438 | /* 129921 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46439 | /* 129925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46440 | /* 129929 */ // (rotl:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPROTDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 46441 | /* 129929 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROTDrr), |
| 46442 | /* 129934 */ GIR_RootConstrainSelectedInstOperands, |
| 46443 | /* 129935 */ // GIR_Coverage, 1578, |
| 46444 | /* 129935 */ GIR_Done, |
| 46445 | /* 129936 */ // Label 2837: @129936 |
| 46446 | /* 129936 */ GIM_Try, /*On fail goto*//*Label 2838*/ GIMT_Encode4(129963), // Rule ID 8029 // |
| 46447 | /* 129941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46448 | /* 129944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46449 | /* 129948 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46450 | /* 129952 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46451 | /* 129956 */ // (rotl:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPROLVDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 46452 | /* 129956 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVDZ128rr), |
| 46453 | /* 129961 */ GIR_RootConstrainSelectedInstOperands, |
| 46454 | /* 129962 */ // GIR_Coverage, 8029, |
| 46455 | /* 129962 */ GIR_Done, |
| 46456 | /* 129963 */ // Label 2838: @129963 |
| 46457 | /* 129963 */ GIM_Try, /*On fail goto*//*Label 2839*/ GIMT_Encode4(130128), // Rule ID 20798 // |
| 46458 | /* 129968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 46459 | /* 129971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 46460 | /* 129975 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46461 | /* 129979 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46462 | /* 129983 */ // (rotl:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (EXTRACT_SUBREG:{ *:[v4i32] } (VPROLVDZrr:{ *:[v16i32] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 46463 | /* 129983 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 46464 | /* 129986 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46465 | /* 129990 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46466 | /* 129995 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 46467 | /* 129997 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 46468 | /* 130000 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46469 | /* 130004 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46470 | /* 130009 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 46471 | /* 130012 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 46472 | /* 130016 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 46473 | /* 130019 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46474 | /* 130024 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46475 | /* 130029 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46476 | /* 130034 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 46477 | /* 130037 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46478 | /* 130041 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46479 | /* 130046 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46480 | /* 130048 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 46481 | /* 130051 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46482 | /* 130055 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46483 | /* 130060 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46484 | /* 130063 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 46485 | /* 130067 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 46486 | /* 130070 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46487 | /* 130075 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46488 | /* 130080 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46489 | /* 130085 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 46490 | /* 130088 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPROLVDZrr), |
| 46491 | /* 130092 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46492 | /* 130097 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46493 | /* 130100 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 46494 | /* 130103 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46495 | /* 130105 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46496 | /* 130108 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46497 | /* 130110 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 46498 | /* 130117 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 46499 | /* 130122 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46500 | /* 130127 */ // GIR_Coverage, 20798, |
| 46501 | /* 130127 */ GIR_EraseRootFromParent_Done, |
| 46502 | /* 130128 */ // Label 2839: @130128 |
| 46503 | /* 130128 */ GIM_Reject, |
| 46504 | /* 130129 */ // Label 2833: @130129 |
| 46505 | /* 130129 */ GIM_Reject, |
| 46506 | /* 130130 */ // Label 2777: @130130 |
| 46507 | /* 130130 */ GIM_Try, /*On fail goto*//*Label 2840*/ GIMT_Encode4(130380), |
| 46508 | /* 130135 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 46509 | /* 130138 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 46510 | /* 130141 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46511 | /* 130145 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46512 | /* 130149 */ GIM_Try, /*On fail goto*//*Label 2841*/ GIMT_Encode4(130203), // Rule ID 8050 // |
| 46513 | /* 130154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46514 | /* 130157 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46515 | /* 130161 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46516 | /* 130165 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46517 | /* 130168 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46518 | /* 130172 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46519 | /* 130176 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46520 | /* 130178 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46521 | /* 130185 */ // (rotl:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46522 | /* 130185 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVQZ256rm), |
| 46523 | /* 130188 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46524 | /* 130190 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46525 | /* 130192 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46526 | /* 130196 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46527 | /* 130201 */ GIR_RootConstrainSelectedInstOperands, |
| 46528 | /* 130202 */ // GIR_Coverage, 8050, |
| 46529 | /* 130202 */ GIR_EraseRootFromParent_Done, |
| 46530 | /* 130203 */ // Label 2841: @130203 |
| 46531 | /* 130203 */ GIM_Try, /*On fail goto*//*Label 2842*/ GIMT_Encode4(130222), // Rule ID 8047 // |
| 46532 | /* 130208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46533 | /* 130211 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46534 | /* 130215 */ // (rotl:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPROLVQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 46535 | /* 130215 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVQZ256rr), |
| 46536 | /* 130220 */ GIR_RootConstrainSelectedInstOperands, |
| 46537 | /* 130221 */ // GIR_Coverage, 8047, |
| 46538 | /* 130221 */ GIR_Done, |
| 46539 | /* 130222 */ // Label 2842: @130222 |
| 46540 | /* 130222 */ GIM_Try, /*On fail goto*//*Label 2843*/ GIMT_Encode4(130379), // Rule ID 20797 // |
| 46541 | /* 130227 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 46542 | /* 130230 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46543 | /* 130234 */ // (rotl:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPROLVQZrr:{ *:[v8i64] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 46544 | /* 130234 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 46545 | /* 130237 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46546 | /* 130241 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46547 | /* 130246 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 46548 | /* 130248 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 46549 | /* 130251 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46550 | /* 130255 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46551 | /* 130260 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 46552 | /* 130263 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 46553 | /* 130267 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 46554 | /* 130270 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46555 | /* 130275 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46556 | /* 130280 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46557 | /* 130285 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 46558 | /* 130288 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46559 | /* 130292 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46560 | /* 130297 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46561 | /* 130299 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 46562 | /* 130302 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46563 | /* 130306 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46564 | /* 130311 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46565 | /* 130314 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 46566 | /* 130318 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 46567 | /* 130321 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46568 | /* 130326 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46569 | /* 130331 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46570 | /* 130336 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 46571 | /* 130339 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPROLVQZrr), |
| 46572 | /* 130343 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46573 | /* 130348 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46574 | /* 130351 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 46575 | /* 130354 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46576 | /* 130356 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46577 | /* 130359 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46578 | /* 130361 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 46579 | /* 130368 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 46580 | /* 130373 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46581 | /* 130378 */ // GIR_Coverage, 20797, |
| 46582 | /* 130378 */ GIR_EraseRootFromParent_Done, |
| 46583 | /* 130379 */ // Label 2843: @130379 |
| 46584 | /* 130379 */ GIM_Reject, |
| 46585 | /* 130380 */ // Label 2840: @130380 |
| 46586 | /* 130380 */ GIM_Reject, |
| 46587 | /* 130381 */ // Label 2778: @130381 |
| 46588 | /* 130381 */ GIM_Try, /*On fail goto*//*Label 2844*/ GIMT_Encode4(130536), |
| 46589 | /* 130386 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 46590 | /* 130389 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 46591 | /* 130392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46592 | /* 130396 */ GIM_Try, /*On fail goto*//*Label 2845*/ GIMT_Encode4(130454), // Rule ID 1586 // |
| 46593 | /* 130401 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46594 | /* 130404 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 46595 | /* 130408 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46596 | /* 130412 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46597 | /* 130415 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46598 | /* 130419 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46599 | /* 130423 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46600 | /* 130427 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46601 | /* 130429 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46602 | /* 130436 */ // (rotl:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src2) => (VPROTWmr:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 46603 | /* 130436 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTWmr), |
| 46604 | /* 130439 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46605 | /* 130441 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 46606 | /* 130445 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 46607 | /* 130447 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46608 | /* 130452 */ GIR_RootConstrainSelectedInstOperands, |
| 46609 | /* 130453 */ // GIR_Coverage, 1586, |
| 46610 | /* 130453 */ GIR_EraseRootFromParent_Done, |
| 46611 | /* 130454 */ // Label 2845: @130454 |
| 46612 | /* 130454 */ GIM_Try, /*On fail goto*//*Label 2846*/ GIMT_Encode4(130512), // Rule ID 1585 // |
| 46613 | /* 130459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46614 | /* 130462 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46615 | /* 130466 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46616 | /* 130470 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46617 | /* 130474 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46618 | /* 130477 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46619 | /* 130481 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46620 | /* 130485 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46621 | /* 130487 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46622 | /* 130494 */ // (rotl:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROTWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46623 | /* 130494 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTWrm), |
| 46624 | /* 130497 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46625 | /* 130499 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46626 | /* 130501 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46627 | /* 130505 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46628 | /* 130510 */ GIR_RootConstrainSelectedInstOperands, |
| 46629 | /* 130511 */ // GIR_Coverage, 1585, |
| 46630 | /* 130511 */ GIR_EraseRootFromParent_Done, |
| 46631 | /* 130512 */ // Label 2846: @130512 |
| 46632 | /* 130512 */ GIM_Try, /*On fail goto*//*Label 2847*/ GIMT_Encode4(130535), // Rule ID 1584 // |
| 46633 | /* 130517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46634 | /* 130520 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46635 | /* 130524 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46636 | /* 130528 */ // (rotl:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPROTWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 46637 | /* 130528 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROTWrr), |
| 46638 | /* 130533 */ GIR_RootConstrainSelectedInstOperands, |
| 46639 | /* 130534 */ // GIR_Coverage, 1584, |
| 46640 | /* 130534 */ GIR_Done, |
| 46641 | /* 130535 */ // Label 2847: @130535 |
| 46642 | /* 130535 */ GIM_Reject, |
| 46643 | /* 130536 */ // Label 2844: @130536 |
| 46644 | /* 130536 */ GIM_Reject, |
| 46645 | /* 130537 */ // Label 2779: @130537 |
| 46646 | /* 130537 */ GIM_Try, /*On fail goto*//*Label 2848*/ GIMT_Encode4(130787), |
| 46647 | /* 130542 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 46648 | /* 130545 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 46649 | /* 130548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46650 | /* 130552 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46651 | /* 130556 */ GIM_Try, /*On fail goto*//*Label 2849*/ GIMT_Encode4(130610), // Rule ID 8023 // |
| 46652 | /* 130561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46653 | /* 130564 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46654 | /* 130568 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46655 | /* 130572 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46656 | /* 130575 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46657 | /* 130579 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46658 | /* 130583 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46659 | /* 130585 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46660 | /* 130592 */ // (rotl:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46661 | /* 130592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVDZ256rm), |
| 46662 | /* 130595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46663 | /* 130597 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46664 | /* 130599 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46665 | /* 130603 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46666 | /* 130608 */ GIR_RootConstrainSelectedInstOperands, |
| 46667 | /* 130609 */ // GIR_Coverage, 8023, |
| 46668 | /* 130609 */ GIR_EraseRootFromParent_Done, |
| 46669 | /* 130610 */ // Label 2849: @130610 |
| 46670 | /* 130610 */ GIM_Try, /*On fail goto*//*Label 2850*/ GIMT_Encode4(130629), // Rule ID 8020 // |
| 46671 | /* 130615 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46672 | /* 130618 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46673 | /* 130622 */ // (rotl:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPROLVDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 46674 | /* 130622 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVDZ256rr), |
| 46675 | /* 130627 */ GIR_RootConstrainSelectedInstOperands, |
| 46676 | /* 130628 */ // GIR_Coverage, 8020, |
| 46677 | /* 130628 */ GIR_Done, |
| 46678 | /* 130629 */ // Label 2850: @130629 |
| 46679 | /* 130629 */ GIM_Try, /*On fail goto*//*Label 2851*/ GIMT_Encode4(130786), // Rule ID 20799 // |
| 46680 | /* 130634 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 46681 | /* 130637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46682 | /* 130641 */ // (rotl:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (EXTRACT_SUBREG:{ *:[v8i32] } (VPROLVDZrr:{ *:[v16i32] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 46683 | /* 130641 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 46684 | /* 130644 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46685 | /* 130648 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46686 | /* 130653 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 46687 | /* 130655 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 46688 | /* 130658 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46689 | /* 130662 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46690 | /* 130667 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 46691 | /* 130670 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 46692 | /* 130674 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 46693 | /* 130677 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46694 | /* 130682 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46695 | /* 130687 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46696 | /* 130692 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 46697 | /* 130695 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46698 | /* 130699 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46699 | /* 130704 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46700 | /* 130706 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 46701 | /* 130709 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46702 | /* 130713 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46703 | /* 130718 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46704 | /* 130721 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 46705 | /* 130725 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 46706 | /* 130728 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46707 | /* 130733 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46708 | /* 130738 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46709 | /* 130743 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 46710 | /* 130746 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPROLVDZrr), |
| 46711 | /* 130750 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46712 | /* 130755 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46713 | /* 130758 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 46714 | /* 130761 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46715 | /* 130763 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46716 | /* 130766 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46717 | /* 130768 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 46718 | /* 130775 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 46719 | /* 130780 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46720 | /* 130785 */ // GIR_Coverage, 20799, |
| 46721 | /* 130785 */ GIR_EraseRootFromParent_Done, |
| 46722 | /* 130786 */ // Label 2851: @130786 |
| 46723 | /* 130786 */ GIM_Reject, |
| 46724 | /* 130787 */ // Label 2848: @130787 |
| 46725 | /* 130787 */ GIM_Reject, |
| 46726 | /* 130788 */ // Label 2780: @130788 |
| 46727 | /* 130788 */ GIM_Try, /*On fail goto*//*Label 2852*/ GIMT_Encode4(130881), |
| 46728 | /* 130793 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 46729 | /* 130796 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 46730 | /* 130799 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46731 | /* 130803 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46732 | /* 130807 */ GIM_Try, /*On fail goto*//*Label 2853*/ GIMT_Encode4(130861), // Rule ID 8041 // |
| 46733 | /* 130812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 46734 | /* 130815 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46735 | /* 130819 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46736 | /* 130823 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46737 | /* 130826 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46738 | /* 130830 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46739 | /* 130834 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46740 | /* 130836 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46741 | /* 130843 */ // (rotl:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46742 | /* 130843 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVQZrm), |
| 46743 | /* 130846 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46744 | /* 130848 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46745 | /* 130850 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46746 | /* 130854 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46747 | /* 130859 */ GIR_RootConstrainSelectedInstOperands, |
| 46748 | /* 130860 */ // GIR_Coverage, 8041, |
| 46749 | /* 130860 */ GIR_EraseRootFromParent_Done, |
| 46750 | /* 130861 */ // Label 2853: @130861 |
| 46751 | /* 130861 */ GIM_Try, /*On fail goto*//*Label 2854*/ GIMT_Encode4(130880), // Rule ID 8038 // |
| 46752 | /* 130866 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 46753 | /* 130869 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46754 | /* 130873 */ // (rotl:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPROLVQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 46755 | /* 130873 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVQZrr), |
| 46756 | /* 130878 */ GIR_RootConstrainSelectedInstOperands, |
| 46757 | /* 130879 */ // GIR_Coverage, 8038, |
| 46758 | /* 130879 */ GIR_Done, |
| 46759 | /* 130880 */ // Label 2854: @130880 |
| 46760 | /* 130880 */ GIM_Reject, |
| 46761 | /* 130881 */ // Label 2852: @130881 |
| 46762 | /* 130881 */ GIM_Reject, |
| 46763 | /* 130882 */ // Label 2781: @130882 |
| 46764 | /* 130882 */ GIM_Try, /*On fail goto*//*Label 2855*/ GIMT_Encode4(131037), |
| 46765 | /* 130887 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 46766 | /* 130890 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 46767 | /* 130893 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46768 | /* 130897 */ GIM_Try, /*On fail goto*//*Label 2856*/ GIMT_Encode4(130955), // Rule ID 1577 // |
| 46769 | /* 130902 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46770 | /* 130905 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 46771 | /* 130909 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46772 | /* 130913 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46773 | /* 130916 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46774 | /* 130920 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46775 | /* 130924 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46776 | /* 130928 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46777 | /* 130930 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46778 | /* 130937 */ // (rotl:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src2) => (VPROTBmr:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 46779 | /* 130937 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTBmr), |
| 46780 | /* 130940 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46781 | /* 130942 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 46782 | /* 130946 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 46783 | /* 130948 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46784 | /* 130953 */ GIR_RootConstrainSelectedInstOperands, |
| 46785 | /* 130954 */ // GIR_Coverage, 1577, |
| 46786 | /* 130954 */ GIR_EraseRootFromParent_Done, |
| 46787 | /* 130955 */ // Label 2856: @130955 |
| 46788 | /* 130955 */ GIM_Try, /*On fail goto*//*Label 2857*/ GIMT_Encode4(131013), // Rule ID 1576 // |
| 46789 | /* 130960 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46790 | /* 130963 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46791 | /* 130967 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46792 | /* 130971 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46793 | /* 130975 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46794 | /* 130978 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46795 | /* 130982 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46796 | /* 130986 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46797 | /* 130988 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46798 | /* 130995 */ // (rotl:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROTBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46799 | /* 130995 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTBrm), |
| 46800 | /* 130998 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46801 | /* 131000 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46802 | /* 131002 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46803 | /* 131006 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46804 | /* 131011 */ GIR_RootConstrainSelectedInstOperands, |
| 46805 | /* 131012 */ // GIR_Coverage, 1576, |
| 46806 | /* 131012 */ GIR_EraseRootFromParent_Done, |
| 46807 | /* 131013 */ // Label 2857: @131013 |
| 46808 | /* 131013 */ GIM_Try, /*On fail goto*//*Label 2858*/ GIMT_Encode4(131036), // Rule ID 1575 // |
| 46809 | /* 131018 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46810 | /* 131021 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46811 | /* 131025 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46812 | /* 131029 */ // (rotl:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPROTBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 46813 | /* 131029 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROTBrr), |
| 46814 | /* 131034 */ GIR_RootConstrainSelectedInstOperands, |
| 46815 | /* 131035 */ // GIR_Coverage, 1575, |
| 46816 | /* 131035 */ GIR_Done, |
| 46817 | /* 131036 */ // Label 2858: @131036 |
| 46818 | /* 131036 */ GIM_Reject, |
| 46819 | /* 131037 */ // Label 2855: @131037 |
| 46820 | /* 131037 */ GIM_Reject, |
| 46821 | /* 131038 */ // Label 2782: @131038 |
| 46822 | /* 131038 */ GIM_Try, /*On fail goto*//*Label 2859*/ GIMT_Encode4(131131), |
| 46823 | /* 131043 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 46824 | /* 131046 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 46825 | /* 131049 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46826 | /* 131053 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46827 | /* 131057 */ GIM_Try, /*On fail goto*//*Label 2860*/ GIMT_Encode4(131111), // Rule ID 8014 // |
| 46828 | /* 131062 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 46829 | /* 131065 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46830 | /* 131069 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46831 | /* 131073 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46832 | /* 131076 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46833 | /* 131080 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46834 | /* 131084 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46835 | /* 131086 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46836 | /* 131093 */ // (rotl:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46837 | /* 131093 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVDZrm), |
| 46838 | /* 131096 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46839 | /* 131098 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46840 | /* 131100 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46841 | /* 131104 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46842 | /* 131109 */ GIR_RootConstrainSelectedInstOperands, |
| 46843 | /* 131110 */ // GIR_Coverage, 8014, |
| 46844 | /* 131110 */ GIR_EraseRootFromParent_Done, |
| 46845 | /* 131111 */ // Label 2860: @131111 |
| 46846 | /* 131111 */ GIM_Try, /*On fail goto*//*Label 2861*/ GIMT_Encode4(131130), // Rule ID 8011 // |
| 46847 | /* 131116 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 46848 | /* 131119 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46849 | /* 131123 */ // (rotl:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPROLVDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 46850 | /* 131123 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVDZrr), |
| 46851 | /* 131128 */ GIR_RootConstrainSelectedInstOperands, |
| 46852 | /* 131129 */ // GIR_Coverage, 8011, |
| 46853 | /* 131129 */ GIR_Done, |
| 46854 | /* 131130 */ // Label 2861: @131130 |
| 46855 | /* 131130 */ GIM_Reject, |
| 46856 | /* 131131 */ // Label 2859: @131131 |
| 46857 | /* 131131 */ GIM_Reject, |
| 46858 | /* 131132 */ // Label 2783: @131132 |
| 46859 | /* 131132 */ GIM_Reject, |
| 46860 | /* 131133 */ // Label 33: @131133 |
| 46861 | /* 131133 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(7), GIMT_Encode2(24), /*)*//*default:*//*Label 2868*/ GIMT_Encode4(132789), |
| 46862 | /* 131144 */ /*GILLT_v2s1*//*Label 2862*/ GIMT_Encode4(131212), GIMT_Encode4(0), |
| 46863 | /* 131152 */ /*GILLT_v4s1*//*Label 2863*/ GIMT_Encode4(131373), GIMT_Encode4(0), GIMT_Encode4(0), |
| 46864 | /* 131164 */ /*GILLT_v8s1*//*Label 2864*/ GIMT_Encode4(131720), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 46865 | /* 131180 */ /*GILLT_v16s1*//*Label 2865*/ GIMT_Encode4(132117), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 46866 | /* 131196 */ /*GILLT_v32s1*//*Label 2866*/ GIMT_Encode4(132514), GIMT_Encode4(0), GIMT_Encode4(0), |
| 46867 | /* 131208 */ /*GILLT_v64s1*//*Label 2867*/ GIMT_Encode4(132738), |
| 46868 | /* 131212 */ // Label 2862: @131212 |
| 46869 | /* 131212 */ GIM_Try, /*On fail goto*//*Label 2869*/ GIMT_Encode4(131372), |
| 46870 | /* 131217 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 46871 | /* 131220 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 46872 | /* 131223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 46873 | /* 131227 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46874 | /* 131232 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46875 | /* 131236 */ GIM_Try, /*On fail goto*//*Label 2870*/ GIMT_Encode4(131267), // Rule ID 12606 // |
| 46876 | /* 131241 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 46877 | /* 131244 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46878 | /* 131248 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46879 | /* 131254 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46880 | /* 131256 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46881 | /* 131258 */ // (setcc:{ *:[v2i1] } immAllZerosV:{ *:[v2i64] }, VR128X:{ *:[v2i64] }:$src, SETGT:{ *:[Other] }) => (VPMOVQ2MZ128kr:{ *:[v2i1] } VR128X:{ *:[v2i64] }:$src) |
| 46882 | /* 131258 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVQ2MZ128kr), |
| 46883 | /* 131261 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46884 | /* 131263 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46885 | /* 131265 */ GIR_RootConstrainSelectedInstOperands, |
| 46886 | /* 131266 */ // GIR_Coverage, 12606, |
| 46887 | /* 131266 */ GIR_EraseRootFromParent_Done, |
| 46888 | /* 131267 */ // Label 2870: @131267 |
| 46889 | /* 131267 */ GIM_Try, /*On fail goto*//*Label 2871*/ GIMT_Encode4(131371), // Rule ID 21658 // |
| 46890 | /* 131272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasEVEX512_NoVLX), |
| 46891 | /* 131275 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46892 | /* 131279 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46893 | /* 131285 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46894 | /* 131287 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46895 | /* 131289 */ // (setcc:{ *:[v2i1] } immAllZerosV:{ *:[v2i64] }, VR128X:{ *:[v2i64] }:$src, SETGT:{ *:[Other] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } (VPMOVQ2MZkr:{ *:[v8i1] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src, sub_xmm:{ *:[i32] })), VK2:{ *:[i32] }) |
| 46896 | /* 131289 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 46897 | /* 131292 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46898 | /* 131296 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46899 | /* 131301 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46900 | /* 131303 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 46901 | /* 131306 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46902 | /* 131310 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46903 | /* 131315 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46904 | /* 131318 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 46905 | /* 131322 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 46906 | /* 131325 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46907 | /* 131330 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46908 | /* 131335 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46909 | /* 131340 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 46910 | /* 131343 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVQ2MZkr), |
| 46911 | /* 131347 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46912 | /* 131352 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46913 | /* 131355 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46914 | /* 131357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46915 | /* 131360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46916 | /* 131362 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 46917 | /* 131365 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 46918 | /* 131370 */ // GIR_Coverage, 21658, |
| 46919 | /* 131370 */ GIR_EraseRootFromParent_Done, |
| 46920 | /* 131371 */ // Label 2871: @131371 |
| 46921 | /* 131371 */ GIM_Reject, |
| 46922 | /* 131372 */ // Label 2869: @131372 |
| 46923 | /* 131372 */ GIM_Reject, |
| 46924 | /* 131373 */ // Label 2863: @131373 |
| 46925 | /* 131373 */ GIM_Try, /*On fail goto*//*Label 2872*/ GIMT_Encode4(131423), // Rule ID 12603 // |
| 46926 | /* 131378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 46927 | /* 131381 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 46928 | /* 131384 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 46929 | /* 131387 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 46930 | /* 131391 */ // MIs[0] Operand 1 |
| 46931 | /* 131391 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46932 | /* 131396 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46933 | /* 131400 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46934 | /* 131406 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46935 | /* 131408 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46936 | /* 131412 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46937 | /* 131414 */ // (setcc:{ *:[v4i1] } immAllZerosV:{ *:[v4i32] }, VR128X:{ *:[v4i32] }:$src, SETGT:{ *:[Other] }) => (VPMOVD2MZ128kr:{ *:[v4i1] } VR128X:{ *:[v4i32] }:$src) |
| 46938 | /* 131414 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVD2MZ128kr), |
| 46939 | /* 131417 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46940 | /* 131419 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46941 | /* 131421 */ GIR_RootConstrainSelectedInstOperands, |
| 46942 | /* 131422 */ // GIR_Coverage, 12603, |
| 46943 | /* 131422 */ GIR_EraseRootFromParent_Done, |
| 46944 | /* 131423 */ // Label 2872: @131423 |
| 46945 | /* 131423 */ GIM_Try, /*On fail goto*//*Label 2873*/ GIMT_Encode4(131473), // Rule ID 12605 // |
| 46946 | /* 131428 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 46947 | /* 131431 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 46948 | /* 131434 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 46949 | /* 131437 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 46950 | /* 131441 */ // MIs[0] Operand 1 |
| 46951 | /* 131441 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46952 | /* 131446 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46953 | /* 131450 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46954 | /* 131456 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46955 | /* 131458 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46956 | /* 131462 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46957 | /* 131464 */ // (setcc:{ *:[v4i1] } immAllZerosV:{ *:[v4i64] }, VR256X:{ *:[v4i64] }:$src, SETGT:{ *:[Other] }) => (VPMOVQ2MZ256kr:{ *:[v4i1] } VR256X:{ *:[v4i64] }:$src) |
| 46958 | /* 131464 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVQ2MZ256kr), |
| 46959 | /* 131467 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46960 | /* 131469 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46961 | /* 131471 */ GIR_RootConstrainSelectedInstOperands, |
| 46962 | /* 131472 */ // GIR_Coverage, 12605, |
| 46963 | /* 131472 */ GIR_EraseRootFromParent_Done, |
| 46964 | /* 131473 */ // Label 2873: @131473 |
| 46965 | /* 131473 */ GIM_Try, /*On fail goto*//*Label 2874*/ GIMT_Encode4(131596), // Rule ID 21656 // |
| 46966 | /* 131478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasEVEX512_NoVLX), |
| 46967 | /* 131481 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 46968 | /* 131484 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 46969 | /* 131487 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 46970 | /* 131491 */ // MIs[0] Operand 1 |
| 46971 | /* 131491 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46972 | /* 131496 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46973 | /* 131500 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46974 | /* 131506 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46975 | /* 131508 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46976 | /* 131512 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46977 | /* 131514 */ // (setcc:{ *:[v4i1] } immAllZerosV:{ *:[v4i32] }, VR128X:{ *:[v4i32] }:$src, SETGT:{ *:[Other] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } (VPMOVD2MZkr:{ *:[v16i1] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src, sub_xmm:{ *:[i32] })), VK4:{ *:[i32] }) |
| 46978 | /* 131514 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 46979 | /* 131517 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46980 | /* 131521 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46981 | /* 131526 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46982 | /* 131528 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 46983 | /* 131531 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46984 | /* 131535 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46985 | /* 131540 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46986 | /* 131543 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 46987 | /* 131547 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 46988 | /* 131550 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46989 | /* 131555 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46990 | /* 131560 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46991 | /* 131565 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 46992 | /* 131568 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVD2MZkr), |
| 46993 | /* 131572 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 46994 | /* 131577 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46995 | /* 131580 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46996 | /* 131582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46997 | /* 131585 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46998 | /* 131587 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 46999 | /* 131590 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 47000 | /* 131595 */ // GIR_Coverage, 21656, |
| 47001 | /* 131595 */ GIR_EraseRootFromParent_Done, |
| 47002 | /* 131596 */ // Label 2874: @131596 |
| 47003 | /* 131596 */ GIM_Try, /*On fail goto*//*Label 2875*/ GIMT_Encode4(131719), // Rule ID 21657 // |
| 47004 | /* 131601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasEVEX512_NoVLX), |
| 47005 | /* 131604 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 47006 | /* 131607 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 47007 | /* 131610 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 47008 | /* 131614 */ // MIs[0] Operand 1 |
| 47009 | /* 131614 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47010 | /* 131619 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47011 | /* 131623 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47012 | /* 131629 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47013 | /* 131631 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47014 | /* 131635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47015 | /* 131637 */ // (setcc:{ *:[v4i1] } immAllZerosV:{ *:[v4i64] }, VR256X:{ *:[v4i64] }:$src, SETGT:{ *:[Other] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } (VPMOVQ2MZkr:{ *:[v8i1] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src, sub_ymm:{ *:[i32] })), VK4:{ *:[i32] }) |
| 47016 | /* 131637 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47017 | /* 131640 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47018 | /* 131644 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47019 | /* 131649 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47020 | /* 131651 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 47021 | /* 131654 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47022 | /* 131658 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47023 | /* 131663 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47024 | /* 131666 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 47025 | /* 131670 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 47026 | /* 131673 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47027 | /* 131678 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47028 | /* 131683 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 47029 | /* 131688 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 47030 | /* 131691 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVQ2MZkr), |
| 47031 | /* 131695 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47032 | /* 131700 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47033 | /* 131703 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47034 | /* 131705 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47035 | /* 131708 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47036 | /* 131710 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 47037 | /* 131713 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 47038 | /* 131718 */ // GIR_Coverage, 21657, |
| 47039 | /* 131718 */ GIR_EraseRootFromParent_Done, |
| 47040 | /* 131719 */ // Label 2875: @131719 |
| 47041 | /* 131719 */ GIM_Reject, |
| 47042 | /* 131720 */ // Label 2864: @131720 |
| 47043 | /* 131720 */ GIM_Try, /*On fail goto*//*Label 2876*/ GIMT_Encode4(131770), // Rule ID 12600 // |
| 47044 | /* 131725 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47045 | /* 131728 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 47046 | /* 131731 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 47047 | /* 131734 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 47048 | /* 131738 */ // MIs[0] Operand 1 |
| 47049 | /* 131738 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47050 | /* 131743 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47051 | /* 131747 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47052 | /* 131753 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47053 | /* 131755 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47054 | /* 131759 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47055 | /* 131761 */ // (setcc:{ *:[v8i1] } immAllZerosV:{ *:[v8i16] }, VR128X:{ *:[v8i16] }:$src, SETGT:{ *:[Other] }) => (VPMOVW2MZ128kr:{ *:[v8i1] } VR128X:{ *:[v8i16] }:$src) |
| 47056 | /* 131761 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVW2MZ128kr), |
| 47057 | /* 131764 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47058 | /* 131766 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 47059 | /* 131768 */ GIR_RootConstrainSelectedInstOperands, |
| 47060 | /* 131769 */ // GIR_Coverage, 12600, |
| 47061 | /* 131769 */ GIR_EraseRootFromParent_Done, |
| 47062 | /* 131770 */ // Label 2876: @131770 |
| 47063 | /* 131770 */ GIM_Try, /*On fail goto*//*Label 2877*/ GIMT_Encode4(131820), // Rule ID 12602 // |
| 47064 | /* 131775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 47065 | /* 131778 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 47066 | /* 131781 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 47067 | /* 131784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 47068 | /* 131788 */ // MIs[0] Operand 1 |
| 47069 | /* 131788 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47070 | /* 131793 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47071 | /* 131797 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47072 | /* 131803 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47073 | /* 131805 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47074 | /* 131809 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47075 | /* 131811 */ // (setcc:{ *:[v8i1] } immAllZerosV:{ *:[v8i32] }, VR256X:{ *:[v8i32] }:$src, SETGT:{ *:[Other] }) => (VPMOVD2MZ256kr:{ *:[v8i1] } VR256X:{ *:[v8i32] }:$src) |
| 47076 | /* 131811 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVD2MZ256kr), |
| 47077 | /* 131814 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47078 | /* 131816 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 47079 | /* 131818 */ GIR_RootConstrainSelectedInstOperands, |
| 47080 | /* 131819 */ // GIR_Coverage, 12602, |
| 47081 | /* 131819 */ GIR_EraseRootFromParent_Done, |
| 47082 | /* 131820 */ // Label 2877: @131820 |
| 47083 | /* 131820 */ GIM_Try, /*On fail goto*//*Label 2878*/ GIMT_Encode4(131870), // Rule ID 12604 // |
| 47084 | /* 131825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 47085 | /* 131828 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 47086 | /* 131831 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 47087 | /* 131834 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 47088 | /* 131838 */ // MIs[0] Operand 1 |
| 47089 | /* 131838 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47090 | /* 131843 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47091 | /* 131847 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47092 | /* 131853 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47093 | /* 131855 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 47094 | /* 131859 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47095 | /* 131861 */ // (setcc:{ *:[v8i1] } immAllZerosV:{ *:[v8i64] }, VR512:{ *:[v8i64] }:$src, SETGT:{ *:[Other] }) => (VPMOVQ2MZkr:{ *:[v8i1] } VR512:{ *:[v8i64] }:$src) |
| 47096 | /* 131861 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVQ2MZkr), |
| 47097 | /* 131864 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47098 | /* 131866 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 47099 | /* 131868 */ GIR_RootConstrainSelectedInstOperands, |
| 47100 | /* 131869 */ // GIR_Coverage, 12604, |
| 47101 | /* 131869 */ GIR_EraseRootFromParent_Done, |
| 47102 | /* 131870 */ // Label 2878: @131870 |
| 47103 | /* 131870 */ GIM_Try, /*On fail goto*//*Label 2879*/ GIMT_Encode4(131993), // Rule ID 21654 // |
| 47104 | /* 131875 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 47105 | /* 131878 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 47106 | /* 131881 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 47107 | /* 131884 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 47108 | /* 131888 */ // MIs[0] Operand 1 |
| 47109 | /* 131888 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47110 | /* 131893 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47111 | /* 131897 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47112 | /* 131903 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47113 | /* 131905 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47114 | /* 131909 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47115 | /* 131911 */ // (setcc:{ *:[v8i1] } immAllZerosV:{ *:[v8i16] }, VR128X:{ *:[v8i16] }:$src, SETGT:{ *:[Other] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } (VPMOVW2MZkr:{ *:[v32i1] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src, sub_xmm:{ *:[i32] })), VK8:{ *:[i32] }) |
| 47116 | /* 131911 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 47117 | /* 131914 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47118 | /* 131918 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47119 | /* 131923 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47120 | /* 131925 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 47121 | /* 131928 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47122 | /* 131932 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47123 | /* 131937 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47124 | /* 131940 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 47125 | /* 131944 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 47126 | /* 131947 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47127 | /* 131952 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47128 | /* 131957 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47129 | /* 131962 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s1, |
| 47130 | /* 131965 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVW2MZkr), |
| 47131 | /* 131969 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47132 | /* 131974 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47133 | /* 131977 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47134 | /* 131979 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47135 | /* 131982 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47136 | /* 131984 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 47137 | /* 131987 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 47138 | /* 131992 */ // GIR_Coverage, 21654, |
| 47139 | /* 131992 */ GIR_EraseRootFromParent_Done, |
| 47140 | /* 131993 */ // Label 2879: @131993 |
| 47141 | /* 131993 */ GIM_Try, /*On fail goto*//*Label 2880*/ GIMT_Encode4(132116), // Rule ID 21655 // |
| 47142 | /* 131998 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasEVEX512_NoVLX), |
| 47143 | /* 132001 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 47144 | /* 132004 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 47145 | /* 132007 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 47146 | /* 132011 */ // MIs[0] Operand 1 |
| 47147 | /* 132011 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47148 | /* 132016 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47149 | /* 132020 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47150 | /* 132026 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47151 | /* 132028 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47152 | /* 132032 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47153 | /* 132034 */ // (setcc:{ *:[v8i1] } immAllZerosV:{ *:[v8i32] }, VR256X:{ *:[v8i32] }:$src, SETGT:{ *:[Other] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } (VPMOVD2MZkr:{ *:[v16i1] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src, sub_ymm:{ *:[i32] })), VK8:{ *:[i32] }) |
| 47154 | /* 132034 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 47155 | /* 132037 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47156 | /* 132041 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47157 | /* 132046 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47158 | /* 132048 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 47159 | /* 132051 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47160 | /* 132055 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47161 | /* 132060 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47162 | /* 132063 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 47163 | /* 132067 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 47164 | /* 132070 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47165 | /* 132075 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47166 | /* 132080 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 47167 | /* 132085 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 47168 | /* 132088 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVD2MZkr), |
| 47169 | /* 132092 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47170 | /* 132097 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47171 | /* 132100 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47172 | /* 132102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47173 | /* 132105 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47174 | /* 132107 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 47175 | /* 132110 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 47176 | /* 132115 */ // GIR_Coverage, 21655, |
| 47177 | /* 132115 */ GIR_EraseRootFromParent_Done, |
| 47178 | /* 132116 */ // Label 2880: @132116 |
| 47179 | /* 132116 */ GIM_Reject, |
| 47180 | /* 132117 */ // Label 2865: @132117 |
| 47181 | /* 132117 */ GIM_Try, /*On fail goto*//*Label 2881*/ GIMT_Encode4(132167), // Rule ID 12597 // |
| 47182 | /* 132122 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47183 | /* 132125 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 47184 | /* 132128 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 47185 | /* 132131 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 47186 | /* 132135 */ // MIs[0] Operand 1 |
| 47187 | /* 132135 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47188 | /* 132140 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47189 | /* 132144 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47190 | /* 132150 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47191 | /* 132152 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47192 | /* 132156 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47193 | /* 132158 */ // (setcc:{ *:[v16i1] } immAllZerosV:{ *:[v16i8] }, VR128X:{ *:[v16i8] }:$src, SETGT:{ *:[Other] }) => (VPMOVB2MZ128kr:{ *:[v16i1] } VR128X:{ *:[v16i8] }:$src) |
| 47194 | /* 132158 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVB2MZ128kr), |
| 47195 | /* 132161 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47196 | /* 132163 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 47197 | /* 132165 */ GIR_RootConstrainSelectedInstOperands, |
| 47198 | /* 132166 */ // GIR_Coverage, 12597, |
| 47199 | /* 132166 */ GIR_EraseRootFromParent_Done, |
| 47200 | /* 132167 */ // Label 2881: @132167 |
| 47201 | /* 132167 */ GIM_Try, /*On fail goto*//*Label 2882*/ GIMT_Encode4(132217), // Rule ID 12599 // |
| 47202 | /* 132172 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47203 | /* 132175 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 47204 | /* 132178 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 47205 | /* 132181 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 47206 | /* 132185 */ // MIs[0] Operand 1 |
| 47207 | /* 132185 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47208 | /* 132190 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47209 | /* 132194 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47210 | /* 132200 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47211 | /* 132202 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47212 | /* 132206 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47213 | /* 132208 */ // (setcc:{ *:[v16i1] } immAllZerosV:{ *:[v16i16] }, VR256X:{ *:[v16i16] }:$src, SETGT:{ *:[Other] }) => (VPMOVW2MZ256kr:{ *:[v16i1] } VR256X:{ *:[v16i16] }:$src) |
| 47214 | /* 132208 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVW2MZ256kr), |
| 47215 | /* 132211 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47216 | /* 132213 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 47217 | /* 132215 */ GIR_RootConstrainSelectedInstOperands, |
| 47218 | /* 132216 */ // GIR_Coverage, 12599, |
| 47219 | /* 132216 */ GIR_EraseRootFromParent_Done, |
| 47220 | /* 132217 */ // Label 2882: @132217 |
| 47221 | /* 132217 */ GIM_Try, /*On fail goto*//*Label 2883*/ GIMT_Encode4(132267), // Rule ID 12601 // |
| 47222 | /* 132222 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 47223 | /* 132225 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 47224 | /* 132228 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 47225 | /* 132231 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 47226 | /* 132235 */ // MIs[0] Operand 1 |
| 47227 | /* 132235 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47228 | /* 132240 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47229 | /* 132244 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47230 | /* 132250 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47231 | /* 132252 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 47232 | /* 132256 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47233 | /* 132258 */ // (setcc:{ *:[v16i1] } immAllZerosV:{ *:[v16i32] }, VR512:{ *:[v16i32] }:$src, SETGT:{ *:[Other] }) => (VPMOVD2MZkr:{ *:[v16i1] } VR512:{ *:[v16i32] }:$src) |
| 47234 | /* 132258 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVD2MZkr), |
| 47235 | /* 132261 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47236 | /* 132263 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 47237 | /* 132265 */ GIR_RootConstrainSelectedInstOperands, |
| 47238 | /* 132266 */ // GIR_Coverage, 12601, |
| 47239 | /* 132266 */ GIR_EraseRootFromParent_Done, |
| 47240 | /* 132267 */ // Label 2883: @132267 |
| 47241 | /* 132267 */ GIM_Try, /*On fail goto*//*Label 2884*/ GIMT_Encode4(132390), // Rule ID 21652 // |
| 47242 | /* 132272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 47243 | /* 132275 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 47244 | /* 132278 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 47245 | /* 132281 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 47246 | /* 132285 */ // MIs[0] Operand 1 |
| 47247 | /* 132285 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47248 | /* 132290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47249 | /* 132294 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47250 | /* 132300 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47251 | /* 132302 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47252 | /* 132306 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47253 | /* 132308 */ // (setcc:{ *:[v16i1] } immAllZerosV:{ *:[v16i8] }, VR128X:{ *:[v16i8] }:$src, SETGT:{ *:[Other] }) => (COPY_TO_REGCLASS:{ *:[v16i1] } (VPMOVB2MZkr:{ *:[v64i1] } (INSERT_SUBREG:{ *:[v64i8] } (IMPLICIT_DEF:{ *:[v64i8] }), VR128X:{ *:[v16i8] }:$src, sub_xmm:{ *:[i32] })), VK16:{ *:[i32] }) |
| 47254 | /* 132308 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 47255 | /* 132311 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47256 | /* 132315 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47257 | /* 132320 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47258 | /* 132322 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 47259 | /* 132325 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47260 | /* 132329 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47261 | /* 132334 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47262 | /* 132337 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 47263 | /* 132341 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 47264 | /* 132344 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47265 | /* 132349 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47266 | /* 132354 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47267 | /* 132359 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s1, |
| 47268 | /* 132362 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVB2MZkr), |
| 47269 | /* 132366 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47270 | /* 132371 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47271 | /* 132374 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47272 | /* 132376 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47273 | /* 132379 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47274 | /* 132381 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 47275 | /* 132384 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 47276 | /* 132389 */ // GIR_Coverage, 21652, |
| 47277 | /* 132389 */ GIR_EraseRootFromParent_Done, |
| 47278 | /* 132390 */ // Label 2884: @132390 |
| 47279 | /* 132390 */ GIM_Try, /*On fail goto*//*Label 2885*/ GIMT_Encode4(132513), // Rule ID 21653 // |
| 47280 | /* 132395 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 47281 | /* 132398 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 47282 | /* 132401 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 47283 | /* 132404 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 47284 | /* 132408 */ // MIs[0] Operand 1 |
| 47285 | /* 132408 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47286 | /* 132413 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47287 | /* 132417 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47288 | /* 132423 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47289 | /* 132425 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47290 | /* 132429 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47291 | /* 132431 */ // (setcc:{ *:[v16i1] } immAllZerosV:{ *:[v16i16] }, VR256X:{ *:[v16i16] }:$src, SETGT:{ *:[Other] }) => (COPY_TO_REGCLASS:{ *:[v16i1] } (VPMOVW2MZkr:{ *:[v32i1] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src, sub_ymm:{ *:[i32] })), VK16:{ *:[i32] }) |
| 47292 | /* 132431 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 47293 | /* 132434 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47294 | /* 132438 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47295 | /* 132443 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47296 | /* 132445 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 47297 | /* 132448 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47298 | /* 132452 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47299 | /* 132457 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47300 | /* 132460 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 47301 | /* 132464 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 47302 | /* 132467 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47303 | /* 132472 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47304 | /* 132477 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 47305 | /* 132482 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s1, |
| 47306 | /* 132485 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVW2MZkr), |
| 47307 | /* 132489 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47308 | /* 132494 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47309 | /* 132497 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47310 | /* 132499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47311 | /* 132502 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47312 | /* 132504 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 47313 | /* 132507 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 47314 | /* 132512 */ // GIR_Coverage, 21653, |
| 47315 | /* 132512 */ GIR_EraseRootFromParent_Done, |
| 47316 | /* 132513 */ // Label 2885: @132513 |
| 47317 | /* 132513 */ GIM_Reject, |
| 47318 | /* 132514 */ // Label 2866: @132514 |
| 47319 | /* 132514 */ GIM_Try, /*On fail goto*//*Label 2886*/ GIMT_Encode4(132564), // Rule ID 12596 // |
| 47320 | /* 132519 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47321 | /* 132522 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 47322 | /* 132525 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 47323 | /* 132528 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 47324 | /* 132532 */ // MIs[0] Operand 1 |
| 47325 | /* 132532 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47326 | /* 132537 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47327 | /* 132541 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47328 | /* 132547 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47329 | /* 132549 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47330 | /* 132553 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47331 | /* 132555 */ // (setcc:{ *:[v32i1] } immAllZerosV:{ *:[v32i8] }, VR256X:{ *:[v32i8] }:$src, SETGT:{ *:[Other] }) => (VPMOVB2MZ256kr:{ *:[v32i1] } VR256X:{ *:[v32i8] }:$src) |
| 47332 | /* 132555 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVB2MZ256kr), |
| 47333 | /* 132558 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47334 | /* 132560 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 47335 | /* 132562 */ GIR_RootConstrainSelectedInstOperands, |
| 47336 | /* 132563 */ // GIR_Coverage, 12596, |
| 47337 | /* 132563 */ GIR_EraseRootFromParent_Done, |
| 47338 | /* 132564 */ // Label 2886: @132564 |
| 47339 | /* 132564 */ GIM_Try, /*On fail goto*//*Label 2887*/ GIMT_Encode4(132614), // Rule ID 12598 // |
| 47340 | /* 132569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 47341 | /* 132572 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 47342 | /* 132575 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 47343 | /* 132578 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 47344 | /* 132582 */ // MIs[0] Operand 1 |
| 47345 | /* 132582 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47346 | /* 132587 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47347 | /* 132591 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47348 | /* 132597 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47349 | /* 132599 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 47350 | /* 132603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47351 | /* 132605 */ // (setcc:{ *:[v32i1] } immAllZerosV:{ *:[v32i16] }, VR512:{ *:[v32i16] }:$src, SETGT:{ *:[Other] }) => (VPMOVW2MZkr:{ *:[v32i1] } VR512:{ *:[v32i16] }:$src) |
| 47352 | /* 132605 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVW2MZkr), |
| 47353 | /* 132608 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47354 | /* 132610 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 47355 | /* 132612 */ GIR_RootConstrainSelectedInstOperands, |
| 47356 | /* 132613 */ // GIR_Coverage, 12598, |
| 47357 | /* 132613 */ GIR_EraseRootFromParent_Done, |
| 47358 | /* 132614 */ // Label 2887: @132614 |
| 47359 | /* 132614 */ GIM_Try, /*On fail goto*//*Label 2888*/ GIMT_Encode4(132737), // Rule ID 21651 // |
| 47360 | /* 132619 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 47361 | /* 132622 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 47362 | /* 132625 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 47363 | /* 132628 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 47364 | /* 132632 */ // MIs[0] Operand 1 |
| 47365 | /* 132632 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47366 | /* 132637 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47367 | /* 132641 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47368 | /* 132647 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47369 | /* 132649 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47370 | /* 132653 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47371 | /* 132655 */ // (setcc:{ *:[v32i1] } immAllZerosV:{ *:[v32i8] }, VR256X:{ *:[v32i8] }:$src, SETGT:{ *:[Other] }) => (COPY_TO_REGCLASS:{ *:[v32i1] } (VPMOVB2MZkr:{ *:[v64i1] } (INSERT_SUBREG:{ *:[v64i8] } (IMPLICIT_DEF:{ *:[v64i8] }), VR256X:{ *:[v32i8] }:$src, sub_ymm:{ *:[i32] })), VK32:{ *:[i32] }) |
| 47372 | /* 132655 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 47373 | /* 132658 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47374 | /* 132662 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47375 | /* 132667 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47376 | /* 132669 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 47377 | /* 132672 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47378 | /* 132676 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47379 | /* 132681 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47380 | /* 132684 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 47381 | /* 132688 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 47382 | /* 132691 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47383 | /* 132696 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47384 | /* 132701 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 47385 | /* 132706 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s1, |
| 47386 | /* 132709 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVB2MZkr), |
| 47387 | /* 132713 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47388 | /* 132718 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47389 | /* 132721 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47390 | /* 132723 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47391 | /* 132726 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47392 | /* 132728 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 47393 | /* 132731 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK32RegClassID), |
| 47394 | /* 132736 */ // GIR_Coverage, 21651, |
| 47395 | /* 132736 */ GIR_EraseRootFromParent_Done, |
| 47396 | /* 132737 */ // Label 2888: @132737 |
| 47397 | /* 132737 */ GIM_Reject, |
| 47398 | /* 132738 */ // Label 2867: @132738 |
| 47399 | /* 132738 */ GIM_Try, /*On fail goto*//*Label 2889*/ GIMT_Encode4(132788), // Rule ID 12595 // |
| 47400 | /* 132743 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 47401 | /* 132746 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 47402 | /* 132749 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v64s8, |
| 47403 | /* 132752 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 47404 | /* 132756 */ // MIs[0] Operand 1 |
| 47405 | /* 132756 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 47406 | /* 132761 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47407 | /* 132765 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47408 | /* 132771 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47409 | /* 132773 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 47410 | /* 132777 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47411 | /* 132779 */ // (setcc:{ *:[v64i1] } immAllZerosV:{ *:[v64i8] }, VR512:{ *:[v64i8] }:$src, SETGT:{ *:[Other] }) => (VPMOVB2MZkr:{ *:[v64i1] } VR512:{ *:[v64i8] }:$src) |
| 47412 | /* 132779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVB2MZkr), |
| 47413 | /* 132782 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47414 | /* 132784 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 47415 | /* 132786 */ GIR_RootConstrainSelectedInstOperands, |
| 47416 | /* 132787 */ // GIR_Coverage, 12595, |
| 47417 | /* 132787 */ GIR_EraseRootFromParent_Done, |
| 47418 | /* 132788 */ // Label 2889: @132788 |
| 47419 | /* 132788 */ GIM_Reject, |
| 47420 | /* 132789 */ // Label 2868: @132789 |
| 47421 | /* 132789 */ GIM_Reject, |
| 47422 | /* 132790 */ // Label 34: @132790 |
| 47423 | /* 132790 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 2902*/ GIMT_Encode4(140455), |
| 47424 | /* 132801 */ /*GILLT_v2s64*//*Label 2890*/ GIMT_Encode4(132869), GIMT_Encode4(0), |
| 47425 | /* 132809 */ /*GILLT_v4s32*//*Label 2891*/ GIMT_Encode4(133733), |
| 47426 | /* 132813 */ /*GILLT_v4s64*//*Label 2892*/ GIMT_Encode4(134597), GIMT_Encode4(0), |
| 47427 | /* 132821 */ /*GILLT_v8s16*//*Label 2893*/ GIMT_Encode4(135377), |
| 47428 | /* 132825 */ /*GILLT_v8s32*//*Label 2894*/ GIMT_Encode4(136535), |
| 47429 | /* 132829 */ /*GILLT_v8s64*//*Label 2895*/ GIMT_Encode4(137315), GIMT_Encode4(0), |
| 47430 | /* 132837 */ /*GILLT_v16s8*//*Label 2896*/ GIMT_Encode4(137696), |
| 47431 | /* 132841 */ /*GILLT_v16s16*//*Label 2897*/ GIMT_Encode4(138136), |
| 47432 | /* 132845 */ /*GILLT_v16s32*//*Label 2898*/ GIMT_Encode4(139206), GIMT_Encode4(0), |
| 47433 | /* 132853 */ /*GILLT_v32s8*//*Label 2899*/ GIMT_Encode4(139547), |
| 47434 | /* 132857 */ /*GILLT_v32s16*//*Label 2900*/ GIMT_Encode4(139951), GIMT_Encode4(0), |
| 47435 | /* 132865 */ /*GILLT_v64s8*//*Label 2901*/ GIMT_Encode4(140369), |
| 47436 | /* 132869 */ // Label 2890: @132869 |
| 47437 | /* 132869 */ GIM_Try, /*On fail goto*//*Label 2903*/ GIMT_Encode4(133732), |
| 47438 | /* 132874 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 47439 | /* 132877 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 47440 | /* 132880 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 47441 | /* 132883 */ GIM_Try, /*On fail goto*//*Label 2904*/ GIMT_Encode4(132928), // Rule ID 4489 // |
| 47442 | /* 132888 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47443 | /* 132891 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47444 | /* 132895 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47445 | /* 132899 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47446 | /* 132903 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47447 | /* 132907 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47448 | /* 132913 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47449 | /* 132915 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47450 | /* 132917 */ // (vselect:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src, immAllZerosV:{ *:[v2f64] }) => (VMOVAPDZ128rrkz:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src) |
| 47451 | /* 132917 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ128rrkz), |
| 47452 | /* 132920 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47453 | /* 132922 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47454 | /* 132924 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 47455 | /* 132926 */ GIR_RootConstrainSelectedInstOperands, |
| 47456 | /* 132927 */ // GIR_Coverage, 4489, |
| 47457 | /* 132927 */ GIR_EraseRootFromParent_Done, |
| 47458 | /* 132928 */ // Label 2904: @132928 |
| 47459 | /* 132928 */ GIM_Try, /*On fail goto*//*Label 2905*/ GIMT_Encode4(132973), // Rule ID 4543 // |
| 47460 | /* 132933 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47461 | /* 132936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47462 | /* 132940 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47463 | /* 132944 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47464 | /* 132948 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47465 | /* 132952 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47466 | /* 132958 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47467 | /* 132960 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47468 | /* 132962 */ // (vselect:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src, immAllZerosV:{ *:[v2i64] }) => (VMOVDQA64Z128rrkz:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src) |
| 47469 | /* 132962 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rrkz), |
| 47470 | /* 132965 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47471 | /* 132967 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47472 | /* 132969 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 47473 | /* 132971 */ GIR_RootConstrainSelectedInstOperands, |
| 47474 | /* 132972 */ // GIR_Coverage, 4543, |
| 47475 | /* 132972 */ GIR_EraseRootFromParent_Done, |
| 47476 | /* 132973 */ // Label 2905: @132973 |
| 47477 | /* 132973 */ GIM_Try, /*On fail goto*//*Label 2906*/ GIMT_Encode4(133122), // Rule ID 19777 // |
| 47478 | /* 132978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 47479 | /* 132981 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47480 | /* 132985 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47481 | /* 132989 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47482 | /* 132993 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47483 | /* 132997 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47484 | /* 133003 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47485 | /* 133005 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47486 | /* 133007 */ // (vselect:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src1, immAllZerosV:{ *:[v2f64] }) => (EXTRACT_SUBREG:{ *:[v2f64] } (VMOVAPDZrrkz:{ *:[v8f64] } (COPY_TO_REGCLASS:{ *:[v8i1] } VK2WM:{ *:[v2i1] }:$mask, VK8WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8f64] } (IMPLICIT_DEF:{ *:[v8f64] }), VR128X:{ *:[v2f64] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 47487 | /* 133007 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 47488 | /* 133010 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47489 | /* 133014 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47490 | /* 133019 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47491 | /* 133021 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47492 | /* 133024 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47493 | /* 133028 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47494 | /* 133033 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47495 | /* 133036 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47496 | /* 133040 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/11, |
| 47497 | /* 133043 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47498 | /* 133048 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47499 | /* 133053 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47500 | /* 133058 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s1, |
| 47501 | /* 133061 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47502 | /* 133065 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47503 | /* 133070 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47504 | /* 133074 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47505 | /* 133079 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47506 | /* 133082 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrkz), |
| 47507 | /* 133086 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47508 | /* 133091 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47509 | /* 133094 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47510 | /* 133097 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47511 | /* 133099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47512 | /* 133102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47513 | /* 133104 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47514 | /* 133111 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47515 | /* 133116 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47516 | /* 133121 */ // GIR_Coverage, 19777, |
| 47517 | /* 133121 */ GIR_EraseRootFromParent_Done, |
| 47518 | /* 133122 */ // Label 2906: @133122 |
| 47519 | /* 133122 */ GIM_Try, /*On fail goto*//*Label 2907*/ GIMT_Encode4(133271), // Rule ID 19779 // |
| 47520 | /* 133127 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 47521 | /* 133130 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47522 | /* 133134 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47523 | /* 133138 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47524 | /* 133142 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47525 | /* 133146 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47526 | /* 133152 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47527 | /* 133154 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47528 | /* 133156 */ // (vselect:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src1, immAllZerosV:{ *:[v2i64] }) => (EXTRACT_SUBREG:{ *:[v2i64] } (VMOVDQA64Zrrkz:{ *:[v8i64] } (COPY_TO_REGCLASS:{ *:[v8i1] } VK2WM:{ *:[v2i1] }:$mask, VK8WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 47529 | /* 133156 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 47530 | /* 133159 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47531 | /* 133163 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47532 | /* 133168 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47533 | /* 133170 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47534 | /* 133173 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47535 | /* 133177 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47536 | /* 133182 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47537 | /* 133185 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47538 | /* 133189 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/11, |
| 47539 | /* 133192 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47540 | /* 133197 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47541 | /* 133202 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47542 | /* 133207 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s1, |
| 47543 | /* 133210 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47544 | /* 133214 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47545 | /* 133219 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47546 | /* 133223 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47547 | /* 133228 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47548 | /* 133231 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrkz), |
| 47549 | /* 133235 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47550 | /* 133240 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47551 | /* 133243 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47552 | /* 133246 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47553 | /* 133248 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47554 | /* 133251 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47555 | /* 133253 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47556 | /* 133260 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47557 | /* 133265 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47558 | /* 133270 */ // GIR_Coverage, 19779, |
| 47559 | /* 133270 */ GIR_EraseRootFromParent_Done, |
| 47560 | /* 133271 */ // Label 2907: @133271 |
| 47561 | /* 133271 */ GIM_Try, /*On fail goto*//*Label 2908*/ GIMT_Encode4(133308), // Rule ID 4491 // |
| 47562 | /* 133276 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47563 | /* 133279 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47564 | /* 133283 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47565 | /* 133287 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47566 | /* 133291 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47567 | /* 133295 */ // (vselect:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src0) => (VMOVAPDZ128rrk:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src0, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src1) |
| 47568 | /* 133295 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ128rrk), |
| 47569 | /* 133298 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47570 | /* 133300 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47571 | /* 133302 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47572 | /* 133304 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47573 | /* 133306 */ GIR_RootConstrainSelectedInstOperands, |
| 47574 | /* 133307 */ // GIR_Coverage, 4491, |
| 47575 | /* 133307 */ GIR_EraseRootFromParent_Done, |
| 47576 | /* 133308 */ // Label 2908: @133308 |
| 47577 | /* 133308 */ GIM_Try, /*On fail goto*//*Label 2909*/ GIMT_Encode4(133345), // Rule ID 4545 // |
| 47578 | /* 133313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47579 | /* 133316 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47580 | /* 133320 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47581 | /* 133324 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47582 | /* 133328 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47583 | /* 133332 */ // (vselect:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src0) => (VMOVDQA64Z128rrk:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src0, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src1) |
| 47584 | /* 133332 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rrk), |
| 47585 | /* 133335 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47586 | /* 133337 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47587 | /* 133339 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47588 | /* 133341 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47589 | /* 133343 */ GIR_RootConstrainSelectedInstOperands, |
| 47590 | /* 133344 */ // GIR_Coverage, 4545, |
| 47591 | /* 133344 */ GIR_EraseRootFromParent_Done, |
| 47592 | /* 133345 */ // Label 2909: @133345 |
| 47593 | /* 133345 */ GIM_Try, /*On fail goto*//*Label 2910*/ GIMT_Encode4(133538), // Rule ID 19776 // |
| 47594 | /* 133350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 47595 | /* 133353 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47596 | /* 133357 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47597 | /* 133361 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47598 | /* 133365 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47599 | /* 133369 */ // (vselect:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src0) => (EXTRACT_SUBREG:{ *:[v2f64] } (VMOVAPDZrrk:{ *:[v8f64] } (INSERT_SUBREG:{ *:[v8f64] } (IMPLICIT_DEF:{ *:[v8f64] }), VR128X:{ *:[v2f64] }:$src0, sub_xmm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v8i1] } VK2WM:{ *:[v2i1] }:$mask, VK8WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8f64] } (IMPLICIT_DEF:{ *:[v8f64] }), VR128X:{ *:[v2f64] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 47600 | /* 133369 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 47601 | /* 133372 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47602 | /* 133376 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47603 | /* 133381 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47604 | /* 133383 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 47605 | /* 133386 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47606 | /* 133390 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47607 | /* 133395 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47608 | /* 133398 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47609 | /* 133402 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/11, |
| 47610 | /* 133405 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47611 | /* 133410 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47612 | /* 133415 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47613 | /* 133420 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s1, |
| 47614 | /* 133423 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47615 | /* 133427 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47616 | /* 133432 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47617 | /* 133436 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47618 | /* 133441 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47619 | /* 133444 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47620 | /* 133448 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47621 | /* 133453 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47622 | /* 133455 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 47623 | /* 133458 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47624 | /* 133462 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47625 | /* 133467 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47626 | /* 133470 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 47627 | /* 133474 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 47628 | /* 133477 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47629 | /* 133482 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47630 | /* 133487 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47631 | /* 133492 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47632 | /* 133495 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrk), |
| 47633 | /* 133499 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47634 | /* 133504 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47635 | /* 133507 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 47636 | /* 133510 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 47637 | /* 133513 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47638 | /* 133515 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47639 | /* 133518 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47640 | /* 133520 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47641 | /* 133527 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47642 | /* 133532 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47643 | /* 133537 */ // GIR_Coverage, 19776, |
| 47644 | /* 133537 */ GIR_EraseRootFromParent_Done, |
| 47645 | /* 133538 */ // Label 2910: @133538 |
| 47646 | /* 133538 */ GIM_Try, /*On fail goto*//*Label 2911*/ GIMT_Encode4(133731), // Rule ID 19778 // |
| 47647 | /* 133543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 47648 | /* 133546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47649 | /* 133550 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47650 | /* 133554 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47651 | /* 133558 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47652 | /* 133562 */ // (vselect:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src0) => (EXTRACT_SUBREG:{ *:[v2i64] } (VMOVDQA64Zrrk:{ *:[v8i64] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src0, sub_xmm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v8i1] } VK2WM:{ *:[v2i1] }:$mask, VK8WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 47653 | /* 133562 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 47654 | /* 133565 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47655 | /* 133569 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47656 | /* 133574 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47657 | /* 133576 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 47658 | /* 133579 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47659 | /* 133583 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47660 | /* 133588 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47661 | /* 133591 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47662 | /* 133595 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/11, |
| 47663 | /* 133598 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47664 | /* 133603 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47665 | /* 133608 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47666 | /* 133613 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s1, |
| 47667 | /* 133616 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47668 | /* 133620 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47669 | /* 133625 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47670 | /* 133629 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47671 | /* 133634 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47672 | /* 133637 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47673 | /* 133641 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47674 | /* 133646 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47675 | /* 133648 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 47676 | /* 133651 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47677 | /* 133655 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47678 | /* 133660 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47679 | /* 133663 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 47680 | /* 133667 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 47681 | /* 133670 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47682 | /* 133675 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47683 | /* 133680 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47684 | /* 133685 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47685 | /* 133688 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrk), |
| 47686 | /* 133692 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47687 | /* 133697 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47688 | /* 133700 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 47689 | /* 133703 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 47690 | /* 133706 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47691 | /* 133708 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47692 | /* 133711 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47693 | /* 133713 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47694 | /* 133720 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47695 | /* 133725 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47696 | /* 133730 */ // GIR_Coverage, 19778, |
| 47697 | /* 133730 */ GIR_EraseRootFromParent_Done, |
| 47698 | /* 133731 */ // Label 2911: @133731 |
| 47699 | /* 133731 */ GIM_Reject, |
| 47700 | /* 133732 */ // Label 2903: @133732 |
| 47701 | /* 133732 */ GIM_Reject, |
| 47702 | /* 133733 */ // Label 2891: @133733 |
| 47703 | /* 133733 */ GIM_Try, /*On fail goto*//*Label 2912*/ GIMT_Encode4(134596), |
| 47704 | /* 133738 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 47705 | /* 133741 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 47706 | /* 133744 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 47707 | /* 133747 */ GIM_Try, /*On fail goto*//*Label 2913*/ GIMT_Encode4(133792), // Rule ID 4471 // |
| 47708 | /* 133752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47709 | /* 133755 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47710 | /* 133759 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47711 | /* 133763 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47712 | /* 133767 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47713 | /* 133771 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47714 | /* 133777 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47715 | /* 133779 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47716 | /* 133781 */ // (vselect:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src, immAllZerosV:{ *:[v4f32] }) => (VMOVAPSZ128rrkz:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src) |
| 47717 | /* 133781 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128rrkz), |
| 47718 | /* 133784 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47719 | /* 133786 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47720 | /* 133788 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 47721 | /* 133790 */ GIR_RootConstrainSelectedInstOperands, |
| 47722 | /* 133791 */ // GIR_Coverage, 4471, |
| 47723 | /* 133791 */ GIR_EraseRootFromParent_Done, |
| 47724 | /* 133792 */ // Label 2913: @133792 |
| 47725 | /* 133792 */ GIM_Try, /*On fail goto*//*Label 2914*/ GIMT_Encode4(133837), // Rule ID 4529 // |
| 47726 | /* 133797 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47727 | /* 133800 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47728 | /* 133804 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47729 | /* 133808 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47730 | /* 133812 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47731 | /* 133816 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47732 | /* 133822 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47733 | /* 133824 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47734 | /* 133826 */ // (vselect:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src, immAllZerosV:{ *:[v4i32] }) => (VMOVDQA32Z128rrkz:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src) |
| 47735 | /* 133826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Z128rrkz), |
| 47736 | /* 133829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47737 | /* 133831 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47738 | /* 133833 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 47739 | /* 133835 */ GIR_RootConstrainSelectedInstOperands, |
| 47740 | /* 133836 */ // GIR_Coverage, 4529, |
| 47741 | /* 133836 */ GIR_EraseRootFromParent_Done, |
| 47742 | /* 133837 */ // Label 2914: @133837 |
| 47743 | /* 133837 */ GIM_Try, /*On fail goto*//*Label 2915*/ GIMT_Encode4(133986), // Rule ID 19769 // |
| 47744 | /* 133842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 47745 | /* 133845 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47746 | /* 133849 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47747 | /* 133853 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47748 | /* 133857 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47749 | /* 133861 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47750 | /* 133867 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47751 | /* 133869 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47752 | /* 133871 */ // (vselect:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src1, immAllZerosV:{ *:[v4f32] }) => (EXTRACT_SUBREG:{ *:[v4f32] } (VMOVAPSZrrkz:{ *:[v16f32] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4WM:{ *:[v4i1] }:$mask, VK16WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16f32] } (IMPLICIT_DEF:{ *:[v16f32] }), VR128X:{ *:[v4f32] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 47753 | /* 133871 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 47754 | /* 133874 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47755 | /* 133878 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47756 | /* 133883 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47757 | /* 133885 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 47758 | /* 133888 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47759 | /* 133892 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47760 | /* 133897 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47761 | /* 133900 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47762 | /* 133904 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/11, |
| 47763 | /* 133907 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47764 | /* 133912 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47765 | /* 133917 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47766 | /* 133922 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 47767 | /* 133925 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47768 | /* 133929 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47769 | /* 133934 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47770 | /* 133938 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 47771 | /* 133943 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 47772 | /* 133946 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrkz), |
| 47773 | /* 133950 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47774 | /* 133955 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47775 | /* 133958 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47776 | /* 133961 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47777 | /* 133963 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47778 | /* 133966 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47779 | /* 133968 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47780 | /* 133975 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47781 | /* 133980 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47782 | /* 133985 */ // GIR_Coverage, 19769, |
| 47783 | /* 133985 */ GIR_EraseRootFromParent_Done, |
| 47784 | /* 133986 */ // Label 2915: @133986 |
| 47785 | /* 133986 */ GIM_Try, /*On fail goto*//*Label 2916*/ GIMT_Encode4(134135), // Rule ID 19771 // |
| 47786 | /* 133991 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 47787 | /* 133994 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47788 | /* 133998 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47789 | /* 134002 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47790 | /* 134006 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47791 | /* 134010 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47792 | /* 134016 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47793 | /* 134018 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47794 | /* 134020 */ // (vselect:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src1, immAllZerosV:{ *:[v4i32] }) => (EXTRACT_SUBREG:{ *:[v4i32] } (VMOVDQA32Zrrkz:{ *:[v16i32] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4WM:{ *:[v4i1] }:$mask, VK16WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 47795 | /* 134020 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 47796 | /* 134023 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47797 | /* 134027 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47798 | /* 134032 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47799 | /* 134034 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 47800 | /* 134037 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47801 | /* 134041 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47802 | /* 134046 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47803 | /* 134049 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47804 | /* 134053 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/11, |
| 47805 | /* 134056 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47806 | /* 134061 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47807 | /* 134066 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47808 | /* 134071 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 47809 | /* 134074 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47810 | /* 134078 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47811 | /* 134083 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47812 | /* 134087 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 47813 | /* 134092 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 47814 | /* 134095 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrkz), |
| 47815 | /* 134099 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47816 | /* 134104 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47817 | /* 134107 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47818 | /* 134110 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47819 | /* 134112 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47820 | /* 134115 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47821 | /* 134117 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47822 | /* 134124 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47823 | /* 134129 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47824 | /* 134134 */ // GIR_Coverage, 19771, |
| 47825 | /* 134134 */ GIR_EraseRootFromParent_Done, |
| 47826 | /* 134135 */ // Label 2916: @134135 |
| 47827 | /* 134135 */ GIM_Try, /*On fail goto*//*Label 2917*/ GIMT_Encode4(134172), // Rule ID 4473 // |
| 47828 | /* 134140 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47829 | /* 134143 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47830 | /* 134147 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47831 | /* 134151 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47832 | /* 134155 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47833 | /* 134159 */ // (vselect:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src0) => (VMOVAPSZ128rrk:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src0, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src1) |
| 47834 | /* 134159 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128rrk), |
| 47835 | /* 134162 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47836 | /* 134164 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47837 | /* 134166 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47838 | /* 134168 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47839 | /* 134170 */ GIR_RootConstrainSelectedInstOperands, |
| 47840 | /* 134171 */ // GIR_Coverage, 4473, |
| 47841 | /* 134171 */ GIR_EraseRootFromParent_Done, |
| 47842 | /* 134172 */ // Label 2917: @134172 |
| 47843 | /* 134172 */ GIM_Try, /*On fail goto*//*Label 2918*/ GIMT_Encode4(134209), // Rule ID 4530 // |
| 47844 | /* 134177 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47845 | /* 134180 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47846 | /* 134184 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47847 | /* 134188 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47848 | /* 134192 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47849 | /* 134196 */ // (vselect:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src0) => (VMOVDQA32Z128rrk:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src0, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src1) |
| 47850 | /* 134196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Z128rrk), |
| 47851 | /* 134199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47852 | /* 134201 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47853 | /* 134203 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47854 | /* 134205 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47855 | /* 134207 */ GIR_RootConstrainSelectedInstOperands, |
| 47856 | /* 134208 */ // GIR_Coverage, 4530, |
| 47857 | /* 134208 */ GIR_EraseRootFromParent_Done, |
| 47858 | /* 134209 */ // Label 2918: @134209 |
| 47859 | /* 134209 */ GIM_Try, /*On fail goto*//*Label 2919*/ GIMT_Encode4(134402), // Rule ID 19768 // |
| 47860 | /* 134214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 47861 | /* 134217 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47862 | /* 134221 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47863 | /* 134225 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47864 | /* 134229 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47865 | /* 134233 */ // (vselect:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src0) => (EXTRACT_SUBREG:{ *:[v4f32] } (VMOVAPSZrrk:{ *:[v16f32] } (INSERT_SUBREG:{ *:[v16f32] } (IMPLICIT_DEF:{ *:[v16f32] }), VR128X:{ *:[v4f32] }:$src0, sub_xmm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK4WM:{ *:[v4i1] }:$mask, VK16WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16f32] } (IMPLICIT_DEF:{ *:[v16f32] }), VR128X:{ *:[v4f32] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 47866 | /* 134233 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 47867 | /* 134236 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47868 | /* 134240 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47869 | /* 134245 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47870 | /* 134247 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 47871 | /* 134250 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47872 | /* 134254 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47873 | /* 134259 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47874 | /* 134262 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47875 | /* 134266 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/11, |
| 47876 | /* 134269 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47877 | /* 134274 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47878 | /* 134279 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47879 | /* 134284 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s1, |
| 47880 | /* 134287 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47881 | /* 134291 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47882 | /* 134296 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47883 | /* 134300 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 47884 | /* 134305 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 47885 | /* 134308 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47886 | /* 134312 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47887 | /* 134317 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47888 | /* 134319 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 47889 | /* 134322 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47890 | /* 134326 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47891 | /* 134331 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47892 | /* 134334 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 47893 | /* 134338 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 47894 | /* 134341 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47895 | /* 134346 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47896 | /* 134351 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47897 | /* 134356 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 47898 | /* 134359 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrk), |
| 47899 | /* 134363 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47900 | /* 134368 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47901 | /* 134371 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 47902 | /* 134374 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 47903 | /* 134377 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47904 | /* 134379 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47905 | /* 134382 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47906 | /* 134384 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47907 | /* 134391 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47908 | /* 134396 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47909 | /* 134401 */ // GIR_Coverage, 19768, |
| 47910 | /* 134401 */ GIR_EraseRootFromParent_Done, |
| 47911 | /* 134402 */ // Label 2919: @134402 |
| 47912 | /* 134402 */ GIM_Try, /*On fail goto*//*Label 2920*/ GIMT_Encode4(134595), // Rule ID 19770 // |
| 47913 | /* 134407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 47914 | /* 134410 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47915 | /* 134414 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47916 | /* 134418 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47917 | /* 134422 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47918 | /* 134426 */ // (vselect:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src0) => (EXTRACT_SUBREG:{ *:[v4i32] } (VMOVDQA32Zrrk:{ *:[v16i32] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src0, sub_xmm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK4WM:{ *:[v4i1] }:$mask, VK16WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 47919 | /* 134426 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 47920 | /* 134429 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47921 | /* 134433 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47922 | /* 134438 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47923 | /* 134440 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 47924 | /* 134443 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47925 | /* 134447 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47926 | /* 134452 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47927 | /* 134455 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47928 | /* 134459 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/11, |
| 47929 | /* 134462 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47930 | /* 134467 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47931 | /* 134472 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47932 | /* 134477 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s1, |
| 47933 | /* 134480 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47934 | /* 134484 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47935 | /* 134489 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47936 | /* 134493 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 47937 | /* 134498 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 47938 | /* 134501 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47939 | /* 134505 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47940 | /* 134510 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47941 | /* 134512 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 47942 | /* 134515 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47943 | /* 134519 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47944 | /* 134524 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47945 | /* 134527 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 47946 | /* 134531 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 47947 | /* 134534 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47948 | /* 134539 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47949 | /* 134544 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47950 | /* 134549 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 47951 | /* 134552 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrk), |
| 47952 | /* 134556 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 47953 | /* 134561 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47954 | /* 134564 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 47955 | /* 134567 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 47956 | /* 134570 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47957 | /* 134572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47958 | /* 134575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47959 | /* 134577 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47960 | /* 134584 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47961 | /* 134589 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47962 | /* 134594 */ // GIR_Coverage, 19770, |
| 47963 | /* 134594 */ GIR_EraseRootFromParent_Done, |
| 47964 | /* 134595 */ // Label 2920: @134595 |
| 47965 | /* 134595 */ GIM_Reject, |
| 47966 | /* 134596 */ // Label 2912: @134596 |
| 47967 | /* 134596 */ GIM_Reject, |
| 47968 | /* 134597 */ // Label 2892: @134597 |
| 47969 | /* 134597 */ GIM_Try, /*On fail goto*//*Label 2921*/ GIMT_Encode4(135376), |
| 47970 | /* 134602 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 47971 | /* 134605 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 47972 | /* 134608 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 47973 | /* 134611 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47974 | /* 134615 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47975 | /* 134619 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47976 | /* 134623 */ GIM_Try, /*On fail goto*//*Label 2922*/ GIMT_Encode4(134656), // Rule ID 4484 // |
| 47977 | /* 134628 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47978 | /* 134631 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47979 | /* 134635 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47980 | /* 134641 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47981 | /* 134643 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47982 | /* 134645 */ // (vselect:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src, immAllZerosV:{ *:[v4f64] }) => (VMOVAPDZ256rrkz:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src) |
| 47983 | /* 134645 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ256rrkz), |
| 47984 | /* 134648 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47985 | /* 134650 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47986 | /* 134652 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 47987 | /* 134654 */ GIR_RootConstrainSelectedInstOperands, |
| 47988 | /* 134655 */ // GIR_Coverage, 4484, |
| 47989 | /* 134655 */ GIR_EraseRootFromParent_Done, |
| 47990 | /* 134656 */ // Label 2922: @134656 |
| 47991 | /* 134656 */ GIM_Try, /*On fail goto*//*Label 2923*/ GIMT_Encode4(134689), // Rule ID 4538 // |
| 47992 | /* 134661 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47993 | /* 134664 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47994 | /* 134668 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47995 | /* 134674 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47996 | /* 134676 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47997 | /* 134678 */ // (vselect:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src, immAllZerosV:{ *:[v4i64] }) => (VMOVDQA64Z256rrkz:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src) |
| 47998 | /* 134678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rrkz), |
| 47999 | /* 134681 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48000 | /* 134683 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48001 | /* 134685 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48002 | /* 134687 */ GIR_RootConstrainSelectedInstOperands, |
| 48003 | /* 134688 */ // GIR_Coverage, 4538, |
| 48004 | /* 134688 */ GIR_EraseRootFromParent_Done, |
| 48005 | /* 134689 */ // Label 2923: @134689 |
| 48006 | /* 134689 */ GIM_Try, /*On fail goto*//*Label 2924*/ GIMT_Encode4(134826), // Rule ID 19781 // |
| 48007 | /* 134694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 48008 | /* 134697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48009 | /* 134701 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48010 | /* 134707 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48011 | /* 134709 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48012 | /* 134711 */ // (vselect:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src1, immAllZerosV:{ *:[v4f64] }) => (EXTRACT_SUBREG:{ *:[v4f64] } (VMOVAPDZrrkz:{ *:[v8f64] } (COPY_TO_REGCLASS:{ *:[v8i1] } VK4WM:{ *:[v4i1] }:$mask, VK8WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8f64] } (IMPLICIT_DEF:{ *:[v8f64] }), VR256X:{ *:[v4f64] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 48013 | /* 134711 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 48014 | /* 134714 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48015 | /* 134718 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48016 | /* 134723 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48017 | /* 134725 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 48018 | /* 134728 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48019 | /* 134732 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48020 | /* 134737 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48021 | /* 134740 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48022 | /* 134744 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/12, |
| 48023 | /* 134747 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48024 | /* 134752 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48025 | /* 134757 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48026 | /* 134762 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s1, |
| 48027 | /* 134765 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48028 | /* 134769 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48029 | /* 134774 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48030 | /* 134778 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 48031 | /* 134783 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 48032 | /* 134786 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrkz), |
| 48033 | /* 134790 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48034 | /* 134795 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48035 | /* 134798 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48036 | /* 134801 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48037 | /* 134803 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48038 | /* 134806 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48039 | /* 134808 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48040 | /* 134815 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48041 | /* 134820 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48042 | /* 134825 */ // GIR_Coverage, 19781, |
| 48043 | /* 134825 */ GIR_EraseRootFromParent_Done, |
| 48044 | /* 134826 */ // Label 2924: @134826 |
| 48045 | /* 134826 */ GIM_Try, /*On fail goto*//*Label 2925*/ GIMT_Encode4(134963), // Rule ID 19783 // |
| 48046 | /* 134831 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 48047 | /* 134834 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48048 | /* 134838 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48049 | /* 134844 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48050 | /* 134846 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48051 | /* 134848 */ // (vselect:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src1, immAllZerosV:{ *:[v4i64] }) => (EXTRACT_SUBREG:{ *:[v4i64] } (VMOVDQA64Zrrkz:{ *:[v8i64] } (COPY_TO_REGCLASS:{ *:[v8i1] } VK4WM:{ *:[v4i1] }:$mask, VK8WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 48052 | /* 134848 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 48053 | /* 134851 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48054 | /* 134855 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48055 | /* 134860 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48056 | /* 134862 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 48057 | /* 134865 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48058 | /* 134869 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48059 | /* 134874 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48060 | /* 134877 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48061 | /* 134881 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/12, |
| 48062 | /* 134884 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48063 | /* 134889 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48064 | /* 134894 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48065 | /* 134899 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s1, |
| 48066 | /* 134902 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48067 | /* 134906 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48068 | /* 134911 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48069 | /* 134915 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 48070 | /* 134920 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 48071 | /* 134923 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrkz), |
| 48072 | /* 134927 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48073 | /* 134932 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48074 | /* 134935 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48075 | /* 134938 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48076 | /* 134940 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48077 | /* 134943 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48078 | /* 134945 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48079 | /* 134952 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48080 | /* 134957 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48081 | /* 134962 */ // GIR_Coverage, 19783, |
| 48082 | /* 134962 */ GIR_EraseRootFromParent_Done, |
| 48083 | /* 134963 */ // Label 2925: @134963 |
| 48084 | /* 134963 */ GIM_Try, /*On fail goto*//*Label 2926*/ GIMT_Encode4(134988), // Rule ID 4486 // |
| 48085 | /* 134968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 48086 | /* 134971 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48087 | /* 134975 */ // (vselect:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src0) => (VMOVAPDZ256rrk:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src0, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src1) |
| 48088 | /* 134975 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ256rrk), |
| 48089 | /* 134978 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48090 | /* 134980 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48091 | /* 134982 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48092 | /* 134984 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48093 | /* 134986 */ GIR_RootConstrainSelectedInstOperands, |
| 48094 | /* 134987 */ // GIR_Coverage, 4486, |
| 48095 | /* 134987 */ GIR_EraseRootFromParent_Done, |
| 48096 | /* 134988 */ // Label 2926: @134988 |
| 48097 | /* 134988 */ GIM_Try, /*On fail goto*//*Label 2927*/ GIMT_Encode4(135013), // Rule ID 4540 // |
| 48098 | /* 134993 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 48099 | /* 134996 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48100 | /* 135000 */ // (vselect:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src0) => (VMOVDQA64Z256rrk:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src0, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src1) |
| 48101 | /* 135000 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rrk), |
| 48102 | /* 135003 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48103 | /* 135005 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48104 | /* 135007 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48105 | /* 135009 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48106 | /* 135011 */ GIR_RootConstrainSelectedInstOperands, |
| 48107 | /* 135012 */ // GIR_Coverage, 4540, |
| 48108 | /* 135012 */ GIR_EraseRootFromParent_Done, |
| 48109 | /* 135013 */ // Label 2927: @135013 |
| 48110 | /* 135013 */ GIM_Try, /*On fail goto*//*Label 2928*/ GIMT_Encode4(135194), // Rule ID 19780 // |
| 48111 | /* 135018 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 48112 | /* 135021 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48113 | /* 135025 */ // (vselect:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src0) => (EXTRACT_SUBREG:{ *:[v4f64] } (VMOVAPDZrrk:{ *:[v8f64] } (INSERT_SUBREG:{ *:[v8f64] } (IMPLICIT_DEF:{ *:[v8f64] }), VR256X:{ *:[v4f64] }:$src0, sub_ymm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v8i1] } VK4WM:{ *:[v4i1] }:$mask, VK8WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8f64] } (IMPLICIT_DEF:{ *:[v8f64] }), VR256X:{ *:[v4f64] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 48114 | /* 135025 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 48115 | /* 135028 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48116 | /* 135032 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48117 | /* 135037 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48118 | /* 135039 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 48119 | /* 135042 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48120 | /* 135046 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48121 | /* 135051 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48122 | /* 135054 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48123 | /* 135058 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/12, |
| 48124 | /* 135061 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48125 | /* 135066 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48126 | /* 135071 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48127 | /* 135076 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s1, |
| 48128 | /* 135079 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48129 | /* 135083 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48130 | /* 135088 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48131 | /* 135092 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 48132 | /* 135097 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 48133 | /* 135100 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48134 | /* 135104 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48135 | /* 135109 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48136 | /* 135111 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 48137 | /* 135114 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48138 | /* 135118 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48139 | /* 135123 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48140 | /* 135126 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48141 | /* 135130 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 48142 | /* 135133 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48143 | /* 135138 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48144 | /* 135143 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48145 | /* 135148 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 48146 | /* 135151 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrk), |
| 48147 | /* 135155 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48148 | /* 135160 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48149 | /* 135163 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48150 | /* 135166 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48151 | /* 135169 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48152 | /* 135171 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48153 | /* 135174 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48154 | /* 135176 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48155 | /* 135183 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48156 | /* 135188 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48157 | /* 135193 */ // GIR_Coverage, 19780, |
| 48158 | /* 135193 */ GIR_EraseRootFromParent_Done, |
| 48159 | /* 135194 */ // Label 2928: @135194 |
| 48160 | /* 135194 */ GIM_Try, /*On fail goto*//*Label 2929*/ GIMT_Encode4(135375), // Rule ID 19782 // |
| 48161 | /* 135199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 48162 | /* 135202 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48163 | /* 135206 */ // (vselect:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src0) => (EXTRACT_SUBREG:{ *:[v4i64] } (VMOVDQA64Zrrk:{ *:[v8i64] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src0, sub_ymm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v8i1] } VK4WM:{ *:[v4i1] }:$mask, VK8WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 48164 | /* 135206 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 48165 | /* 135209 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48166 | /* 135213 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48167 | /* 135218 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48168 | /* 135220 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 48169 | /* 135223 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48170 | /* 135227 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48171 | /* 135232 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48172 | /* 135235 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48173 | /* 135239 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/12, |
| 48174 | /* 135242 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48175 | /* 135247 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48176 | /* 135252 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48177 | /* 135257 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s1, |
| 48178 | /* 135260 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48179 | /* 135264 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48180 | /* 135269 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48181 | /* 135273 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 48182 | /* 135278 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 48183 | /* 135281 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48184 | /* 135285 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48185 | /* 135290 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48186 | /* 135292 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 48187 | /* 135295 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48188 | /* 135299 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48189 | /* 135304 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48190 | /* 135307 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48191 | /* 135311 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 48192 | /* 135314 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48193 | /* 135319 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48194 | /* 135324 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48195 | /* 135329 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 48196 | /* 135332 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrk), |
| 48197 | /* 135336 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48198 | /* 135341 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48199 | /* 135344 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48200 | /* 135347 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48201 | /* 135350 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48202 | /* 135352 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48203 | /* 135355 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48204 | /* 135357 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48205 | /* 135364 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48206 | /* 135369 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48207 | /* 135374 */ // GIR_Coverage, 19782, |
| 48208 | /* 135374 */ GIR_EraseRootFromParent_Done, |
| 48209 | /* 135375 */ // Label 2929: @135375 |
| 48210 | /* 135375 */ GIM_Reject, |
| 48211 | /* 135376 */ // Label 2921: @135376 |
| 48212 | /* 135376 */ GIM_Reject, |
| 48213 | /* 135377 */ // Label 2893: @135377 |
| 48214 | /* 135377 */ GIM_Try, /*On fail goto*//*Label 2930*/ GIMT_Encode4(136534), |
| 48215 | /* 135382 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 48216 | /* 135385 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 48217 | /* 135388 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 48218 | /* 135391 */ GIM_Try, /*On fail goto*//*Label 2931*/ GIMT_Encode4(135470), // Rule ID 19867 // |
| 48219 | /* 135396 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48220 | /* 135399 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48221 | /* 135403 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48222 | /* 135407 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48223 | /* 135411 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 48224 | /* 135415 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 48225 | /* 135418 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 48226 | /* 135422 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 48227 | /* 135426 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 48228 | /* 135430 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 48229 | /* 135434 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48230 | /* 135440 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 48231 | /* 135442 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 48232 | /* 135444 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 48233 | /* 135451 */ // (vselect:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>>, immAllZerosV:{ *:[v8f16] }) => (VMOVDQU16Z128rmkz:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 48234 | /* 135451 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rmkz), |
| 48235 | /* 135454 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48236 | /* 135456 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48237 | /* 135458 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 48238 | /* 135462 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 48239 | /* 135468 */ GIR_RootConstrainSelectedInstOperands, |
| 48240 | /* 135469 */ // GIR_Coverage, 19867, |
| 48241 | /* 135469 */ GIR_EraseRootFromParent_Done, |
| 48242 | /* 135470 */ // Label 2931: @135470 |
| 48243 | /* 135470 */ GIM_Try, /*On fail goto*//*Label 2932*/ GIMT_Encode4(135545), // Rule ID 19869 // |
| 48244 | /* 135475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48245 | /* 135478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48246 | /* 135482 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48247 | /* 135486 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48248 | /* 135490 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 48249 | /* 135494 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 48250 | /* 135497 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 48251 | /* 135501 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 48252 | /* 135505 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 48253 | /* 135509 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48254 | /* 135515 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 48255 | /* 135517 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 48256 | /* 135519 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 48257 | /* 135526 */ // (vselect:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, immAllZerosV:{ *:[v8f16] }) => (VMOVDQU16Z128rmkz:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 48258 | /* 135526 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rmkz), |
| 48259 | /* 135529 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48260 | /* 135531 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48261 | /* 135533 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 48262 | /* 135537 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 48263 | /* 135543 */ GIR_RootConstrainSelectedInstOperands, |
| 48264 | /* 135544 */ // GIR_Coverage, 19869, |
| 48265 | /* 135544 */ GIR_EraseRootFromParent_Done, |
| 48266 | /* 135545 */ // Label 2932: @135545 |
| 48267 | /* 135545 */ GIM_Try, /*On fail goto*//*Label 2933*/ GIMT_Encode4(135617), // Rule ID 19866 // |
| 48268 | /* 135550 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48269 | /* 135553 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48270 | /* 135557 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48271 | /* 135561 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48272 | /* 135565 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 48273 | /* 135569 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 48274 | /* 135572 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 48275 | /* 135576 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 48276 | /* 135580 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 48277 | /* 135584 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48278 | /* 135588 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48279 | /* 135590 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 48280 | /* 135597 */ // (vselect:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>>, VR128X:{ *:[v8f16] }:$src0) => (VMOVDQU16Z128rmk:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src0, VK8WM:{ *:[v8i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 48281 | /* 135597 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rmk), |
| 48282 | /* 135600 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48283 | /* 135602 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48284 | /* 135604 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48285 | /* 135606 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 48286 | /* 135610 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 48287 | /* 135615 */ GIR_RootConstrainSelectedInstOperands, |
| 48288 | /* 135616 */ // GIR_Coverage, 19866, |
| 48289 | /* 135616 */ GIR_EraseRootFromParent_Done, |
| 48290 | /* 135617 */ // Label 2933: @135617 |
| 48291 | /* 135617 */ GIM_Try, /*On fail goto*//*Label 2934*/ GIMT_Encode4(135685), // Rule ID 19868 // |
| 48292 | /* 135622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48293 | /* 135625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48294 | /* 135629 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48295 | /* 135633 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48296 | /* 135637 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 48297 | /* 135641 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 48298 | /* 135644 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 48299 | /* 135648 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 48300 | /* 135652 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48301 | /* 135656 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48302 | /* 135658 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 48303 | /* 135665 */ // (vselect:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src0) => (VMOVDQU16Z128rmk:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src0, VK8WM:{ *:[v8i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 48304 | /* 135665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rmk), |
| 48305 | /* 135668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48306 | /* 135670 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48307 | /* 135672 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48308 | /* 135674 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 48309 | /* 135678 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 48310 | /* 135683 */ GIR_RootConstrainSelectedInstOperands, |
| 48311 | /* 135684 */ // GIR_Coverage, 19868, |
| 48312 | /* 135684 */ GIR_EraseRootFromParent_Done, |
| 48313 | /* 135685 */ // Label 2934: @135685 |
| 48314 | /* 135685 */ GIM_Try, /*On fail goto*//*Label 2935*/ GIMT_Encode4(135730), // Rule ID 4571 // |
| 48315 | /* 135690 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48316 | /* 135693 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48317 | /* 135697 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48318 | /* 135701 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48319 | /* 135705 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48320 | /* 135709 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48321 | /* 135715 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48322 | /* 135717 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48323 | /* 135719 */ // (vselect:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src, immAllZerosV:{ *:[v8i16] }) => (VMOVDQU16Z128rrkz:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src) |
| 48324 | /* 135719 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rrkz), |
| 48325 | /* 135722 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48326 | /* 135724 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48327 | /* 135726 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48328 | /* 135728 */ GIR_RootConstrainSelectedInstOperands, |
| 48329 | /* 135729 */ // GIR_Coverage, 4571, |
| 48330 | /* 135729 */ GIR_EraseRootFromParent_Done, |
| 48331 | /* 135730 */ // Label 2935: @135730 |
| 48332 | /* 135730 */ GIM_Try, /*On fail goto*//*Label 2936*/ GIMT_Encode4(135879), // Rule ID 19789 // |
| 48333 | /* 135735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 48334 | /* 135738 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 48335 | /* 135742 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48336 | /* 135746 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48337 | /* 135750 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48338 | /* 135754 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48339 | /* 135760 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48340 | /* 135762 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48341 | /* 135764 */ // (vselect:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src1, immAllZerosV:{ *:[v8i16] }) => (EXTRACT_SUBREG:{ *:[v8i16] } (VMOVDQU16Zrrkz:{ *:[v32i16] } (COPY_TO_REGCLASS:{ *:[v32i1] } VK8WM:{ *:[v8i1] }:$mask, VK32WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 48342 | /* 135764 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 48343 | /* 135767 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48344 | /* 135771 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48345 | /* 135776 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48346 | /* 135778 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 48347 | /* 135781 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48348 | /* 135785 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48349 | /* 135790 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48350 | /* 135793 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48351 | /* 135797 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/11, |
| 48352 | /* 135800 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48353 | /* 135805 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48354 | /* 135810 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48355 | /* 135815 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s1, |
| 48356 | /* 135818 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48357 | /* 135822 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48358 | /* 135827 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48359 | /* 135831 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 48360 | /* 135836 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 48361 | /* 135839 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 48362 | /* 135843 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48363 | /* 135848 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48364 | /* 135851 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48365 | /* 135854 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48366 | /* 135856 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48367 | /* 135859 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48368 | /* 135861 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 48369 | /* 135868 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 48370 | /* 135873 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48371 | /* 135878 */ // GIR_Coverage, 19789, |
| 48372 | /* 135878 */ GIR_EraseRootFromParent_Done, |
| 48373 | /* 135879 */ // Label 2936: @135879 |
| 48374 | /* 135879 */ GIM_Try, /*On fail goto*//*Label 2937*/ GIMT_Encode4(136028), // Rule ID 19793 // |
| 48375 | /* 135884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 48376 | /* 135887 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 48377 | /* 135891 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48378 | /* 135895 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48379 | /* 135899 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48380 | /* 135903 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48381 | /* 135909 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48382 | /* 135911 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48383 | /* 135913 */ // (vselect:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8f16] }:$src1, immAllZerosV:{ *:[v8f16] }) => (EXTRACT_SUBREG:{ *:[v8f16] } (VMOVDQU16Zrrkz:{ *:[v32f16] } (COPY_TO_REGCLASS:{ *:[v32i1] } VK8WM:{ *:[v8i1] }:$mask, VK32WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32f16] } (IMPLICIT_DEF:{ *:[v32f16] }), VR128X:{ *:[v8f16] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 48384 | /* 135913 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 48385 | /* 135916 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48386 | /* 135920 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48387 | /* 135925 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48388 | /* 135927 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 48389 | /* 135930 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48390 | /* 135934 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48391 | /* 135939 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48392 | /* 135942 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48393 | /* 135946 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/11, |
| 48394 | /* 135949 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48395 | /* 135954 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48396 | /* 135959 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48397 | /* 135964 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s1, |
| 48398 | /* 135967 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48399 | /* 135971 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48400 | /* 135976 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48401 | /* 135980 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 48402 | /* 135985 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 48403 | /* 135988 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 48404 | /* 135992 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48405 | /* 135997 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48406 | /* 136000 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48407 | /* 136003 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48408 | /* 136005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48409 | /* 136008 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48410 | /* 136010 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 48411 | /* 136017 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 48412 | /* 136022 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48413 | /* 136027 */ // GIR_Coverage, 19793, |
| 48414 | /* 136027 */ GIR_EraseRootFromParent_Done, |
| 48415 | /* 136028 */ // Label 2937: @136028 |
| 48416 | /* 136028 */ GIM_Try, /*On fail goto*//*Label 2938*/ GIMT_Encode4(136073), // Rule ID 19865 // |
| 48417 | /* 136033 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48418 | /* 136036 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48419 | /* 136040 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48420 | /* 136044 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48421 | /* 136048 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48422 | /* 136052 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48423 | /* 136058 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48424 | /* 136060 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48425 | /* 136062 */ // (vselect:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8f16] }:$src1, immAllZerosV:{ *:[v8f16] }) => (VMOVDQU16Z128rrkz:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8f16] }:$src1) |
| 48426 | /* 136062 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rrkz), |
| 48427 | /* 136065 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48428 | /* 136067 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48429 | /* 136069 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48430 | /* 136071 */ GIR_RootConstrainSelectedInstOperands, |
| 48431 | /* 136072 */ // GIR_Coverage, 19865, |
| 48432 | /* 136072 */ GIR_EraseRootFromParent_Done, |
| 48433 | /* 136073 */ // Label 2938: @136073 |
| 48434 | /* 136073 */ GIM_Try, /*On fail goto*//*Label 2939*/ GIMT_Encode4(136110), // Rule ID 4572 // |
| 48435 | /* 136078 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48436 | /* 136081 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48437 | /* 136085 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48438 | /* 136089 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48439 | /* 136093 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48440 | /* 136097 */ // (vselect:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src0) => (VMOVDQU16Z128rrk:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src1) |
| 48441 | /* 136097 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rrk), |
| 48442 | /* 136100 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48443 | /* 136102 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48444 | /* 136104 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48445 | /* 136106 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48446 | /* 136108 */ GIR_RootConstrainSelectedInstOperands, |
| 48447 | /* 136109 */ // GIR_Coverage, 4572, |
| 48448 | /* 136109 */ GIR_EraseRootFromParent_Done, |
| 48449 | /* 136110 */ // Label 2939: @136110 |
| 48450 | /* 136110 */ GIM_Try, /*On fail goto*//*Label 2940*/ GIMT_Encode4(136303), // Rule ID 19788 // |
| 48451 | /* 136115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 48452 | /* 136118 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 48453 | /* 136122 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48454 | /* 136126 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48455 | /* 136130 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48456 | /* 136134 */ // (vselect:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src0) => (EXTRACT_SUBREG:{ *:[v8i16] } (VMOVDQU16Zrrk:{ *:[v32i16] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src0, sub_xmm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v32i1] } VK8WM:{ *:[v8i1] }:$mask, VK32WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 48457 | /* 136134 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 48458 | /* 136137 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48459 | /* 136141 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48460 | /* 136146 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48461 | /* 136148 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 48462 | /* 136151 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48463 | /* 136155 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48464 | /* 136160 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48465 | /* 136163 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48466 | /* 136167 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/11, |
| 48467 | /* 136170 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48468 | /* 136175 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48469 | /* 136180 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48470 | /* 136185 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s1, |
| 48471 | /* 136188 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48472 | /* 136192 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48473 | /* 136197 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48474 | /* 136201 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 48475 | /* 136206 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 48476 | /* 136209 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48477 | /* 136213 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48478 | /* 136218 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48479 | /* 136220 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 48480 | /* 136223 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48481 | /* 136227 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48482 | /* 136232 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48483 | /* 136235 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48484 | /* 136239 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 48485 | /* 136242 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48486 | /* 136247 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48487 | /* 136252 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48488 | /* 136257 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 48489 | /* 136260 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 48490 | /* 136264 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48491 | /* 136269 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48492 | /* 136272 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48493 | /* 136275 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48494 | /* 136278 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48495 | /* 136280 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48496 | /* 136283 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48497 | /* 136285 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 48498 | /* 136292 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 48499 | /* 136297 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48500 | /* 136302 */ // GIR_Coverage, 19788, |
| 48501 | /* 136302 */ GIR_EraseRootFromParent_Done, |
| 48502 | /* 136303 */ // Label 2940: @136303 |
| 48503 | /* 136303 */ GIM_Try, /*On fail goto*//*Label 2941*/ GIMT_Encode4(136496), // Rule ID 19792 // |
| 48504 | /* 136308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 48505 | /* 136311 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 48506 | /* 136315 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48507 | /* 136319 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48508 | /* 136323 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48509 | /* 136327 */ // (vselect:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src0) => (EXTRACT_SUBREG:{ *:[v8f16] } (VMOVDQU16Zrrk:{ *:[v32f16] } (INSERT_SUBREG:{ *:[v32f16] } (IMPLICIT_DEF:{ *:[v32f16] }), VR128X:{ *:[v8f16] }:$src0, sub_xmm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v32i1] } VK8WM:{ *:[v8i1] }:$mask, VK32WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32f16] } (IMPLICIT_DEF:{ *:[v32f16] }), VR128X:{ *:[v8f16] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 48510 | /* 136327 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 48511 | /* 136330 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48512 | /* 136334 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48513 | /* 136339 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48514 | /* 136341 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 48515 | /* 136344 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48516 | /* 136348 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48517 | /* 136353 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48518 | /* 136356 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48519 | /* 136360 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/11, |
| 48520 | /* 136363 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48521 | /* 136368 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48522 | /* 136373 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48523 | /* 136378 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s1, |
| 48524 | /* 136381 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48525 | /* 136385 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48526 | /* 136390 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48527 | /* 136394 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 48528 | /* 136399 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 48529 | /* 136402 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48530 | /* 136406 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48531 | /* 136411 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48532 | /* 136413 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 48533 | /* 136416 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48534 | /* 136420 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48535 | /* 136425 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48536 | /* 136428 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48537 | /* 136432 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 48538 | /* 136435 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48539 | /* 136440 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48540 | /* 136445 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48541 | /* 136450 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 48542 | /* 136453 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 48543 | /* 136457 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48544 | /* 136462 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48545 | /* 136465 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48546 | /* 136468 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48547 | /* 136471 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48548 | /* 136473 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48549 | /* 136476 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48550 | /* 136478 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 48551 | /* 136485 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 48552 | /* 136490 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48553 | /* 136495 */ // GIR_Coverage, 19792, |
| 48554 | /* 136495 */ GIR_EraseRootFromParent_Done, |
| 48555 | /* 136496 */ // Label 2941: @136496 |
| 48556 | /* 136496 */ GIM_Try, /*On fail goto*//*Label 2942*/ GIMT_Encode4(136533), // Rule ID 19864 // |
| 48557 | /* 136501 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48558 | /* 136504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48559 | /* 136508 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48560 | /* 136512 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48561 | /* 136516 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48562 | /* 136520 */ // (vselect:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src0) => (VMOVDQU16Z128rrk:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8f16] }:$src1) |
| 48563 | /* 136520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rrk), |
| 48564 | /* 136523 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48565 | /* 136525 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48566 | /* 136527 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48567 | /* 136529 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48568 | /* 136531 */ GIR_RootConstrainSelectedInstOperands, |
| 48569 | /* 136532 */ // GIR_Coverage, 19864, |
| 48570 | /* 136532 */ GIR_EraseRootFromParent_Done, |
| 48571 | /* 136533 */ // Label 2942: @136533 |
| 48572 | /* 136533 */ GIM_Reject, |
| 48573 | /* 136534 */ // Label 2930: @136534 |
| 48574 | /* 136534 */ GIM_Reject, |
| 48575 | /* 136535 */ // Label 2894: @136535 |
| 48576 | /* 136535 */ GIM_Try, /*On fail goto*//*Label 2943*/ GIMT_Encode4(137314), |
| 48577 | /* 136540 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 48578 | /* 136543 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 48579 | /* 136546 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 48580 | /* 136549 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48581 | /* 136553 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48582 | /* 136557 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48583 | /* 136561 */ GIM_Try, /*On fail goto*//*Label 2944*/ GIMT_Encode4(136594), // Rule ID 4466 // |
| 48584 | /* 136566 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 48585 | /* 136569 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48586 | /* 136573 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48587 | /* 136579 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48588 | /* 136581 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48589 | /* 136583 */ // (vselect:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src, immAllZerosV:{ *:[v8f32] }) => (VMOVAPSZ256rrkz:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src) |
| 48590 | /* 136583 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256rrkz), |
| 48591 | /* 136586 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48592 | /* 136588 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48593 | /* 136590 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48594 | /* 136592 */ GIR_RootConstrainSelectedInstOperands, |
| 48595 | /* 136593 */ // GIR_Coverage, 4466, |
| 48596 | /* 136593 */ GIR_EraseRootFromParent_Done, |
| 48597 | /* 136594 */ // Label 2944: @136594 |
| 48598 | /* 136594 */ GIM_Try, /*On fail goto*//*Label 2945*/ GIMT_Encode4(136627), // Rule ID 4525 // |
| 48599 | /* 136599 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 48600 | /* 136602 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48601 | /* 136606 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48602 | /* 136612 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48603 | /* 136614 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48604 | /* 136616 */ // (vselect:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src, immAllZerosV:{ *:[v8i32] }) => (VMOVDQA32Z256rrkz:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src) |
| 48605 | /* 136616 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Z256rrkz), |
| 48606 | /* 136619 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48607 | /* 136621 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48608 | /* 136623 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48609 | /* 136625 */ GIR_RootConstrainSelectedInstOperands, |
| 48610 | /* 136626 */ // GIR_Coverage, 4525, |
| 48611 | /* 136626 */ GIR_EraseRootFromParent_Done, |
| 48612 | /* 136627 */ // Label 2945: @136627 |
| 48613 | /* 136627 */ GIM_Try, /*On fail goto*//*Label 2946*/ GIMT_Encode4(136764), // Rule ID 19773 // |
| 48614 | /* 136632 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 48615 | /* 136635 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48616 | /* 136639 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48617 | /* 136645 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48618 | /* 136647 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48619 | /* 136649 */ // (vselect:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src1, immAllZerosV:{ *:[v8f32] }) => (EXTRACT_SUBREG:{ *:[v8f32] } (VMOVAPSZrrkz:{ *:[v16f32] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8WM:{ *:[v8i1] }:$mask, VK16WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16f32] } (IMPLICIT_DEF:{ *:[v16f32] }), VR256X:{ *:[v8f32] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 48620 | /* 136649 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 48621 | /* 136652 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48622 | /* 136656 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48623 | /* 136661 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48624 | /* 136663 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 48625 | /* 136666 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48626 | /* 136670 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48627 | /* 136675 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48628 | /* 136678 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48629 | /* 136682 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/12, |
| 48630 | /* 136685 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48631 | /* 136690 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48632 | /* 136695 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48633 | /* 136700 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 48634 | /* 136703 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48635 | /* 136707 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48636 | /* 136712 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48637 | /* 136716 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 48638 | /* 136721 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 48639 | /* 136724 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrkz), |
| 48640 | /* 136728 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48641 | /* 136733 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48642 | /* 136736 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48643 | /* 136739 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48644 | /* 136741 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48645 | /* 136744 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48646 | /* 136746 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48647 | /* 136753 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48648 | /* 136758 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48649 | /* 136763 */ // GIR_Coverage, 19773, |
| 48650 | /* 136763 */ GIR_EraseRootFromParent_Done, |
| 48651 | /* 136764 */ // Label 2946: @136764 |
| 48652 | /* 136764 */ GIM_Try, /*On fail goto*//*Label 2947*/ GIMT_Encode4(136901), // Rule ID 19775 // |
| 48653 | /* 136769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 48654 | /* 136772 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48655 | /* 136776 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48656 | /* 136782 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48657 | /* 136784 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48658 | /* 136786 */ // (vselect:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src1, immAllZerosV:{ *:[v8i32] }) => (EXTRACT_SUBREG:{ *:[v8i32] } (VMOVDQA32Zrrkz:{ *:[v16i32] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8WM:{ *:[v8i1] }:$mask, VK16WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 48659 | /* 136786 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 48660 | /* 136789 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48661 | /* 136793 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48662 | /* 136798 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48663 | /* 136800 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 48664 | /* 136803 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48665 | /* 136807 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48666 | /* 136812 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48667 | /* 136815 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48668 | /* 136819 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/12, |
| 48669 | /* 136822 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48670 | /* 136827 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48671 | /* 136832 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48672 | /* 136837 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 48673 | /* 136840 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48674 | /* 136844 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48675 | /* 136849 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48676 | /* 136853 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 48677 | /* 136858 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 48678 | /* 136861 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrkz), |
| 48679 | /* 136865 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48680 | /* 136870 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48681 | /* 136873 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48682 | /* 136876 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48683 | /* 136878 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48684 | /* 136881 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48685 | /* 136883 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48686 | /* 136890 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48687 | /* 136895 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48688 | /* 136900 */ // GIR_Coverage, 19775, |
| 48689 | /* 136900 */ GIR_EraseRootFromParent_Done, |
| 48690 | /* 136901 */ // Label 2947: @136901 |
| 48691 | /* 136901 */ GIM_Try, /*On fail goto*//*Label 2948*/ GIMT_Encode4(136926), // Rule ID 4468 // |
| 48692 | /* 136906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 48693 | /* 136909 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48694 | /* 136913 */ // (vselect:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src0) => (VMOVAPSZ256rrk:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src1) |
| 48695 | /* 136913 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256rrk), |
| 48696 | /* 136916 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48697 | /* 136918 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48698 | /* 136920 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48699 | /* 136922 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48700 | /* 136924 */ GIR_RootConstrainSelectedInstOperands, |
| 48701 | /* 136925 */ // GIR_Coverage, 4468, |
| 48702 | /* 136925 */ GIR_EraseRootFromParent_Done, |
| 48703 | /* 136926 */ // Label 2948: @136926 |
| 48704 | /* 136926 */ GIM_Try, /*On fail goto*//*Label 2949*/ GIMT_Encode4(136951), // Rule ID 4526 // |
| 48705 | /* 136931 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 48706 | /* 136934 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48707 | /* 136938 */ // (vselect:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src0) => (VMOVDQA32Z256rrk:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src1) |
| 48708 | /* 136938 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Z256rrk), |
| 48709 | /* 136941 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48710 | /* 136943 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48711 | /* 136945 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48712 | /* 136947 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48713 | /* 136949 */ GIR_RootConstrainSelectedInstOperands, |
| 48714 | /* 136950 */ // GIR_Coverage, 4526, |
| 48715 | /* 136950 */ GIR_EraseRootFromParent_Done, |
| 48716 | /* 136951 */ // Label 2949: @136951 |
| 48717 | /* 136951 */ GIM_Try, /*On fail goto*//*Label 2950*/ GIMT_Encode4(137132), // Rule ID 19772 // |
| 48718 | /* 136956 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 48719 | /* 136959 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48720 | /* 136963 */ // (vselect:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src0) => (EXTRACT_SUBREG:{ *:[v8f32] } (VMOVAPSZrrk:{ *:[v16f32] } (INSERT_SUBREG:{ *:[v16f32] } (IMPLICIT_DEF:{ *:[v16f32] }), VR256X:{ *:[v8f32] }:$src0, sub_ymm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK8WM:{ *:[v8i1] }:$mask, VK16WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16f32] } (IMPLICIT_DEF:{ *:[v16f32] }), VR256X:{ *:[v8f32] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 48721 | /* 136963 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 48722 | /* 136966 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48723 | /* 136970 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48724 | /* 136975 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48725 | /* 136977 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 48726 | /* 136980 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48727 | /* 136984 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48728 | /* 136989 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48729 | /* 136992 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48730 | /* 136996 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/12, |
| 48731 | /* 136999 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48732 | /* 137004 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48733 | /* 137009 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48734 | /* 137014 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s1, |
| 48735 | /* 137017 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48736 | /* 137021 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48737 | /* 137026 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48738 | /* 137030 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 48739 | /* 137035 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 48740 | /* 137038 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48741 | /* 137042 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48742 | /* 137047 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48743 | /* 137049 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 48744 | /* 137052 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48745 | /* 137056 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48746 | /* 137061 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48747 | /* 137064 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48748 | /* 137068 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 48749 | /* 137071 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48750 | /* 137076 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48751 | /* 137081 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48752 | /* 137086 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 48753 | /* 137089 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrk), |
| 48754 | /* 137093 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48755 | /* 137098 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48756 | /* 137101 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48757 | /* 137104 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48758 | /* 137107 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48759 | /* 137109 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48760 | /* 137112 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48761 | /* 137114 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48762 | /* 137121 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48763 | /* 137126 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48764 | /* 137131 */ // GIR_Coverage, 19772, |
| 48765 | /* 137131 */ GIR_EraseRootFromParent_Done, |
| 48766 | /* 137132 */ // Label 2950: @137132 |
| 48767 | /* 137132 */ GIM_Try, /*On fail goto*//*Label 2951*/ GIMT_Encode4(137313), // Rule ID 19774 // |
| 48768 | /* 137137 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 48769 | /* 137140 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48770 | /* 137144 */ // (vselect:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src0) => (EXTRACT_SUBREG:{ *:[v8i32] } (VMOVDQA32Zrrk:{ *:[v16i32] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src0, sub_ymm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v16i1] } VK8WM:{ *:[v8i1] }:$mask, VK16WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 48771 | /* 137144 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 48772 | /* 137147 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48773 | /* 137151 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48774 | /* 137156 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48775 | /* 137158 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 48776 | /* 137161 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48777 | /* 137165 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48778 | /* 137170 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48779 | /* 137173 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48780 | /* 137177 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/12, |
| 48781 | /* 137180 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48782 | /* 137185 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48783 | /* 137190 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48784 | /* 137195 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s1, |
| 48785 | /* 137198 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48786 | /* 137202 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48787 | /* 137207 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48788 | /* 137211 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 48789 | /* 137216 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 48790 | /* 137219 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48791 | /* 137223 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48792 | /* 137228 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48793 | /* 137230 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 48794 | /* 137233 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48795 | /* 137237 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48796 | /* 137242 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48797 | /* 137245 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48798 | /* 137249 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 48799 | /* 137252 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48800 | /* 137257 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48801 | /* 137262 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48802 | /* 137267 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 48803 | /* 137270 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrk), |
| 48804 | /* 137274 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48805 | /* 137279 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48806 | /* 137282 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48807 | /* 137285 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48808 | /* 137288 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48809 | /* 137290 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48810 | /* 137293 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48811 | /* 137295 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48812 | /* 137302 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48813 | /* 137307 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48814 | /* 137312 */ // GIR_Coverage, 19774, |
| 48815 | /* 137312 */ GIR_EraseRootFromParent_Done, |
| 48816 | /* 137313 */ // Label 2951: @137313 |
| 48817 | /* 137313 */ GIM_Reject, |
| 48818 | /* 137314 */ // Label 2943: @137314 |
| 48819 | /* 137314 */ GIM_Reject, |
| 48820 | /* 137315 */ // Label 2895: @137315 |
| 48821 | /* 137315 */ GIM_Try, /*On fail goto*//*Label 2952*/ GIMT_Encode4(137695), |
| 48822 | /* 137320 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 48823 | /* 137323 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 48824 | /* 137326 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 48825 | /* 137329 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48826 | /* 137333 */ GIM_Try, /*On fail goto*//*Label 2953*/ GIMT_Encode4(137402), // Rule ID 19766 // |
| 48827 | /* 137338 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 48828 | /* 137342 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 48829 | /* 137346 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 48830 | /* 137350 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 48831 | /* 137354 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 48832 | /* 137359 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 48833 | /* 137363 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48834 | /* 137369 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 48835 | /* 137371 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/0, /*OpIdx*/2, // MIs[3] |
| 48836 | /* 137375 */ GIM_CheckOpcodeIsEither, /*MI*/3, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48837 | /* 137381 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/3, |
| 48838 | /* 137383 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48839 | /* 137387 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 48840 | /* 137389 */ // (vselect:{ *:[v8i64] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$mask, immAllOnesV:{ *:[v8i1] }), immAllZerosV:{ *:[v8i64] }, VR512:{ *:[v8i64] }:$src) => (VMOVDQA64Zrrkz:{ *:[v8i64] } VK8:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src) |
| 48841 | /* 137389 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrkz), |
| 48842 | /* 137392 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48843 | /* 137394 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // mask |
| 48844 | /* 137398 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 48845 | /* 137400 */ GIR_RootConstrainSelectedInstOperands, |
| 48846 | /* 137401 */ // GIR_Coverage, 19766, |
| 48847 | /* 137401 */ GIR_EraseRootFromParent_Done, |
| 48848 | /* 137402 */ // Label 2953: @137402 |
| 48849 | /* 137402 */ GIM_Try, /*On fail goto*//*Label 2954*/ GIMT_Encode4(137449), // Rule ID 3599 // |
| 48850 | /* 137407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48851 | /* 137410 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48852 | /* 137414 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48853 | /* 137418 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48854 | /* 137424 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 48855 | /* 137426 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 48856 | /* 137430 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48857 | /* 137436 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 48858 | /* 137438 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 48859 | /* 137440 */ // (vselect:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, immAllOnesV:{ *:[v8i64] }, immAllZerosV:{ *:[v8i64] }) => (AVX512_512_SEXT_MASK_64:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask) |
| 48860 | /* 137440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AVX512_512_SEXT_MASK_64), |
| 48861 | /* 137443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48862 | /* 137445 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48863 | /* 137447 */ GIR_RootConstrainSelectedInstOperands, |
| 48864 | /* 137448 */ // GIR_Coverage, 3599, |
| 48865 | /* 137448 */ GIR_EraseRootFromParent_Done, |
| 48866 | /* 137449 */ // Label 2954: @137449 |
| 48867 | /* 137449 */ GIM_Try, /*On fail goto*//*Label 2955*/ GIMT_Encode4(137546), // Rule ID 19764 // |
| 48868 | /* 137454 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48869 | /* 137458 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48870 | /* 137462 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48871 | /* 137468 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48872 | /* 137470 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48873 | /* 137474 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48874 | /* 137476 */ // (vselect:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8i64] }, VR512:{ *:[v8i64] }:$src) => (VMOVDQA64Zrrkz:{ *:[v8i64] } (COPY_TO_REGCLASS:{ *:[v8i1] } (KNOTWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$mask, VK16:{ *:[i32] })), VK8:{ *:[i32] }), VR512:{ *:[v8i64] }:$src) |
| 48875 | /* 137476 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 48876 | /* 137479 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48877 | /* 137483 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48878 | /* 137488 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48879 | /* 137492 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 48880 | /* 137497 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 48881 | /* 137500 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 48882 | /* 137504 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48883 | /* 137509 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48884 | /* 137512 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 48885 | /* 137514 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 48886 | /* 137517 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48887 | /* 137521 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 48888 | /* 137526 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48889 | /* 137529 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 48890 | /* 137534 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrkz), |
| 48891 | /* 137537 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48892 | /* 137539 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 48893 | /* 137542 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 48894 | /* 137544 */ GIR_RootConstrainSelectedInstOperands, |
| 48895 | /* 137545 */ // GIR_Coverage, 19764, |
| 48896 | /* 137545 */ GIR_EraseRootFromParent_Done, |
| 48897 | /* 137546 */ // Label 2955: @137546 |
| 48898 | /* 137546 */ GIM_Try, /*On fail goto*//*Label 2956*/ GIMT_Encode4(137587), // Rule ID 4479 // |
| 48899 | /* 137551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48900 | /* 137554 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48901 | /* 137558 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48902 | /* 137562 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48903 | /* 137566 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48904 | /* 137572 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48905 | /* 137574 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48906 | /* 137576 */ // (vselect:{ *:[v8f64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src, immAllZerosV:{ *:[v8f64] }) => (VMOVAPDZrrkz:{ *:[v8f64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src) |
| 48907 | /* 137576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrkz), |
| 48908 | /* 137579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48909 | /* 137581 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48910 | /* 137583 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48911 | /* 137585 */ GIR_RootConstrainSelectedInstOperands, |
| 48912 | /* 137586 */ // GIR_Coverage, 4479, |
| 48913 | /* 137586 */ GIR_EraseRootFromParent_Done, |
| 48914 | /* 137587 */ // Label 2956: @137587 |
| 48915 | /* 137587 */ GIM_Try, /*On fail goto*//*Label 2957*/ GIMT_Encode4(137628), // Rule ID 4533 // |
| 48916 | /* 137592 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48917 | /* 137595 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48918 | /* 137599 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48919 | /* 137603 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48920 | /* 137607 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48921 | /* 137613 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48922 | /* 137615 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48923 | /* 137617 */ // (vselect:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src, immAllZerosV:{ *:[v8i64] }) => (VMOVDQA64Zrrkz:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src) |
| 48924 | /* 137617 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrkz), |
| 48925 | /* 137620 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48926 | /* 137622 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48927 | /* 137624 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48928 | /* 137626 */ GIR_RootConstrainSelectedInstOperands, |
| 48929 | /* 137627 */ // GIR_Coverage, 4533, |
| 48930 | /* 137627 */ GIR_EraseRootFromParent_Done, |
| 48931 | /* 137628 */ // Label 2957: @137628 |
| 48932 | /* 137628 */ GIM_Try, /*On fail goto*//*Label 2958*/ GIMT_Encode4(137661), // Rule ID 4481 // |
| 48933 | /* 137633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48934 | /* 137636 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48935 | /* 137640 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48936 | /* 137644 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48937 | /* 137648 */ // (vselect:{ *:[v8f64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src0) => (VMOVAPDZrrk:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src1) |
| 48938 | /* 137648 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrk), |
| 48939 | /* 137651 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48940 | /* 137653 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48941 | /* 137655 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48942 | /* 137657 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48943 | /* 137659 */ GIR_RootConstrainSelectedInstOperands, |
| 48944 | /* 137660 */ // GIR_Coverage, 4481, |
| 48945 | /* 137660 */ GIR_EraseRootFromParent_Done, |
| 48946 | /* 137661 */ // Label 2958: @137661 |
| 48947 | /* 137661 */ GIM_Try, /*On fail goto*//*Label 2959*/ GIMT_Encode4(137694), // Rule ID 4535 // |
| 48948 | /* 137666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48949 | /* 137669 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48950 | /* 137673 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48951 | /* 137677 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48952 | /* 137681 */ // (vselect:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src0) => (VMOVDQA64Zrrk:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src1) |
| 48953 | /* 137681 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrk), |
| 48954 | /* 137684 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48955 | /* 137686 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48956 | /* 137688 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48957 | /* 137690 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48958 | /* 137692 */ GIR_RootConstrainSelectedInstOperands, |
| 48959 | /* 137693 */ // GIR_Coverage, 4535, |
| 48960 | /* 137693 */ GIR_EraseRootFromParent_Done, |
| 48961 | /* 137694 */ // Label 2959: @137694 |
| 48962 | /* 137694 */ GIM_Reject, |
| 48963 | /* 137695 */ // Label 2952: @137695 |
| 48964 | /* 137695 */ GIM_Reject, |
| 48965 | /* 137696 */ // Label 2896: @137696 |
| 48966 | /* 137696 */ GIM_Try, /*On fail goto*//*Label 2960*/ GIMT_Encode4(138135), |
| 48967 | /* 137701 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 48968 | /* 137704 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 48969 | /* 137707 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 48970 | /* 137710 */ GIM_Try, /*On fail goto*//*Label 2961*/ GIMT_Encode4(137755), // Rule ID 4559 // |
| 48971 | /* 137715 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48972 | /* 137718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48973 | /* 137722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 48974 | /* 137726 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48975 | /* 137730 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48976 | /* 137734 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48977 | /* 137740 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48978 | /* 137742 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48979 | /* 137744 */ // (vselect:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src, immAllZerosV:{ *:[v16i8] }) => (VMOVDQU8Z128rrkz:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src) |
| 48980 | /* 137744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Z128rrkz), |
| 48981 | /* 137747 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48982 | /* 137749 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48983 | /* 137751 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48984 | /* 137753 */ GIR_RootConstrainSelectedInstOperands, |
| 48985 | /* 137754 */ // GIR_Coverage, 4559, |
| 48986 | /* 137754 */ GIR_EraseRootFromParent_Done, |
| 48987 | /* 137755 */ // Label 2961: @137755 |
| 48988 | /* 137755 */ GIM_Try, /*On fail goto*//*Label 2962*/ GIMT_Encode4(137904), // Rule ID 19785 // |
| 48989 | /* 137760 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 48990 | /* 137763 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 48991 | /* 137767 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 48992 | /* 137771 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48993 | /* 137775 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48994 | /* 137779 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48995 | /* 137785 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48996 | /* 137787 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48997 | /* 137789 */ // (vselect:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src1, immAllZerosV:{ *:[v16i8] }) => (EXTRACT_SUBREG:{ *:[v16i8] } (VMOVDQU8Zrrkz:{ *:[v64i8] } (COPY_TO_REGCLASS:{ *:[v64i1] } VK16WM:{ *:[v16i1] }:$mask, VK64WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v64i8] } (IMPLICIT_DEF:{ *:[v64i8] }), VR128X:{ *:[v16i8] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 48998 | /* 137789 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v64s8, |
| 48999 | /* 137792 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49000 | /* 137796 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49001 | /* 137801 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 49002 | /* 137803 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 49003 | /* 137806 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49004 | /* 137810 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49005 | /* 137815 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 49006 | /* 137818 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 49007 | /* 137822 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/11, |
| 49008 | /* 137825 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49009 | /* 137830 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49010 | /* 137835 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 49011 | /* 137840 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s1, |
| 49012 | /* 137843 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49013 | /* 137847 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49014 | /* 137852 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49015 | /* 137856 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK64WMRegClassID), |
| 49016 | /* 137861 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 49017 | /* 137864 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrkz), |
| 49018 | /* 137868 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49019 | /* 137873 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 49020 | /* 137876 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 49021 | /* 137879 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49022 | /* 137881 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49023 | /* 137884 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49024 | /* 137886 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 49025 | /* 137893 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 49026 | /* 137898 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49027 | /* 137903 */ // GIR_Coverage, 19785, |
| 49028 | /* 137903 */ GIR_EraseRootFromParent_Done, |
| 49029 | /* 137904 */ // Label 2962: @137904 |
| 49030 | /* 137904 */ GIM_Try, /*On fail goto*//*Label 2963*/ GIMT_Encode4(137941), // Rule ID 4560 // |
| 49031 | /* 137909 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49032 | /* 137912 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49033 | /* 137916 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49034 | /* 137920 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49035 | /* 137924 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49036 | /* 137928 */ // (vselect:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src0) => (VMOVDQU8Z128rrk:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src0, VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src1) |
| 49037 | /* 137928 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Z128rrk), |
| 49038 | /* 137931 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49039 | /* 137933 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49040 | /* 137935 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49041 | /* 137937 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49042 | /* 137939 */ GIR_RootConstrainSelectedInstOperands, |
| 49043 | /* 137940 */ // GIR_Coverage, 4560, |
| 49044 | /* 137940 */ GIR_EraseRootFromParent_Done, |
| 49045 | /* 137941 */ // Label 2963: @137941 |
| 49046 | /* 137941 */ GIM_Try, /*On fail goto*//*Label 2964*/ GIMT_Encode4(138134), // Rule ID 19784 // |
| 49047 | /* 137946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 49048 | /* 137949 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 49049 | /* 137953 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49050 | /* 137957 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49051 | /* 137961 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49052 | /* 137965 */ // (vselect:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src0) => (EXTRACT_SUBREG:{ *:[v16i8] } (VMOVDQU8Zrrk:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v64i8] } (IMPLICIT_DEF:{ *:[v64i8] }), VR128X:{ *:[v16i8] }:$src0, sub_xmm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v64i1] } VK16WM:{ *:[v16i1] }:$mask, VK64WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v64i8] } (IMPLICIT_DEF:{ *:[v64i8] }), VR128X:{ *:[v16i8] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 49053 | /* 137965 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v64s8, |
| 49054 | /* 137968 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49055 | /* 137972 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49056 | /* 137977 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 49057 | /* 137979 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v64s8, |
| 49058 | /* 137982 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49059 | /* 137986 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49060 | /* 137991 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 49061 | /* 137994 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 49062 | /* 137998 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/11, |
| 49063 | /* 138001 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49064 | /* 138006 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49065 | /* 138011 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 49066 | /* 138016 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v64s1, |
| 49067 | /* 138019 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49068 | /* 138023 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49069 | /* 138028 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49070 | /* 138032 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK64WMRegClassID), |
| 49071 | /* 138037 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 49072 | /* 138040 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49073 | /* 138044 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49074 | /* 138049 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 49075 | /* 138051 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 49076 | /* 138054 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49077 | /* 138058 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49078 | /* 138063 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 49079 | /* 138066 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 49080 | /* 138070 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 49081 | /* 138073 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49082 | /* 138078 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49083 | /* 138083 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 49084 | /* 138088 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 49085 | /* 138091 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrk), |
| 49086 | /* 138095 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49087 | /* 138100 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 49088 | /* 138103 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 49089 | /* 138106 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 49090 | /* 138109 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49091 | /* 138111 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49092 | /* 138114 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49093 | /* 138116 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 49094 | /* 138123 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 49095 | /* 138128 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49096 | /* 138133 */ // GIR_Coverage, 19784, |
| 49097 | /* 138133 */ GIR_EraseRootFromParent_Done, |
| 49098 | /* 138134 */ // Label 2964: @138134 |
| 49099 | /* 138134 */ GIM_Reject, |
| 49100 | /* 138135 */ // Label 2960: @138135 |
| 49101 | /* 138135 */ GIM_Reject, |
| 49102 | /* 138136 */ // Label 2897: @138136 |
| 49103 | /* 138136 */ GIM_Try, /*On fail goto*//*Label 2965*/ GIMT_Encode4(139205), |
| 49104 | /* 138141 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 49105 | /* 138144 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 49106 | /* 138147 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 49107 | /* 138150 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49108 | /* 138154 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49109 | /* 138158 */ GIM_Try, /*On fail goto*//*Label 2966*/ GIMT_Encode4(138229), // Rule ID 19857 // |
| 49110 | /* 138163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49111 | /* 138166 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49112 | /* 138170 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49113 | /* 138174 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49114 | /* 138177 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49115 | /* 138181 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49116 | /* 138185 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 49117 | /* 138189 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 49118 | /* 138193 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49119 | /* 138199 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 49120 | /* 138201 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 49121 | /* 138203 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49122 | /* 138210 */ // (vselect:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>>, immAllZerosV:{ *:[v16f16] }) => (VMOVDQU16Z256rmkz:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 49123 | /* 138210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rmkz), |
| 49124 | /* 138213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49125 | /* 138215 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49126 | /* 138217 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49127 | /* 138221 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 49128 | /* 138227 */ GIR_RootConstrainSelectedInstOperands, |
| 49129 | /* 138228 */ // GIR_Coverage, 19857, |
| 49130 | /* 138228 */ GIR_EraseRootFromParent_Done, |
| 49131 | /* 138229 */ // Label 2966: @138229 |
| 49132 | /* 138229 */ GIM_Try, /*On fail goto*//*Label 2967*/ GIMT_Encode4(138296), // Rule ID 19859 // |
| 49133 | /* 138234 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49134 | /* 138237 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49135 | /* 138241 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49136 | /* 138245 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49137 | /* 138248 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49138 | /* 138252 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49139 | /* 138256 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 49140 | /* 138260 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49141 | /* 138266 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 49142 | /* 138268 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 49143 | /* 138270 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49144 | /* 138277 */ // (vselect:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, immAllZerosV:{ *:[v16f16] }) => (VMOVDQU16Z256rmkz:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 49145 | /* 138277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rmkz), |
| 49146 | /* 138280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49147 | /* 138282 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49148 | /* 138284 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49149 | /* 138288 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 49150 | /* 138294 */ GIR_RootConstrainSelectedInstOperands, |
| 49151 | /* 138295 */ // GIR_Coverage, 19859, |
| 49152 | /* 138295 */ GIR_EraseRootFromParent_Done, |
| 49153 | /* 138296 */ // Label 2967: @138296 |
| 49154 | /* 138296 */ GIM_Try, /*On fail goto*//*Label 2968*/ GIMT_Encode4(138360), // Rule ID 19856 // |
| 49155 | /* 138301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49156 | /* 138304 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49157 | /* 138308 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49158 | /* 138312 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49159 | /* 138315 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49160 | /* 138319 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49161 | /* 138323 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 49162 | /* 138327 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49163 | /* 138331 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49164 | /* 138333 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49165 | /* 138340 */ // (vselect:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>>, VR256X:{ *:[v16f16] }:$src0) => (VMOVDQU16Z256rmk:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src0, VK16WM:{ *:[v16i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 49166 | /* 138340 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rmk), |
| 49167 | /* 138343 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49168 | /* 138345 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49169 | /* 138347 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49170 | /* 138349 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49171 | /* 138353 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49172 | /* 138358 */ GIR_RootConstrainSelectedInstOperands, |
| 49173 | /* 138359 */ // GIR_Coverage, 19856, |
| 49174 | /* 138359 */ GIR_EraseRootFromParent_Done, |
| 49175 | /* 138360 */ // Label 2968: @138360 |
| 49176 | /* 138360 */ GIM_Try, /*On fail goto*//*Label 2969*/ GIMT_Encode4(138420), // Rule ID 19858 // |
| 49177 | /* 138365 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49178 | /* 138368 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49179 | /* 138372 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49180 | /* 138376 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49181 | /* 138379 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49182 | /* 138383 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49183 | /* 138387 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49184 | /* 138391 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49185 | /* 138393 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49186 | /* 138400 */ // (vselect:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src0) => (VMOVDQU16Z256rmk:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src0, VK16WM:{ *:[v16i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 49187 | /* 138400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rmk), |
| 49188 | /* 138403 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49189 | /* 138405 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49190 | /* 138407 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49191 | /* 138409 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49192 | /* 138413 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49193 | /* 138418 */ GIR_RootConstrainSelectedInstOperands, |
| 49194 | /* 138419 */ // GIR_Coverage, 19858, |
| 49195 | /* 138419 */ GIR_EraseRootFromParent_Done, |
| 49196 | /* 138420 */ // Label 2969: @138420 |
| 49197 | /* 138420 */ GIM_Try, /*On fail goto*//*Label 2970*/ GIMT_Encode4(138457), // Rule ID 4567 // |
| 49198 | /* 138425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49199 | /* 138428 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49200 | /* 138432 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49201 | /* 138436 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49202 | /* 138442 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49203 | /* 138444 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49204 | /* 138446 */ // (vselect:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src, immAllZerosV:{ *:[v16i16] }) => (VMOVDQU16Z256rrkz:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src) |
| 49205 | /* 138446 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rrkz), |
| 49206 | /* 138449 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49207 | /* 138451 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49208 | /* 138453 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49209 | /* 138455 */ GIR_RootConstrainSelectedInstOperands, |
| 49210 | /* 138456 */ // GIR_Coverage, 4567, |
| 49211 | /* 138456 */ GIR_EraseRootFromParent_Done, |
| 49212 | /* 138457 */ // Label 2970: @138457 |
| 49213 | /* 138457 */ GIM_Try, /*On fail goto*//*Label 2971*/ GIMT_Encode4(138598), // Rule ID 19791 // |
| 49214 | /* 138462 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 49215 | /* 138465 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49216 | /* 138469 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49217 | /* 138473 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49218 | /* 138479 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49219 | /* 138481 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49220 | /* 138483 */ // (vselect:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src1, immAllZerosV:{ *:[v16i16] }) => (EXTRACT_SUBREG:{ *:[v16i16] } (VMOVDQU16Zrrkz:{ *:[v32i16] } (COPY_TO_REGCLASS:{ *:[v32i1] } VK16WM:{ *:[v16i1] }:$mask, VK32WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 49221 | /* 138483 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 49222 | /* 138486 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49223 | /* 138490 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49224 | /* 138495 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 49225 | /* 138497 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 49226 | /* 138500 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49227 | /* 138504 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49228 | /* 138509 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 49229 | /* 138512 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 49230 | /* 138516 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/12, |
| 49231 | /* 138519 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49232 | /* 138524 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49233 | /* 138529 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49234 | /* 138534 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s1, |
| 49235 | /* 138537 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49236 | /* 138541 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49237 | /* 138546 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49238 | /* 138550 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 49239 | /* 138555 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 49240 | /* 138558 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 49241 | /* 138562 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49242 | /* 138567 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 49243 | /* 138570 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 49244 | /* 138573 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49245 | /* 138575 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49246 | /* 138578 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49247 | /* 138580 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 49248 | /* 138587 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 49249 | /* 138592 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49250 | /* 138597 */ // GIR_Coverage, 19791, |
| 49251 | /* 138597 */ GIR_EraseRootFromParent_Done, |
| 49252 | /* 138598 */ // Label 2971: @138598 |
| 49253 | /* 138598 */ GIM_Try, /*On fail goto*//*Label 2972*/ GIMT_Encode4(138739), // Rule ID 19795 // |
| 49254 | /* 138603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 49255 | /* 138606 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49256 | /* 138610 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49257 | /* 138614 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49258 | /* 138620 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49259 | /* 138622 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49260 | /* 138624 */ // (vselect:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16f16] }:$src1, immAllZerosV:{ *:[v16f16] }) => (EXTRACT_SUBREG:{ *:[v16f16] } (VMOVDQU16Zrrkz:{ *:[v32f16] } (COPY_TO_REGCLASS:{ *:[v32i1] } VK16WM:{ *:[v16i1] }:$mask, VK32WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32f16] } (IMPLICIT_DEF:{ *:[v32f16] }), VR256X:{ *:[v16f16] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 49261 | /* 138624 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 49262 | /* 138627 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49263 | /* 138631 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49264 | /* 138636 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 49265 | /* 138638 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 49266 | /* 138641 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49267 | /* 138645 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49268 | /* 138650 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 49269 | /* 138653 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 49270 | /* 138657 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/12, |
| 49271 | /* 138660 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49272 | /* 138665 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49273 | /* 138670 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49274 | /* 138675 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s1, |
| 49275 | /* 138678 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49276 | /* 138682 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49277 | /* 138687 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49278 | /* 138691 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 49279 | /* 138696 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 49280 | /* 138699 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 49281 | /* 138703 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49282 | /* 138708 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 49283 | /* 138711 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 49284 | /* 138714 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49285 | /* 138716 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49286 | /* 138719 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49287 | /* 138721 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 49288 | /* 138728 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 49289 | /* 138733 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49290 | /* 138738 */ // GIR_Coverage, 19795, |
| 49291 | /* 138738 */ GIR_EraseRootFromParent_Done, |
| 49292 | /* 138739 */ // Label 2972: @138739 |
| 49293 | /* 138739 */ GIM_Try, /*On fail goto*//*Label 2973*/ GIMT_Encode4(138776), // Rule ID 19855 // |
| 49294 | /* 138744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49295 | /* 138747 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49296 | /* 138751 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49297 | /* 138755 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49298 | /* 138761 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49299 | /* 138763 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49300 | /* 138765 */ // (vselect:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16f16] }:$src1, immAllZerosV:{ *:[v16f16] }) => (VMOVDQU16Z256rrkz:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16f16] }:$src1) |
| 49301 | /* 138765 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rrkz), |
| 49302 | /* 138768 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49303 | /* 138770 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49304 | /* 138772 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49305 | /* 138774 */ GIR_RootConstrainSelectedInstOperands, |
| 49306 | /* 138775 */ // GIR_Coverage, 19855, |
| 49307 | /* 138775 */ GIR_EraseRootFromParent_Done, |
| 49308 | /* 138776 */ // Label 2973: @138776 |
| 49309 | /* 138776 */ GIM_Try, /*On fail goto*//*Label 2974*/ GIMT_Encode4(138805), // Rule ID 4568 // |
| 49310 | /* 138781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49311 | /* 138784 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49312 | /* 138788 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49313 | /* 138792 */ // (vselect:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src0) => (VMOVDQU16Z256rrk:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src0, VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src1) |
| 49314 | /* 138792 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rrk), |
| 49315 | /* 138795 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49316 | /* 138797 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49317 | /* 138799 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49318 | /* 138801 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49319 | /* 138803 */ GIR_RootConstrainSelectedInstOperands, |
| 49320 | /* 138804 */ // GIR_Coverage, 4568, |
| 49321 | /* 138804 */ GIR_EraseRootFromParent_Done, |
| 49322 | /* 138805 */ // Label 2974: @138805 |
| 49323 | /* 138805 */ GIM_Try, /*On fail goto*//*Label 2975*/ GIMT_Encode4(138990), // Rule ID 19790 // |
| 49324 | /* 138810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 49325 | /* 138813 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49326 | /* 138817 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49327 | /* 138821 */ // (vselect:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src0) => (EXTRACT_SUBREG:{ *:[v16i16] } (VMOVDQU16Zrrk:{ *:[v32i16] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src0, sub_ymm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v32i1] } VK16WM:{ *:[v16i1] }:$mask, VK32WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 49328 | /* 138821 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 49329 | /* 138824 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49330 | /* 138828 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49331 | /* 138833 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 49332 | /* 138835 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 49333 | /* 138838 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49334 | /* 138842 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49335 | /* 138847 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 49336 | /* 138850 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 49337 | /* 138854 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/12, |
| 49338 | /* 138857 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49339 | /* 138862 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49340 | /* 138867 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49341 | /* 138872 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s1, |
| 49342 | /* 138875 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49343 | /* 138879 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49344 | /* 138884 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49345 | /* 138888 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 49346 | /* 138893 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 49347 | /* 138896 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49348 | /* 138900 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49349 | /* 138905 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 49350 | /* 138907 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 49351 | /* 138910 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49352 | /* 138914 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49353 | /* 138919 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 49354 | /* 138922 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 49355 | /* 138926 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 49356 | /* 138929 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49357 | /* 138934 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49358 | /* 138939 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49359 | /* 138944 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 49360 | /* 138947 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 49361 | /* 138951 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49362 | /* 138956 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 49363 | /* 138959 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 49364 | /* 138962 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 49365 | /* 138965 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49366 | /* 138967 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49367 | /* 138970 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49368 | /* 138972 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 49369 | /* 138979 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 49370 | /* 138984 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49371 | /* 138989 */ // GIR_Coverage, 19790, |
| 49372 | /* 138989 */ GIR_EraseRootFromParent_Done, |
| 49373 | /* 138990 */ // Label 2975: @138990 |
| 49374 | /* 138990 */ GIM_Try, /*On fail goto*//*Label 2976*/ GIMT_Encode4(139175), // Rule ID 19794 // |
| 49375 | /* 138995 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 49376 | /* 138998 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49377 | /* 139002 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49378 | /* 139006 */ // (vselect:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src0) => (EXTRACT_SUBREG:{ *:[v16f16] } (VMOVDQU16Zrrk:{ *:[v32f16] } (INSERT_SUBREG:{ *:[v32f16] } (IMPLICIT_DEF:{ *:[v32f16] }), VR256X:{ *:[v16f16] }:$src0, sub_ymm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v32i1] } VK16WM:{ *:[v16i1] }:$mask, VK32WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32f16] } (IMPLICIT_DEF:{ *:[v32f16] }), VR256X:{ *:[v16f16] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 49379 | /* 139006 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 49380 | /* 139009 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49381 | /* 139013 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49382 | /* 139018 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 49383 | /* 139020 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 49384 | /* 139023 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49385 | /* 139027 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49386 | /* 139032 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 49387 | /* 139035 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 49388 | /* 139039 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/12, |
| 49389 | /* 139042 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49390 | /* 139047 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49391 | /* 139052 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49392 | /* 139057 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s1, |
| 49393 | /* 139060 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49394 | /* 139064 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49395 | /* 139069 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49396 | /* 139073 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 49397 | /* 139078 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 49398 | /* 139081 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49399 | /* 139085 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49400 | /* 139090 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 49401 | /* 139092 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 49402 | /* 139095 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49403 | /* 139099 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49404 | /* 139104 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 49405 | /* 139107 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 49406 | /* 139111 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 49407 | /* 139114 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49408 | /* 139119 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49409 | /* 139124 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49410 | /* 139129 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 49411 | /* 139132 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 49412 | /* 139136 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49413 | /* 139141 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 49414 | /* 139144 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 49415 | /* 139147 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 49416 | /* 139150 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49417 | /* 139152 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49418 | /* 139155 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49419 | /* 139157 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 49420 | /* 139164 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 49421 | /* 139169 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49422 | /* 139174 */ // GIR_Coverage, 19794, |
| 49423 | /* 139174 */ GIR_EraseRootFromParent_Done, |
| 49424 | /* 139175 */ // Label 2976: @139175 |
| 49425 | /* 139175 */ GIM_Try, /*On fail goto*//*Label 2977*/ GIMT_Encode4(139204), // Rule ID 19854 // |
| 49426 | /* 139180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49427 | /* 139183 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49428 | /* 139187 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49429 | /* 139191 */ // (vselect:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src0) => (VMOVDQU16Z256rrk:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src0, VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16f16] }:$src1) |
| 49430 | /* 139191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rrk), |
| 49431 | /* 139194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49432 | /* 139196 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49433 | /* 139198 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49434 | /* 139200 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49435 | /* 139202 */ GIR_RootConstrainSelectedInstOperands, |
| 49436 | /* 139203 */ // GIR_Coverage, 19854, |
| 49437 | /* 139203 */ GIR_EraseRootFromParent_Done, |
| 49438 | /* 139204 */ // Label 2977: @139204 |
| 49439 | /* 139204 */ GIM_Reject, |
| 49440 | /* 139205 */ // Label 2965: @139205 |
| 49441 | /* 139205 */ GIM_Reject, |
| 49442 | /* 139206 */ // Label 2898: @139206 |
| 49443 | /* 139206 */ GIM_Try, /*On fail goto*//*Label 2978*/ GIMT_Encode4(139546), |
| 49444 | /* 139211 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 49445 | /* 139214 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 49446 | /* 139217 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 49447 | /* 139220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49448 | /* 139224 */ GIM_Try, /*On fail goto*//*Label 2979*/ GIMT_Encode4(139293), // Rule ID 19767 // |
| 49449 | /* 139229 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49450 | /* 139233 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 49451 | /* 139237 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 49452 | /* 139241 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 49453 | /* 139245 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 49454 | /* 139250 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 49455 | /* 139254 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49456 | /* 139260 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 49457 | /* 139262 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/0, /*OpIdx*/2, // MIs[3] |
| 49458 | /* 139266 */ GIM_CheckOpcodeIsEither, /*MI*/3, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49459 | /* 139272 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/3, |
| 49460 | /* 139274 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49461 | /* 139278 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 49462 | /* 139280 */ // (vselect:{ *:[v16i32] } (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$mask, immAllOnesV:{ *:[v16i1] }), immAllZerosV:{ *:[v16i32] }, VR512:{ *:[v16i32] }:$src) => (VMOVDQA32Zrrkz:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src) |
| 49463 | /* 139280 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrkz), |
| 49464 | /* 139283 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49465 | /* 139285 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // mask |
| 49466 | /* 139289 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 49467 | /* 139291 */ GIR_RootConstrainSelectedInstOperands, |
| 49468 | /* 139292 */ // GIR_Coverage, 19767, |
| 49469 | /* 139292 */ GIR_EraseRootFromParent_Done, |
| 49470 | /* 139293 */ // Label 2979: @139293 |
| 49471 | /* 139293 */ GIM_Try, /*On fail goto*//*Label 2980*/ GIMT_Encode4(139340), // Rule ID 3598 // |
| 49472 | /* 139298 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 49473 | /* 139301 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49474 | /* 139305 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49475 | /* 139309 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49476 | /* 139315 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 49477 | /* 139317 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 49478 | /* 139321 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49479 | /* 139327 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 49480 | /* 139329 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 49481 | /* 139331 */ // (vselect:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, immAllOnesV:{ *:[v16i32] }, immAllZerosV:{ *:[v16i32] }) => (AVX512_512_SEXT_MASK_32:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask) |
| 49482 | /* 139331 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AVX512_512_SEXT_MASK_32), |
| 49483 | /* 139334 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49484 | /* 139336 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49485 | /* 139338 */ GIR_RootConstrainSelectedInstOperands, |
| 49486 | /* 139339 */ // GIR_Coverage, 3598, |
| 49487 | /* 139339 */ GIR_EraseRootFromParent_Done, |
| 49488 | /* 139340 */ // Label 2980: @139340 |
| 49489 | /* 139340 */ GIM_Try, /*On fail goto*//*Label 2981*/ GIMT_Encode4(139397), // Rule ID 19765 // |
| 49490 | /* 139345 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49491 | /* 139349 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49492 | /* 139353 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49493 | /* 139359 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49494 | /* 139361 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49495 | /* 139365 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49496 | /* 139367 */ // (vselect:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, immAllZerosV:{ *:[v16i32] }, VR512:{ *:[v16i32] }:$src) => (VMOVDQA32Zrrkz:{ *:[v16i32] } (KNOTWkk:{ *:[v16i1] } VK16WM:{ *:[v16i1] }:$mask), VR512:{ *:[v16i32] }:$src) |
| 49497 | /* 139367 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 49498 | /* 139370 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 49499 | /* 139374 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49500 | /* 139379 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49501 | /* 139383 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49502 | /* 139385 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrkz), |
| 49503 | /* 139388 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49504 | /* 139390 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 49505 | /* 139393 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 49506 | /* 139395 */ GIR_RootConstrainSelectedInstOperands, |
| 49507 | /* 139396 */ // GIR_Coverage, 19765, |
| 49508 | /* 139396 */ GIR_EraseRootFromParent_Done, |
| 49509 | /* 139397 */ // Label 2981: @139397 |
| 49510 | /* 139397 */ GIM_Try, /*On fail goto*//*Label 2982*/ GIMT_Encode4(139438), // Rule ID 4461 // |
| 49511 | /* 139402 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 49512 | /* 139405 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49513 | /* 139409 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49514 | /* 139413 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49515 | /* 139417 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49516 | /* 139423 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49517 | /* 139425 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49518 | /* 139427 */ // (vselect:{ *:[v16f32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src, immAllZerosV:{ *:[v16f32] }) => (VMOVAPSZrrkz:{ *:[v16f32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src) |
| 49519 | /* 139427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrkz), |
| 49520 | /* 139430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49521 | /* 139432 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49522 | /* 139434 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49523 | /* 139436 */ GIR_RootConstrainSelectedInstOperands, |
| 49524 | /* 139437 */ // GIR_Coverage, 4461, |
| 49525 | /* 139437 */ GIR_EraseRootFromParent_Done, |
| 49526 | /* 139438 */ // Label 2982: @139438 |
| 49527 | /* 139438 */ GIM_Try, /*On fail goto*//*Label 2983*/ GIMT_Encode4(139479), // Rule ID 4521 // |
| 49528 | /* 139443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 49529 | /* 139446 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49530 | /* 139450 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49531 | /* 139454 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49532 | /* 139458 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49533 | /* 139464 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49534 | /* 139466 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49535 | /* 139468 */ // (vselect:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src, immAllZerosV:{ *:[v16i32] }) => (VMOVDQA32Zrrkz:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src) |
| 49536 | /* 139468 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrkz), |
| 49537 | /* 139471 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49538 | /* 139473 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49539 | /* 139475 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49540 | /* 139477 */ GIR_RootConstrainSelectedInstOperands, |
| 49541 | /* 139478 */ // GIR_Coverage, 4521, |
| 49542 | /* 139478 */ GIR_EraseRootFromParent_Done, |
| 49543 | /* 139479 */ // Label 2983: @139479 |
| 49544 | /* 139479 */ GIM_Try, /*On fail goto*//*Label 2984*/ GIMT_Encode4(139512), // Rule ID 4463 // |
| 49545 | /* 139484 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 49546 | /* 139487 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49547 | /* 139491 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49548 | /* 139495 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49549 | /* 139499 */ // (vselect:{ *:[v16f32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src0) => (VMOVAPSZrrk:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src0, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src1) |
| 49550 | /* 139499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrk), |
| 49551 | /* 139502 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49552 | /* 139504 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49553 | /* 139506 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49554 | /* 139508 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49555 | /* 139510 */ GIR_RootConstrainSelectedInstOperands, |
| 49556 | /* 139511 */ // GIR_Coverage, 4463, |
| 49557 | /* 139511 */ GIR_EraseRootFromParent_Done, |
| 49558 | /* 139512 */ // Label 2984: @139512 |
| 49559 | /* 139512 */ GIM_Try, /*On fail goto*//*Label 2985*/ GIMT_Encode4(139545), // Rule ID 4522 // |
| 49560 | /* 139517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 49561 | /* 139520 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49562 | /* 139524 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49563 | /* 139528 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49564 | /* 139532 */ // (vselect:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src0) => (VMOVDQA32Zrrk:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src0, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src1) |
| 49565 | /* 139532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrk), |
| 49566 | /* 139535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49567 | /* 139537 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49568 | /* 139539 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49569 | /* 139541 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49570 | /* 139543 */ GIR_RootConstrainSelectedInstOperands, |
| 49571 | /* 139544 */ // GIR_Coverage, 4522, |
| 49572 | /* 139544 */ GIR_EraseRootFromParent_Done, |
| 49573 | /* 139545 */ // Label 2985: @139545 |
| 49574 | /* 139545 */ GIM_Reject, |
| 49575 | /* 139546 */ // Label 2978: @139546 |
| 49576 | /* 139546 */ GIM_Reject, |
| 49577 | /* 139547 */ // Label 2899: @139547 |
| 49578 | /* 139547 */ GIM_Try, /*On fail goto*//*Label 2986*/ GIMT_Encode4(139950), |
| 49579 | /* 139552 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 49580 | /* 139555 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 49581 | /* 139558 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 49582 | /* 139561 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49583 | /* 139565 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32WMRegClassID), |
| 49584 | /* 139569 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49585 | /* 139573 */ GIM_Try, /*On fail goto*//*Label 2987*/ GIMT_Encode4(139606), // Rule ID 4555 // |
| 49586 | /* 139578 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49587 | /* 139581 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49588 | /* 139585 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49589 | /* 139591 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49590 | /* 139593 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49591 | /* 139595 */ // (vselect:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src, immAllZerosV:{ *:[v32i8] }) => (VMOVDQU8Z256rrkz:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src) |
| 49592 | /* 139595 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Z256rrkz), |
| 49593 | /* 139598 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49594 | /* 139600 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49595 | /* 139602 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49596 | /* 139604 */ GIR_RootConstrainSelectedInstOperands, |
| 49597 | /* 139605 */ // GIR_Coverage, 4555, |
| 49598 | /* 139605 */ GIR_EraseRootFromParent_Done, |
| 49599 | /* 139606 */ // Label 2987: @139606 |
| 49600 | /* 139606 */ GIM_Try, /*On fail goto*//*Label 2988*/ GIMT_Encode4(139743), // Rule ID 19787 // |
| 49601 | /* 139611 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 49602 | /* 139614 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49603 | /* 139618 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49604 | /* 139624 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49605 | /* 139626 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49606 | /* 139628 */ // (vselect:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src1, immAllZerosV:{ *:[v32i8] }) => (EXTRACT_SUBREG:{ *:[v32i8] } (VMOVDQU8Zrrkz:{ *:[v64i8] } (COPY_TO_REGCLASS:{ *:[v64i1] } VK32WM:{ *:[v32i1] }:$mask, VK64WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v64i8] } (IMPLICIT_DEF:{ *:[v64i8] }), VR256X:{ *:[v32i8] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 49607 | /* 139628 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v64s8, |
| 49608 | /* 139631 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49609 | /* 139635 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49610 | /* 139640 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 49611 | /* 139642 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 49612 | /* 139645 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49613 | /* 139649 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49614 | /* 139654 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 49615 | /* 139657 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 49616 | /* 139661 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/12, |
| 49617 | /* 139664 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49618 | /* 139669 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49619 | /* 139674 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49620 | /* 139679 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s1, |
| 49621 | /* 139682 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49622 | /* 139686 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49623 | /* 139691 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49624 | /* 139695 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK64WMRegClassID), |
| 49625 | /* 139700 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 49626 | /* 139703 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrkz), |
| 49627 | /* 139707 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49628 | /* 139712 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 49629 | /* 139715 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 49630 | /* 139718 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49631 | /* 139720 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49632 | /* 139723 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49633 | /* 139725 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 49634 | /* 139732 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 49635 | /* 139737 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49636 | /* 139742 */ // GIR_Coverage, 19787, |
| 49637 | /* 139742 */ GIR_EraseRootFromParent_Done, |
| 49638 | /* 139743 */ // Label 2988: @139743 |
| 49639 | /* 139743 */ GIM_Try, /*On fail goto*//*Label 2989*/ GIMT_Encode4(139768), // Rule ID 4556 // |
| 49640 | /* 139748 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49641 | /* 139751 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49642 | /* 139755 */ // (vselect:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src0) => (VMOVDQU8Z256rrk:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src0, VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src1) |
| 49643 | /* 139755 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Z256rrk), |
| 49644 | /* 139758 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49645 | /* 139760 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49646 | /* 139762 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49647 | /* 139764 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49648 | /* 139766 */ GIR_RootConstrainSelectedInstOperands, |
| 49649 | /* 139767 */ // GIR_Coverage, 4556, |
| 49650 | /* 139767 */ GIR_EraseRootFromParent_Done, |
| 49651 | /* 139768 */ // Label 2989: @139768 |
| 49652 | /* 139768 */ GIM_Try, /*On fail goto*//*Label 2990*/ GIMT_Encode4(139949), // Rule ID 19786 // |
| 49653 | /* 139773 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEVEX512_NoVLX), |
| 49654 | /* 139776 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49655 | /* 139780 */ // (vselect:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src0) => (EXTRACT_SUBREG:{ *:[v32i8] } (VMOVDQU8Zrrk:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v64i8] } (IMPLICIT_DEF:{ *:[v64i8] }), VR256X:{ *:[v32i8] }:$src0, sub_ymm:{ *:[i32] }), (COPY_TO_REGCLASS:{ *:[v64i1] } VK32WM:{ *:[v32i1] }:$mask, VK64WM:{ *:[i32] }), (INSERT_SUBREG:{ *:[v64i8] } (IMPLICIT_DEF:{ *:[v64i8] }), VR256X:{ *:[v32i8] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 49656 | /* 139780 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v64s8, |
| 49657 | /* 139783 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49658 | /* 139787 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49659 | /* 139792 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 49660 | /* 139794 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v64s8, |
| 49661 | /* 139797 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49662 | /* 139801 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49663 | /* 139806 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 49664 | /* 139809 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 49665 | /* 139813 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/12, |
| 49666 | /* 139816 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49667 | /* 139821 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49668 | /* 139826 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49669 | /* 139831 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v64s1, |
| 49670 | /* 139834 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49671 | /* 139838 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49672 | /* 139843 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49673 | /* 139847 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK64WMRegClassID), |
| 49674 | /* 139852 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 49675 | /* 139855 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49676 | /* 139859 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49677 | /* 139864 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 49678 | /* 139866 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 49679 | /* 139869 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49680 | /* 139873 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49681 | /* 139878 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 49682 | /* 139881 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 49683 | /* 139885 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 49684 | /* 139888 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49685 | /* 139893 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49686 | /* 139898 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49687 | /* 139903 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 49688 | /* 139906 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrk), |
| 49689 | /* 139910 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 49690 | /* 139915 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 49691 | /* 139918 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 49692 | /* 139921 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 49693 | /* 139924 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49694 | /* 139926 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49695 | /* 139929 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49696 | /* 139931 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 49697 | /* 139938 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 49698 | /* 139943 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49699 | /* 139948 */ // GIR_Coverage, 19786, |
| 49700 | /* 139948 */ GIR_EraseRootFromParent_Done, |
| 49701 | /* 139949 */ // Label 2990: @139949 |
| 49702 | /* 139949 */ GIM_Reject, |
| 49703 | /* 139950 */ // Label 2986: @139950 |
| 49704 | /* 139950 */ GIM_Reject, |
| 49705 | /* 139951 */ // Label 2900: @139951 |
| 49706 | /* 139951 */ GIM_Try, /*On fail goto*//*Label 2991*/ GIMT_Encode4(140368), |
| 49707 | /* 139956 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 49708 | /* 139959 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 49709 | /* 139962 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 49710 | /* 139965 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49711 | /* 139969 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32WMRegClassID), |
| 49712 | /* 139973 */ GIM_Try, /*On fail goto*//*Label 2992*/ GIMT_Encode4(140044), // Rule ID 19847 // |
| 49713 | /* 139978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49714 | /* 139981 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49715 | /* 139985 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49716 | /* 139989 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49717 | /* 139992 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49718 | /* 139996 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49719 | /* 140000 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 49720 | /* 140004 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 49721 | /* 140008 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49722 | /* 140014 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 49723 | /* 140016 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 49724 | /* 140018 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49725 | /* 140025 */ // (vselect:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>>, immAllZerosV:{ *:[v32f16] }) => (VMOVDQU16Zrmkz:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 49726 | /* 140025 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrmkz), |
| 49727 | /* 140028 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49728 | /* 140030 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49729 | /* 140032 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49730 | /* 140036 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 49731 | /* 140042 */ GIR_RootConstrainSelectedInstOperands, |
| 49732 | /* 140043 */ // GIR_Coverage, 19847, |
| 49733 | /* 140043 */ GIR_EraseRootFromParent_Done, |
| 49734 | /* 140044 */ // Label 2992: @140044 |
| 49735 | /* 140044 */ GIM_Try, /*On fail goto*//*Label 2993*/ GIMT_Encode4(140111), // Rule ID 19849 // |
| 49736 | /* 140049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49737 | /* 140052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49738 | /* 140056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49739 | /* 140060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49740 | /* 140063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49741 | /* 140067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49742 | /* 140071 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 49743 | /* 140075 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49744 | /* 140081 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 49745 | /* 140083 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 49746 | /* 140085 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49747 | /* 140092 */ // (vselect:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, immAllZerosV:{ *:[v32f16] }) => (VMOVDQU16Zrmkz:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 49748 | /* 140092 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrmkz), |
| 49749 | /* 140095 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49750 | /* 140097 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49751 | /* 140099 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49752 | /* 140103 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 49753 | /* 140109 */ GIR_RootConstrainSelectedInstOperands, |
| 49754 | /* 140110 */ // GIR_Coverage, 19849, |
| 49755 | /* 140110 */ GIR_EraseRootFromParent_Done, |
| 49756 | /* 140111 */ // Label 2993: @140111 |
| 49757 | /* 140111 */ GIM_Try, /*On fail goto*//*Label 2994*/ GIMT_Encode4(140175), // Rule ID 19846 // |
| 49758 | /* 140116 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49759 | /* 140119 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49760 | /* 140123 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49761 | /* 140127 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49762 | /* 140130 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49763 | /* 140134 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49764 | /* 140138 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 49765 | /* 140142 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49766 | /* 140146 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49767 | /* 140148 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49768 | /* 140155 */ // (vselect:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>>, VR512:{ *:[v32f16] }:$src0) => (VMOVDQU16Zrmk:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src0, VK32WM:{ *:[v32i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 49769 | /* 140155 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrmk), |
| 49770 | /* 140158 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49771 | /* 140160 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49772 | /* 140162 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49773 | /* 140164 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49774 | /* 140168 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49775 | /* 140173 */ GIR_RootConstrainSelectedInstOperands, |
| 49776 | /* 140174 */ // GIR_Coverage, 19846, |
| 49777 | /* 140174 */ GIR_EraseRootFromParent_Done, |
| 49778 | /* 140175 */ // Label 2994: @140175 |
| 49779 | /* 140175 */ GIM_Try, /*On fail goto*//*Label 2995*/ GIMT_Encode4(140235), // Rule ID 19848 // |
| 49780 | /* 140180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49781 | /* 140183 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49782 | /* 140187 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49783 | /* 140191 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49784 | /* 140194 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49785 | /* 140198 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49786 | /* 140202 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49787 | /* 140206 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49788 | /* 140208 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49789 | /* 140215 */ // (vselect:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src0) => (VMOVDQU16Zrmk:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src0, VK32WM:{ *:[v32i1] }:$mask, addr:{ *:[iPTR] }:$src) |
| 49790 | /* 140215 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrmk), |
| 49791 | /* 140218 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49792 | /* 140220 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49793 | /* 140222 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49794 | /* 140224 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49795 | /* 140228 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49796 | /* 140233 */ GIR_RootConstrainSelectedInstOperands, |
| 49797 | /* 140234 */ // GIR_Coverage, 19848, |
| 49798 | /* 140234 */ GIR_EraseRootFromParent_Done, |
| 49799 | /* 140235 */ // Label 2995: @140235 |
| 49800 | /* 140235 */ GIM_Try, /*On fail goto*//*Label 2996*/ GIMT_Encode4(140272), // Rule ID 4563 // |
| 49801 | /* 140240 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49802 | /* 140243 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49803 | /* 140247 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49804 | /* 140251 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49805 | /* 140257 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49806 | /* 140259 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49807 | /* 140261 */ // (vselect:{ *:[v32i16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src, immAllZerosV:{ *:[v32i16] }) => (VMOVDQU16Zrrkz:{ *:[v32i16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src) |
| 49808 | /* 140261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 49809 | /* 140264 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49810 | /* 140266 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49811 | /* 140268 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49812 | /* 140270 */ GIR_RootConstrainSelectedInstOperands, |
| 49813 | /* 140271 */ // GIR_Coverage, 4563, |
| 49814 | /* 140271 */ GIR_EraseRootFromParent_Done, |
| 49815 | /* 140272 */ // Label 2996: @140272 |
| 49816 | /* 140272 */ GIM_Try, /*On fail goto*//*Label 2997*/ GIMT_Encode4(140309), // Rule ID 19845 // |
| 49817 | /* 140277 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49818 | /* 140280 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49819 | /* 140284 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49820 | /* 140288 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49821 | /* 140294 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49822 | /* 140296 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49823 | /* 140298 */ // (vselect:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32f16] }:$src1, immAllZerosV:{ *:[v32f16] }) => (VMOVDQU16Zrrkz:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32f16] }:$src1) |
| 49824 | /* 140298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 49825 | /* 140301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49826 | /* 140303 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49827 | /* 140305 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49828 | /* 140307 */ GIR_RootConstrainSelectedInstOperands, |
| 49829 | /* 140308 */ // GIR_Coverage, 19845, |
| 49830 | /* 140308 */ GIR_EraseRootFromParent_Done, |
| 49831 | /* 140309 */ // Label 2997: @140309 |
| 49832 | /* 140309 */ GIM_Try, /*On fail goto*//*Label 2998*/ GIMT_Encode4(140338), // Rule ID 4564 // |
| 49833 | /* 140314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49834 | /* 140317 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49835 | /* 140321 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49836 | /* 140325 */ // (vselect:{ *:[v32i16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src0) => (VMOVDQU16Zrrk:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src0, VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src1) |
| 49837 | /* 140325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 49838 | /* 140328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49839 | /* 140330 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49840 | /* 140332 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49841 | /* 140334 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49842 | /* 140336 */ GIR_RootConstrainSelectedInstOperands, |
| 49843 | /* 140337 */ // GIR_Coverage, 4564, |
| 49844 | /* 140337 */ GIR_EraseRootFromParent_Done, |
| 49845 | /* 140338 */ // Label 2998: @140338 |
| 49846 | /* 140338 */ GIM_Try, /*On fail goto*//*Label 2999*/ GIMT_Encode4(140367), // Rule ID 19844 // |
| 49847 | /* 140343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49848 | /* 140346 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49849 | /* 140350 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49850 | /* 140354 */ // (vselect:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src0) => (VMOVDQU16Zrrk:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src0, VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32f16] }:$src1) |
| 49851 | /* 140354 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 49852 | /* 140357 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49853 | /* 140359 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49854 | /* 140361 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49855 | /* 140363 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49856 | /* 140365 */ GIR_RootConstrainSelectedInstOperands, |
| 49857 | /* 140366 */ // GIR_Coverage, 19844, |
| 49858 | /* 140366 */ GIR_EraseRootFromParent_Done, |
| 49859 | /* 140367 */ // Label 2999: @140367 |
| 49860 | /* 140367 */ GIM_Reject, |
| 49861 | /* 140368 */ // Label 2991: @140368 |
| 49862 | /* 140368 */ GIM_Reject, |
| 49863 | /* 140369 */ // Label 2901: @140369 |
| 49864 | /* 140369 */ GIM_Try, /*On fail goto*//*Label 3000*/ GIMT_Encode4(140454), |
| 49865 | /* 140374 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 49866 | /* 140377 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 49867 | /* 140380 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v64s8, |
| 49868 | /* 140383 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49869 | /* 140387 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64WMRegClassID), |
| 49870 | /* 140391 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49871 | /* 140395 */ GIM_Try, /*On fail goto*//*Label 3001*/ GIMT_Encode4(140428), // Rule ID 4551 // |
| 49872 | /* 140400 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49873 | /* 140403 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49874 | /* 140407 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49875 | /* 140413 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49876 | /* 140415 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49877 | /* 140417 */ // (vselect:{ *:[v64i8] } VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src, immAllZerosV:{ *:[v64i8] }) => (VMOVDQU8Zrrkz:{ *:[v64i8] } VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src) |
| 49878 | /* 140417 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrkz), |
| 49879 | /* 140420 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49880 | /* 140422 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49881 | /* 140424 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49882 | /* 140426 */ GIR_RootConstrainSelectedInstOperands, |
| 49883 | /* 140427 */ // GIR_Coverage, 4551, |
| 49884 | /* 140427 */ GIR_EraseRootFromParent_Done, |
| 49885 | /* 140428 */ // Label 3001: @140428 |
| 49886 | /* 140428 */ GIM_Try, /*On fail goto*//*Label 3002*/ GIMT_Encode4(140453), // Rule ID 4552 // |
| 49887 | /* 140433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49888 | /* 140436 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49889 | /* 140440 */ // (vselect:{ *:[v64i8] } VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src0) => (VMOVDQU8Zrrk:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src0, VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src1) |
| 49890 | /* 140440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrk), |
| 49891 | /* 140443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49892 | /* 140445 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49893 | /* 140447 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49894 | /* 140449 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49895 | /* 140451 */ GIR_RootConstrainSelectedInstOperands, |
| 49896 | /* 140452 */ // GIR_Coverage, 4552, |
| 49897 | /* 140452 */ GIR_EraseRootFromParent_Done, |
| 49898 | /* 140453 */ // Label 3002: @140453 |
| 49899 | /* 140453 */ GIM_Reject, |
| 49900 | /* 140454 */ // Label 3000: @140454 |
| 49901 | /* 140454 */ GIM_Reject, |
| 49902 | /* 140455 */ // Label 2902: @140455 |
| 49903 | /* 140455 */ GIM_Reject, |
| 49904 | /* 140456 */ // Label 35: @140456 |
| 49905 | /* 140456 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(23), /*)*//*default:*//*Label 3006*/ GIMT_Encode4(141320), |
| 49906 | /* 140467 */ /*GILLT_v8s16*//*Label 3003*/ GIMT_Encode4(140507), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 49907 | /* 140487 */ /*GILLT_v16s16*//*Label 3004*/ GIMT_Encode4(140849), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 49908 | /* 140503 */ /*GILLT_v32s16*//*Label 3005*/ GIMT_Encode4(141164), |
| 49909 | /* 140507 */ // Label 3003: @140507 |
| 49910 | /* 140507 */ GIM_Try, /*On fail goto*//*Label 3007*/ GIMT_Encode4(140848), |
| 49911 | /* 140512 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 49912 | /* 140515 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 49913 | /* 140518 */ GIM_Try, /*On fail goto*//*Label 3008*/ GIMT_Encode4(140580), // Rule ID 23456 // |
| 49914 | /* 140523 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 49915 | /* 140526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49916 | /* 140530 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49917 | /* 140534 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49918 | /* 140538 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49919 | /* 140541 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49920 | /* 140545 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49921 | /* 140549 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49922 | /* 140553 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49923 | /* 140555 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49924 | /* 140562 */ // (mulhu:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMULHUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49925 | /* 140562 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWrm), |
| 49926 | /* 140565 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49927 | /* 140567 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49928 | /* 140569 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49929 | /* 140573 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49930 | /* 140578 */ GIR_RootConstrainSelectedInstOperands, |
| 49931 | /* 140579 */ // GIR_Coverage, 23456, |
| 49932 | /* 140579 */ GIR_EraseRootFromParent_Done, |
| 49933 | /* 140580 */ // Label 3008: @140580 |
| 49934 | /* 140580 */ GIM_Try, /*On fail goto*//*Label 3009*/ GIMT_Encode4(140642), // Rule ID 23846 // |
| 49935 | /* 140585 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49936 | /* 140588 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49937 | /* 140592 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49938 | /* 140596 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49939 | /* 140600 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49940 | /* 140603 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49941 | /* 140607 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49942 | /* 140611 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49943 | /* 140615 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49944 | /* 140617 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49945 | /* 140624 */ // (mulhu:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMULHUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49946 | /* 140624 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ128rm), |
| 49947 | /* 140627 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49948 | /* 140629 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49949 | /* 140631 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49950 | /* 140635 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49951 | /* 140640 */ GIR_RootConstrainSelectedInstOperands, |
| 49952 | /* 140641 */ // GIR_Coverage, 23846, |
| 49953 | /* 140641 */ GIR_EraseRootFromParent_Done, |
| 49954 | /* 140642 */ // Label 3009: @140642 |
| 49955 | /* 140642 */ GIM_Try, /*On fail goto*//*Label 3010*/ GIMT_Encode4(140704), // Rule ID 2577 // |
| 49956 | /* 140647 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 49957 | /* 140650 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49958 | /* 140654 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49959 | /* 140658 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49960 | /* 140662 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49961 | /* 140666 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49962 | /* 140669 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49963 | /* 140673 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49964 | /* 140677 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49965 | /* 140679 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49966 | /* 140686 */ // (mulhu:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49967 | /* 140686 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWrm), |
| 49968 | /* 140689 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49969 | /* 140691 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49970 | /* 140693 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49971 | /* 140697 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49972 | /* 140702 */ GIR_RootConstrainSelectedInstOperands, |
| 49973 | /* 140703 */ // GIR_Coverage, 2577, |
| 49974 | /* 140703 */ GIR_EraseRootFromParent_Done, |
| 49975 | /* 140704 */ // Label 3010: @140704 |
| 49976 | /* 140704 */ GIM_Try, /*On fail goto*//*Label 3011*/ GIMT_Encode4(140766), // Rule ID 5062 // |
| 49977 | /* 140709 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49978 | /* 140712 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49979 | /* 140716 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49980 | /* 140720 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49981 | /* 140724 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49982 | /* 140728 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49983 | /* 140731 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49984 | /* 140735 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49985 | /* 140739 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49986 | /* 140741 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49987 | /* 140748 */ // (mulhu:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49988 | /* 140748 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ128rm), |
| 49989 | /* 140751 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49990 | /* 140753 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49991 | /* 140755 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49992 | /* 140759 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49993 | /* 140764 */ GIR_RootConstrainSelectedInstOperands, |
| 49994 | /* 140765 */ // GIR_Coverage, 5062, |
| 49995 | /* 140765 */ GIR_EraseRootFromParent_Done, |
| 49996 | /* 140766 */ // Label 3011: @140766 |
| 49997 | /* 140766 */ GIM_Try, /*On fail goto*//*Label 3012*/ GIMT_Encode4(140793), // Rule ID 2576 // |
| 49998 | /* 140771 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 49999 | /* 140774 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50000 | /* 140778 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50001 | /* 140782 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50002 | /* 140786 */ // (mulhu:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMULHUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 50003 | /* 140786 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHUWrr), |
| 50004 | /* 140791 */ GIR_RootConstrainSelectedInstOperands, |
| 50005 | /* 140792 */ // GIR_Coverage, 2576, |
| 50006 | /* 140792 */ GIR_Done, |
| 50007 | /* 140793 */ // Label 3012: @140793 |
| 50008 | /* 140793 */ GIM_Try, /*On fail goto*//*Label 3013*/ GIMT_Encode4(140820), // Rule ID 2578 // |
| 50009 | /* 140798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 50010 | /* 140801 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50011 | /* 140805 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50012 | /* 140809 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50013 | /* 140813 */ // (mulhu:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMULHUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 50014 | /* 140813 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMULHUWrr), |
| 50015 | /* 140818 */ GIR_RootConstrainSelectedInstOperands, |
| 50016 | /* 140819 */ // GIR_Coverage, 2578, |
| 50017 | /* 140819 */ GIR_Done, |
| 50018 | /* 140820 */ // Label 3013: @140820 |
| 50019 | /* 140820 */ GIM_Try, /*On fail goto*//*Label 3014*/ GIMT_Encode4(140847), // Rule ID 5059 // |
| 50020 | /* 140825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50021 | /* 140828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50022 | /* 140832 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50023 | /* 140836 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50024 | /* 140840 */ // (mulhu:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMULHUWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 50025 | /* 140840 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ128rr), |
| 50026 | /* 140845 */ GIR_RootConstrainSelectedInstOperands, |
| 50027 | /* 140846 */ // GIR_Coverage, 5059, |
| 50028 | /* 140846 */ GIR_Done, |
| 50029 | /* 140847 */ // Label 3014: @140847 |
| 50030 | /* 140847 */ GIM_Reject, |
| 50031 | /* 140848 */ // Label 3007: @140848 |
| 50032 | /* 140848 */ GIM_Reject, |
| 50033 | /* 140849 */ // Label 3004: @140849 |
| 50034 | /* 140849 */ GIM_Try, /*On fail goto*//*Label 3015*/ GIMT_Encode4(141163), |
| 50035 | /* 140854 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 50036 | /* 140857 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 50037 | /* 140860 */ GIM_Try, /*On fail goto*//*Label 3016*/ GIMT_Encode4(140922), // Rule ID 23458 // |
| 50038 | /* 140865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50039 | /* 140868 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50040 | /* 140872 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50041 | /* 140876 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50042 | /* 140880 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50043 | /* 140883 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50044 | /* 140887 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50045 | /* 140891 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50046 | /* 140895 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50047 | /* 140897 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50048 | /* 140904 */ // (mulhu:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMULHUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50049 | /* 140904 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWYrm), |
| 50050 | /* 140907 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50051 | /* 140909 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50052 | /* 140911 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50053 | /* 140915 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50054 | /* 140920 */ GIR_RootConstrainSelectedInstOperands, |
| 50055 | /* 140921 */ // GIR_Coverage, 23458, |
| 50056 | /* 140921 */ GIR_EraseRootFromParent_Done, |
| 50057 | /* 140922 */ // Label 3016: @140922 |
| 50058 | /* 140922 */ GIM_Try, /*On fail goto*//*Label 3017*/ GIMT_Encode4(140984), // Rule ID 23843 // |
| 50059 | /* 140927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50060 | /* 140930 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50061 | /* 140934 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50062 | /* 140938 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50063 | /* 140942 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50064 | /* 140945 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50065 | /* 140949 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50066 | /* 140953 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50067 | /* 140957 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50068 | /* 140959 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50069 | /* 140966 */ // (mulhu:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMULHUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50070 | /* 140966 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ256rm), |
| 50071 | /* 140969 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50072 | /* 140971 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50073 | /* 140973 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50074 | /* 140977 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50075 | /* 140982 */ GIR_RootConstrainSelectedInstOperands, |
| 50076 | /* 140983 */ // GIR_Coverage, 23843, |
| 50077 | /* 140983 */ GIR_EraseRootFromParent_Done, |
| 50078 | /* 140984 */ // Label 3017: @140984 |
| 50079 | /* 140984 */ GIM_Try, /*On fail goto*//*Label 3018*/ GIMT_Encode4(141046), // Rule ID 2581 // |
| 50080 | /* 140989 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50081 | /* 140992 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50082 | /* 140996 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50083 | /* 141000 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50084 | /* 141004 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50085 | /* 141008 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50086 | /* 141011 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50087 | /* 141015 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50088 | /* 141019 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50089 | /* 141021 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50090 | /* 141028 */ // (mulhu:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50091 | /* 141028 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWYrm), |
| 50092 | /* 141031 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50093 | /* 141033 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50094 | /* 141035 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50095 | /* 141039 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50096 | /* 141044 */ GIR_RootConstrainSelectedInstOperands, |
| 50097 | /* 141045 */ // GIR_Coverage, 2581, |
| 50098 | /* 141045 */ GIR_EraseRootFromParent_Done, |
| 50099 | /* 141046 */ // Label 3018: @141046 |
| 50100 | /* 141046 */ GIM_Try, /*On fail goto*//*Label 3019*/ GIMT_Encode4(141108), // Rule ID 5056 // |
| 50101 | /* 141051 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50102 | /* 141054 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50103 | /* 141058 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50104 | /* 141062 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50105 | /* 141066 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50106 | /* 141070 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50107 | /* 141073 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50108 | /* 141077 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50109 | /* 141081 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50110 | /* 141083 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50111 | /* 141090 */ // (mulhu:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50112 | /* 141090 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ256rm), |
| 50113 | /* 141093 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50114 | /* 141095 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50115 | /* 141097 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50116 | /* 141101 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50117 | /* 141106 */ GIR_RootConstrainSelectedInstOperands, |
| 50118 | /* 141107 */ // GIR_Coverage, 5056, |
| 50119 | /* 141107 */ GIR_EraseRootFromParent_Done, |
| 50120 | /* 141108 */ // Label 3019: @141108 |
| 50121 | /* 141108 */ GIM_Try, /*On fail goto*//*Label 3020*/ GIMT_Encode4(141135), // Rule ID 2580 // |
| 50122 | /* 141113 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50123 | /* 141116 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50124 | /* 141120 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50125 | /* 141124 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50126 | /* 141128 */ // (mulhu:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMULHUWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 50127 | /* 141128 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHUWYrr), |
| 50128 | /* 141133 */ GIR_RootConstrainSelectedInstOperands, |
| 50129 | /* 141134 */ // GIR_Coverage, 2580, |
| 50130 | /* 141134 */ GIR_Done, |
| 50131 | /* 141135 */ // Label 3020: @141135 |
| 50132 | /* 141135 */ GIM_Try, /*On fail goto*//*Label 3021*/ GIMT_Encode4(141162), // Rule ID 5053 // |
| 50133 | /* 141140 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50134 | /* 141143 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50135 | /* 141147 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50136 | /* 141151 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50137 | /* 141155 */ // (mulhu:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMULHUWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 50138 | /* 141155 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ256rr), |
| 50139 | /* 141160 */ GIR_RootConstrainSelectedInstOperands, |
| 50140 | /* 141161 */ // GIR_Coverage, 5053, |
| 50141 | /* 141161 */ GIR_Done, |
| 50142 | /* 141162 */ // Label 3021: @141162 |
| 50143 | /* 141162 */ GIM_Reject, |
| 50144 | /* 141163 */ // Label 3015: @141163 |
| 50145 | /* 141163 */ GIM_Reject, |
| 50146 | /* 141164 */ // Label 3005: @141164 |
| 50147 | /* 141164 */ GIM_Try, /*On fail goto*//*Label 3022*/ GIMT_Encode4(141319), |
| 50148 | /* 141169 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 50149 | /* 141172 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 50150 | /* 141175 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50151 | /* 141179 */ GIM_Try, /*On fail goto*//*Label 3023*/ GIMT_Encode4(141237), // Rule ID 23840 // |
| 50152 | /* 141184 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50153 | /* 141187 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50154 | /* 141191 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50155 | /* 141195 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50156 | /* 141198 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50157 | /* 141202 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50158 | /* 141206 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50159 | /* 141210 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50160 | /* 141212 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50161 | /* 141219 */ // (mulhu:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMULHUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50162 | /* 141219 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZrm), |
| 50163 | /* 141222 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50164 | /* 141224 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50165 | /* 141226 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50166 | /* 141230 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50167 | /* 141235 */ GIR_RootConstrainSelectedInstOperands, |
| 50168 | /* 141236 */ // GIR_Coverage, 23840, |
| 50169 | /* 141236 */ GIR_EraseRootFromParent_Done, |
| 50170 | /* 141237 */ // Label 3023: @141237 |
| 50171 | /* 141237 */ GIM_Try, /*On fail goto*//*Label 3024*/ GIMT_Encode4(141295), // Rule ID 5050 // |
| 50172 | /* 141242 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50173 | /* 141245 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50174 | /* 141249 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50175 | /* 141253 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50176 | /* 141257 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50177 | /* 141260 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50178 | /* 141264 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50179 | /* 141268 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50180 | /* 141270 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50181 | /* 141277 */ // (mulhu:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50182 | /* 141277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZrm), |
| 50183 | /* 141280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50184 | /* 141282 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50185 | /* 141284 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50186 | /* 141288 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50187 | /* 141293 */ GIR_RootConstrainSelectedInstOperands, |
| 50188 | /* 141294 */ // GIR_Coverage, 5050, |
| 50189 | /* 141294 */ GIR_EraseRootFromParent_Done, |
| 50190 | /* 141295 */ // Label 3024: @141295 |
| 50191 | /* 141295 */ GIM_Try, /*On fail goto*//*Label 3025*/ GIMT_Encode4(141318), // Rule ID 5047 // |
| 50192 | /* 141300 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50193 | /* 141303 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50194 | /* 141307 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50195 | /* 141311 */ // (mulhu:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMULHUWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 50196 | /* 141311 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZrr), |
| 50197 | /* 141316 */ GIR_RootConstrainSelectedInstOperands, |
| 50198 | /* 141317 */ // GIR_Coverage, 5047, |
| 50199 | /* 141317 */ GIR_Done, |
| 50200 | /* 141318 */ // Label 3025: @141318 |
| 50201 | /* 141318 */ GIM_Reject, |
| 50202 | /* 141319 */ // Label 3022: @141319 |
| 50203 | /* 141319 */ GIM_Reject, |
| 50204 | /* 141320 */ // Label 3006: @141320 |
| 50205 | /* 141320 */ GIM_Reject, |
| 50206 | /* 141321 */ // Label 36: @141321 |
| 50207 | /* 141321 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(23), /*)*//*default:*//*Label 3029*/ GIMT_Encode4(142185), |
| 50208 | /* 141332 */ /*GILLT_v8s16*//*Label 3026*/ GIMT_Encode4(141372), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 50209 | /* 141352 */ /*GILLT_v16s16*//*Label 3027*/ GIMT_Encode4(141714), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 50210 | /* 141368 */ /*GILLT_v32s16*//*Label 3028*/ GIMT_Encode4(142029), |
| 50211 | /* 141372 */ // Label 3026: @141372 |
| 50212 | /* 141372 */ GIM_Try, /*On fail goto*//*Label 3030*/ GIMT_Encode4(141713), |
| 50213 | /* 141377 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 50214 | /* 141380 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 50215 | /* 141383 */ GIM_Try, /*On fail goto*//*Label 3031*/ GIMT_Encode4(141445), // Rule ID 23459 // |
| 50216 | /* 141388 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50217 | /* 141391 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50218 | /* 141395 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50219 | /* 141399 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50220 | /* 141403 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50221 | /* 141406 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50222 | /* 141410 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50223 | /* 141414 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50224 | /* 141418 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50225 | /* 141420 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50226 | /* 141427 */ // (mulhs:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMULHWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50227 | /* 141427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWrm), |
| 50228 | /* 141430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50229 | /* 141432 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50230 | /* 141434 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50231 | /* 141438 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50232 | /* 141443 */ GIR_RootConstrainSelectedInstOperands, |
| 50233 | /* 141444 */ // GIR_Coverage, 23459, |
| 50234 | /* 141444 */ GIR_EraseRootFromParent_Done, |
| 50235 | /* 141445 */ // Label 3031: @141445 |
| 50236 | /* 141445 */ GIM_Try, /*On fail goto*//*Label 3032*/ GIMT_Encode4(141507), // Rule ID 23837 // |
| 50237 | /* 141450 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50238 | /* 141453 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50239 | /* 141457 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50240 | /* 141461 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50241 | /* 141465 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50242 | /* 141468 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50243 | /* 141472 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50244 | /* 141476 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50245 | /* 141480 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50246 | /* 141482 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50247 | /* 141489 */ // (mulhs:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMULHWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50248 | /* 141489 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ128rm), |
| 50249 | /* 141492 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50250 | /* 141494 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50251 | /* 141496 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50252 | /* 141500 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50253 | /* 141505 */ GIR_RootConstrainSelectedInstOperands, |
| 50254 | /* 141506 */ // GIR_Coverage, 23837, |
| 50255 | /* 141506 */ GIR_EraseRootFromParent_Done, |
| 50256 | /* 141507 */ // Label 3032: @141507 |
| 50257 | /* 141507 */ GIM_Try, /*On fail goto*//*Label 3033*/ GIMT_Encode4(141569), // Rule ID 2583 // |
| 50258 | /* 141512 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50259 | /* 141515 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50260 | /* 141519 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50261 | /* 141523 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50262 | /* 141527 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50263 | /* 141531 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50264 | /* 141534 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50265 | /* 141538 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50266 | /* 141542 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50267 | /* 141544 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50268 | /* 141551 */ // (mulhs:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50269 | /* 141551 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWrm), |
| 50270 | /* 141554 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50271 | /* 141556 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50272 | /* 141558 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50273 | /* 141562 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50274 | /* 141567 */ GIR_RootConstrainSelectedInstOperands, |
| 50275 | /* 141568 */ // GIR_Coverage, 2583, |
| 50276 | /* 141568 */ GIR_EraseRootFromParent_Done, |
| 50277 | /* 141569 */ // Label 3033: @141569 |
| 50278 | /* 141569 */ GIM_Try, /*On fail goto*//*Label 3034*/ GIMT_Encode4(141631), // Rule ID 5044 // |
| 50279 | /* 141574 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50280 | /* 141577 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50281 | /* 141581 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50282 | /* 141585 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50283 | /* 141589 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50284 | /* 141593 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50285 | /* 141596 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50286 | /* 141600 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50287 | /* 141604 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50288 | /* 141606 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50289 | /* 141613 */ // (mulhs:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50290 | /* 141613 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ128rm), |
| 50291 | /* 141616 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50292 | /* 141618 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50293 | /* 141620 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50294 | /* 141624 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50295 | /* 141629 */ GIR_RootConstrainSelectedInstOperands, |
| 50296 | /* 141630 */ // GIR_Coverage, 5044, |
| 50297 | /* 141630 */ GIR_EraseRootFromParent_Done, |
| 50298 | /* 141631 */ // Label 3034: @141631 |
| 50299 | /* 141631 */ GIM_Try, /*On fail goto*//*Label 3035*/ GIMT_Encode4(141658), // Rule ID 2582 // |
| 50300 | /* 141636 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50301 | /* 141639 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50302 | /* 141643 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50303 | /* 141647 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50304 | /* 141651 */ // (mulhs:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMULHWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 50305 | /* 141651 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHWrr), |
| 50306 | /* 141656 */ GIR_RootConstrainSelectedInstOperands, |
| 50307 | /* 141657 */ // GIR_Coverage, 2582, |
| 50308 | /* 141657 */ GIR_Done, |
| 50309 | /* 141658 */ // Label 3035: @141658 |
| 50310 | /* 141658 */ GIM_Try, /*On fail goto*//*Label 3036*/ GIMT_Encode4(141685), // Rule ID 2584 // |
| 50311 | /* 141663 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 50312 | /* 141666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50313 | /* 141670 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50314 | /* 141674 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50315 | /* 141678 */ // (mulhs:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMULHWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 50316 | /* 141678 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMULHWrr), |
| 50317 | /* 141683 */ GIR_RootConstrainSelectedInstOperands, |
| 50318 | /* 141684 */ // GIR_Coverage, 2584, |
| 50319 | /* 141684 */ GIR_Done, |
| 50320 | /* 141685 */ // Label 3036: @141685 |
| 50321 | /* 141685 */ GIM_Try, /*On fail goto*//*Label 3037*/ GIMT_Encode4(141712), // Rule ID 5041 // |
| 50322 | /* 141690 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50323 | /* 141693 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50324 | /* 141697 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50325 | /* 141701 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50326 | /* 141705 */ // (mulhs:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMULHWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 50327 | /* 141705 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ128rr), |
| 50328 | /* 141710 */ GIR_RootConstrainSelectedInstOperands, |
| 50329 | /* 141711 */ // GIR_Coverage, 5041, |
| 50330 | /* 141711 */ GIR_Done, |
| 50331 | /* 141712 */ // Label 3037: @141712 |
| 50332 | /* 141712 */ GIM_Reject, |
| 50333 | /* 141713 */ // Label 3030: @141713 |
| 50334 | /* 141713 */ GIM_Reject, |
| 50335 | /* 141714 */ // Label 3027: @141714 |
| 50336 | /* 141714 */ GIM_Try, /*On fail goto*//*Label 3038*/ GIMT_Encode4(142028), |
| 50337 | /* 141719 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 50338 | /* 141722 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 50339 | /* 141725 */ GIM_Try, /*On fail goto*//*Label 3039*/ GIMT_Encode4(141787), // Rule ID 23461 // |
| 50340 | /* 141730 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50341 | /* 141733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50342 | /* 141737 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50343 | /* 141741 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50344 | /* 141745 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50345 | /* 141748 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50346 | /* 141752 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50347 | /* 141756 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50348 | /* 141760 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50349 | /* 141762 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50350 | /* 141769 */ // (mulhs:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMULHWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50351 | /* 141769 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWYrm), |
| 50352 | /* 141772 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50353 | /* 141774 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50354 | /* 141776 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50355 | /* 141780 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50356 | /* 141785 */ GIR_RootConstrainSelectedInstOperands, |
| 50357 | /* 141786 */ // GIR_Coverage, 23461, |
| 50358 | /* 141786 */ GIR_EraseRootFromParent_Done, |
| 50359 | /* 141787 */ // Label 3039: @141787 |
| 50360 | /* 141787 */ GIM_Try, /*On fail goto*//*Label 3040*/ GIMT_Encode4(141849), // Rule ID 23834 // |
| 50361 | /* 141792 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50362 | /* 141795 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50363 | /* 141799 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50364 | /* 141803 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50365 | /* 141807 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50366 | /* 141810 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50367 | /* 141814 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50368 | /* 141818 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50369 | /* 141822 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50370 | /* 141824 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50371 | /* 141831 */ // (mulhs:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMULHWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50372 | /* 141831 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ256rm), |
| 50373 | /* 141834 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50374 | /* 141836 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50375 | /* 141838 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50376 | /* 141842 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50377 | /* 141847 */ GIR_RootConstrainSelectedInstOperands, |
| 50378 | /* 141848 */ // GIR_Coverage, 23834, |
| 50379 | /* 141848 */ GIR_EraseRootFromParent_Done, |
| 50380 | /* 141849 */ // Label 3040: @141849 |
| 50381 | /* 141849 */ GIM_Try, /*On fail goto*//*Label 3041*/ GIMT_Encode4(141911), // Rule ID 2587 // |
| 50382 | /* 141854 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50383 | /* 141857 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50384 | /* 141861 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50385 | /* 141865 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50386 | /* 141869 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50387 | /* 141873 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50388 | /* 141876 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50389 | /* 141880 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50390 | /* 141884 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50391 | /* 141886 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50392 | /* 141893 */ // (mulhs:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50393 | /* 141893 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWYrm), |
| 50394 | /* 141896 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50395 | /* 141898 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50396 | /* 141900 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50397 | /* 141904 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50398 | /* 141909 */ GIR_RootConstrainSelectedInstOperands, |
| 50399 | /* 141910 */ // GIR_Coverage, 2587, |
| 50400 | /* 141910 */ GIR_EraseRootFromParent_Done, |
| 50401 | /* 141911 */ // Label 3041: @141911 |
| 50402 | /* 141911 */ GIM_Try, /*On fail goto*//*Label 3042*/ GIMT_Encode4(141973), // Rule ID 5038 // |
| 50403 | /* 141916 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50404 | /* 141919 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50405 | /* 141923 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50406 | /* 141927 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50407 | /* 141931 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50408 | /* 141935 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50409 | /* 141938 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50410 | /* 141942 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50411 | /* 141946 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50412 | /* 141948 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50413 | /* 141955 */ // (mulhs:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50414 | /* 141955 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ256rm), |
| 50415 | /* 141958 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50416 | /* 141960 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50417 | /* 141962 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50418 | /* 141966 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50419 | /* 141971 */ GIR_RootConstrainSelectedInstOperands, |
| 50420 | /* 141972 */ // GIR_Coverage, 5038, |
| 50421 | /* 141972 */ GIR_EraseRootFromParent_Done, |
| 50422 | /* 141973 */ // Label 3042: @141973 |
| 50423 | /* 141973 */ GIM_Try, /*On fail goto*//*Label 3043*/ GIMT_Encode4(142000), // Rule ID 2586 // |
| 50424 | /* 141978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50425 | /* 141981 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50426 | /* 141985 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50427 | /* 141989 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50428 | /* 141993 */ // (mulhs:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMULHWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 50429 | /* 141993 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHWYrr), |
| 50430 | /* 141998 */ GIR_RootConstrainSelectedInstOperands, |
| 50431 | /* 141999 */ // GIR_Coverage, 2586, |
| 50432 | /* 141999 */ GIR_Done, |
| 50433 | /* 142000 */ // Label 3043: @142000 |
| 50434 | /* 142000 */ GIM_Try, /*On fail goto*//*Label 3044*/ GIMT_Encode4(142027), // Rule ID 5035 // |
| 50435 | /* 142005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50436 | /* 142008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50437 | /* 142012 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50438 | /* 142016 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50439 | /* 142020 */ // (mulhs:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMULHWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 50440 | /* 142020 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ256rr), |
| 50441 | /* 142025 */ GIR_RootConstrainSelectedInstOperands, |
| 50442 | /* 142026 */ // GIR_Coverage, 5035, |
| 50443 | /* 142026 */ GIR_Done, |
| 50444 | /* 142027 */ // Label 3044: @142027 |
| 50445 | /* 142027 */ GIM_Reject, |
| 50446 | /* 142028 */ // Label 3038: @142028 |
| 50447 | /* 142028 */ GIM_Reject, |
| 50448 | /* 142029 */ // Label 3028: @142029 |
| 50449 | /* 142029 */ GIM_Try, /*On fail goto*//*Label 3045*/ GIMT_Encode4(142184), |
| 50450 | /* 142034 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 50451 | /* 142037 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 50452 | /* 142040 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50453 | /* 142044 */ GIM_Try, /*On fail goto*//*Label 3046*/ GIMT_Encode4(142102), // Rule ID 23831 // |
| 50454 | /* 142049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50455 | /* 142052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50456 | /* 142056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50457 | /* 142060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50458 | /* 142063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50459 | /* 142067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50460 | /* 142071 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50461 | /* 142075 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50462 | /* 142077 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50463 | /* 142084 */ // (mulhs:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMULHWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50464 | /* 142084 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZrm), |
| 50465 | /* 142087 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50466 | /* 142089 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50467 | /* 142091 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50468 | /* 142095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50469 | /* 142100 */ GIR_RootConstrainSelectedInstOperands, |
| 50470 | /* 142101 */ // GIR_Coverage, 23831, |
| 50471 | /* 142101 */ GIR_EraseRootFromParent_Done, |
| 50472 | /* 142102 */ // Label 3046: @142102 |
| 50473 | /* 142102 */ GIM_Try, /*On fail goto*//*Label 3047*/ GIMT_Encode4(142160), // Rule ID 5032 // |
| 50474 | /* 142107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50475 | /* 142110 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50476 | /* 142114 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50477 | /* 142118 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50478 | /* 142122 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50479 | /* 142125 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50480 | /* 142129 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50481 | /* 142133 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50482 | /* 142135 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50483 | /* 142142 */ // (mulhs:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50484 | /* 142142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZrm), |
| 50485 | /* 142145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50486 | /* 142147 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50487 | /* 142149 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50488 | /* 142153 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50489 | /* 142158 */ GIR_RootConstrainSelectedInstOperands, |
| 50490 | /* 142159 */ // GIR_Coverage, 5032, |
| 50491 | /* 142159 */ GIR_EraseRootFromParent_Done, |
| 50492 | /* 142160 */ // Label 3047: @142160 |
| 50493 | /* 142160 */ GIM_Try, /*On fail goto*//*Label 3048*/ GIMT_Encode4(142183), // Rule ID 5029 // |
| 50494 | /* 142165 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50495 | /* 142168 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50496 | /* 142172 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50497 | /* 142176 */ // (mulhs:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMULHWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 50498 | /* 142176 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHWZrr), |
| 50499 | /* 142181 */ GIR_RootConstrainSelectedInstOperands, |
| 50500 | /* 142182 */ // GIR_Coverage, 5029, |
| 50501 | /* 142182 */ GIR_Done, |
| 50502 | /* 142183 */ // Label 3048: @142183 |
| 50503 | /* 142183 */ GIM_Reject, |
| 50504 | /* 142184 */ // Label 3045: @142184 |
| 50505 | /* 142184 */ GIM_Reject, |
| 50506 | /* 142185 */ // Label 3029: @142185 |
| 50507 | /* 142185 */ GIM_Reject, |
| 50508 | /* 142186 */ // Label 37: @142186 |
| 50509 | /* 142186 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(25), /*)*//*default:*//*Label 3055*/ GIMT_Encode4(143871), |
| 50510 | /* 142197 */ /*GILLT_v8s16*//*Label 3049*/ GIMT_Encode4(142245), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 50511 | /* 142213 */ /*GILLT_v16s8*//*Label 3050*/ GIMT_Encode4(142587), |
| 50512 | /* 142217 */ /*GILLT_v16s16*//*Label 3051*/ GIMT_Encode4(142929), GIMT_Encode4(0), GIMT_Encode4(0), |
| 50513 | /* 142229 */ /*GILLT_v32s8*//*Label 3052*/ GIMT_Encode4(143244), |
| 50514 | /* 142233 */ /*GILLT_v32s16*//*Label 3053*/ GIMT_Encode4(143559), GIMT_Encode4(0), |
| 50515 | /* 142241 */ /*GILLT_v64s8*//*Label 3054*/ GIMT_Encode4(143715), |
| 50516 | /* 142245 */ // Label 3049: @142245 |
| 50517 | /* 142245 */ GIM_Try, /*On fail goto*//*Label 3056*/ GIMT_Encode4(142586), |
| 50518 | /* 142250 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 50519 | /* 142253 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 50520 | /* 142256 */ GIM_Try, /*On fail goto*//*Label 3057*/ GIMT_Encode4(142318), // Rule ID 23450 // |
| 50521 | /* 142261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50522 | /* 142264 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50523 | /* 142268 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50524 | /* 142272 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50525 | /* 142276 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50526 | /* 142279 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50527 | /* 142283 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50528 | /* 142287 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50529 | /* 142291 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50530 | /* 142293 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50531 | /* 142300 */ // (uaddsat:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPADDUSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50532 | /* 142300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWrm), |
| 50533 | /* 142303 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50534 | /* 142305 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50535 | /* 142307 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50536 | /* 142311 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50537 | /* 142316 */ GIR_RootConstrainSelectedInstOperands, |
| 50538 | /* 142317 */ // GIR_Coverage, 23450, |
| 50539 | /* 142317 */ GIR_EraseRootFromParent_Done, |
| 50540 | /* 142318 */ // Label 3057: @142318 |
| 50541 | /* 142318 */ GIM_Try, /*On fail goto*//*Label 3058*/ GIMT_Encode4(142380), // Rule ID 23774 // |
| 50542 | /* 142323 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50543 | /* 142326 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50544 | /* 142330 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50545 | /* 142334 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50546 | /* 142338 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50547 | /* 142341 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50548 | /* 142345 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50549 | /* 142349 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50550 | /* 142353 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50551 | /* 142355 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50552 | /* 142362 */ // (uaddsat:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPADDUSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50553 | /* 142362 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ128rm), |
| 50554 | /* 142365 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50555 | /* 142367 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50556 | /* 142369 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50557 | /* 142373 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50558 | /* 142378 */ GIR_RootConstrainSelectedInstOperands, |
| 50559 | /* 142379 */ // GIR_Coverage, 23774, |
| 50560 | /* 142379 */ GIR_EraseRootFromParent_Done, |
| 50561 | /* 142380 */ // Label 3058: @142380 |
| 50562 | /* 142380 */ GIM_Try, /*On fail goto*//*Label 3059*/ GIMT_Encode4(142442), // Rule ID 2565 // |
| 50563 | /* 142385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50564 | /* 142388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50565 | /* 142392 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50566 | /* 142396 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50567 | /* 142400 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50568 | /* 142404 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50569 | /* 142407 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50570 | /* 142411 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50571 | /* 142415 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50572 | /* 142417 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50573 | /* 142424 */ // (uaddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50574 | /* 142424 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWrm), |
| 50575 | /* 142427 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50576 | /* 142429 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50577 | /* 142431 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50578 | /* 142435 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50579 | /* 142440 */ GIR_RootConstrainSelectedInstOperands, |
| 50580 | /* 142441 */ // GIR_Coverage, 2565, |
| 50581 | /* 142441 */ GIR_EraseRootFromParent_Done, |
| 50582 | /* 142442 */ // Label 3059: @142442 |
| 50583 | /* 142442 */ GIM_Try, /*On fail goto*//*Label 3060*/ GIMT_Encode4(142504), // Rule ID 4900 // |
| 50584 | /* 142447 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50585 | /* 142450 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50586 | /* 142454 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50587 | /* 142458 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50588 | /* 142462 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50589 | /* 142466 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50590 | /* 142469 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50591 | /* 142473 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50592 | /* 142477 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50593 | /* 142479 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50594 | /* 142486 */ // (uaddsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50595 | /* 142486 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ128rm), |
| 50596 | /* 142489 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50597 | /* 142491 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50598 | /* 142493 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50599 | /* 142497 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50600 | /* 142502 */ GIR_RootConstrainSelectedInstOperands, |
| 50601 | /* 142503 */ // GIR_Coverage, 4900, |
| 50602 | /* 142503 */ GIR_EraseRootFromParent_Done, |
| 50603 | /* 142504 */ // Label 3060: @142504 |
| 50604 | /* 142504 */ GIM_Try, /*On fail goto*//*Label 3061*/ GIMT_Encode4(142531), // Rule ID 2564 // |
| 50605 | /* 142509 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50606 | /* 142512 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50607 | /* 142516 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50608 | /* 142520 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50609 | /* 142524 */ // (uaddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPADDUSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 50610 | /* 142524 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSWrr), |
| 50611 | /* 142529 */ GIR_RootConstrainSelectedInstOperands, |
| 50612 | /* 142530 */ // GIR_Coverage, 2564, |
| 50613 | /* 142530 */ GIR_Done, |
| 50614 | /* 142531 */ // Label 3061: @142531 |
| 50615 | /* 142531 */ GIM_Try, /*On fail goto*//*Label 3062*/ GIMT_Encode4(142558), // Rule ID 2566 // |
| 50616 | /* 142536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 50617 | /* 142539 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50618 | /* 142543 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50619 | /* 142547 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50620 | /* 142551 */ // (uaddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PADDUSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 50621 | /* 142551 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDUSWrr), |
| 50622 | /* 142556 */ GIR_RootConstrainSelectedInstOperands, |
| 50623 | /* 142557 */ // GIR_Coverage, 2566, |
| 50624 | /* 142557 */ GIR_Done, |
| 50625 | /* 142558 */ // Label 3062: @142558 |
| 50626 | /* 142558 */ GIM_Try, /*On fail goto*//*Label 3063*/ GIMT_Encode4(142585), // Rule ID 4897 // |
| 50627 | /* 142563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50628 | /* 142566 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50629 | /* 142570 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50630 | /* 142574 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50631 | /* 142578 */ // (uaddsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPADDUSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 50632 | /* 142578 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ128rr), |
| 50633 | /* 142583 */ GIR_RootConstrainSelectedInstOperands, |
| 50634 | /* 142584 */ // GIR_Coverage, 4897, |
| 50635 | /* 142584 */ GIR_Done, |
| 50636 | /* 142585 */ // Label 3063: @142585 |
| 50637 | /* 142585 */ GIM_Reject, |
| 50638 | /* 142586 */ // Label 3056: @142586 |
| 50639 | /* 142586 */ GIM_Reject, |
| 50640 | /* 142587 */ // Label 3050: @142587 |
| 50641 | /* 142587 */ GIM_Try, /*On fail goto*//*Label 3064*/ GIMT_Encode4(142928), |
| 50642 | /* 142592 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 50643 | /* 142595 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 50644 | /* 142598 */ GIM_Try, /*On fail goto*//*Label 3065*/ GIMT_Encode4(142660), // Rule ID 23447 // |
| 50645 | /* 142603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50646 | /* 142606 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50647 | /* 142610 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50648 | /* 142614 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50649 | /* 142618 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50650 | /* 142621 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50651 | /* 142625 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50652 | /* 142629 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50653 | /* 142633 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50654 | /* 142635 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50655 | /* 142642 */ // (uaddsat:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPADDUSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50656 | /* 142642 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBrm), |
| 50657 | /* 142645 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50658 | /* 142647 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50659 | /* 142649 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50660 | /* 142653 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50661 | /* 142658 */ GIR_RootConstrainSelectedInstOperands, |
| 50662 | /* 142659 */ // GIR_Coverage, 23447, |
| 50663 | /* 142659 */ GIR_EraseRootFromParent_Done, |
| 50664 | /* 142660 */ // Label 3065: @142660 |
| 50665 | /* 142660 */ GIM_Try, /*On fail goto*//*Label 3066*/ GIMT_Encode4(142722), // Rule ID 23783 // |
| 50666 | /* 142665 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50667 | /* 142668 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50668 | /* 142672 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50669 | /* 142676 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50670 | /* 142680 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50671 | /* 142683 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50672 | /* 142687 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50673 | /* 142691 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50674 | /* 142695 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50675 | /* 142697 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50676 | /* 142704 */ // (uaddsat:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPADDUSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50677 | /* 142704 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ128rm), |
| 50678 | /* 142707 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50679 | /* 142709 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50680 | /* 142711 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50681 | /* 142715 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50682 | /* 142720 */ GIR_RootConstrainSelectedInstOperands, |
| 50683 | /* 142721 */ // GIR_Coverage, 23783, |
| 50684 | /* 142721 */ GIR_EraseRootFromParent_Done, |
| 50685 | /* 142722 */ // Label 3066: @142722 |
| 50686 | /* 142722 */ GIM_Try, /*On fail goto*//*Label 3067*/ GIMT_Encode4(142784), // Rule ID 2559 // |
| 50687 | /* 142727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50688 | /* 142730 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50689 | /* 142734 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50690 | /* 142738 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50691 | /* 142742 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50692 | /* 142746 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50693 | /* 142749 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50694 | /* 142753 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50695 | /* 142757 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50696 | /* 142759 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50697 | /* 142766 */ // (uaddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50698 | /* 142766 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBrm), |
| 50699 | /* 142769 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50700 | /* 142771 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50701 | /* 142773 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50702 | /* 142777 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50703 | /* 142782 */ GIR_RootConstrainSelectedInstOperands, |
| 50704 | /* 142783 */ // GIR_Coverage, 2559, |
| 50705 | /* 142783 */ GIR_EraseRootFromParent_Done, |
| 50706 | /* 142784 */ // Label 3067: @142784 |
| 50707 | /* 142784 */ GIM_Try, /*On fail goto*//*Label 3068*/ GIMT_Encode4(142846), // Rule ID 4918 // |
| 50708 | /* 142789 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50709 | /* 142792 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50710 | /* 142796 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50711 | /* 142800 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50712 | /* 142804 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50713 | /* 142808 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50714 | /* 142811 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50715 | /* 142815 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50716 | /* 142819 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50717 | /* 142821 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50718 | /* 142828 */ // (uaddsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50719 | /* 142828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ128rm), |
| 50720 | /* 142831 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50721 | /* 142833 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50722 | /* 142835 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50723 | /* 142839 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50724 | /* 142844 */ GIR_RootConstrainSelectedInstOperands, |
| 50725 | /* 142845 */ // GIR_Coverage, 4918, |
| 50726 | /* 142845 */ GIR_EraseRootFromParent_Done, |
| 50727 | /* 142846 */ // Label 3068: @142846 |
| 50728 | /* 142846 */ GIM_Try, /*On fail goto*//*Label 3069*/ GIMT_Encode4(142873), // Rule ID 2558 // |
| 50729 | /* 142851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50730 | /* 142854 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50731 | /* 142858 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50732 | /* 142862 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50733 | /* 142866 */ // (uaddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPADDUSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 50734 | /* 142866 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSBrr), |
| 50735 | /* 142871 */ GIR_RootConstrainSelectedInstOperands, |
| 50736 | /* 142872 */ // GIR_Coverage, 2558, |
| 50737 | /* 142872 */ GIR_Done, |
| 50738 | /* 142873 */ // Label 3069: @142873 |
| 50739 | /* 142873 */ GIM_Try, /*On fail goto*//*Label 3070*/ GIMT_Encode4(142900), // Rule ID 2560 // |
| 50740 | /* 142878 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 50741 | /* 142881 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50742 | /* 142885 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50743 | /* 142889 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50744 | /* 142893 */ // (uaddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PADDUSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 50745 | /* 142893 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDUSBrr), |
| 50746 | /* 142898 */ GIR_RootConstrainSelectedInstOperands, |
| 50747 | /* 142899 */ // GIR_Coverage, 2560, |
| 50748 | /* 142899 */ GIR_Done, |
| 50749 | /* 142900 */ // Label 3070: @142900 |
| 50750 | /* 142900 */ GIM_Try, /*On fail goto*//*Label 3071*/ GIMT_Encode4(142927), // Rule ID 4915 // |
| 50751 | /* 142905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50752 | /* 142908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50753 | /* 142912 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50754 | /* 142916 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50755 | /* 142920 */ // (uaddsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPADDUSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 50756 | /* 142920 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ128rr), |
| 50757 | /* 142925 */ GIR_RootConstrainSelectedInstOperands, |
| 50758 | /* 142926 */ // GIR_Coverage, 4915, |
| 50759 | /* 142926 */ GIR_Done, |
| 50760 | /* 142927 */ // Label 3071: @142927 |
| 50761 | /* 142927 */ GIM_Reject, |
| 50762 | /* 142928 */ // Label 3064: @142928 |
| 50763 | /* 142928 */ GIM_Reject, |
| 50764 | /* 142929 */ // Label 3051: @142929 |
| 50765 | /* 142929 */ GIM_Try, /*On fail goto*//*Label 3072*/ GIMT_Encode4(143243), |
| 50766 | /* 142934 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 50767 | /* 142937 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 50768 | /* 142940 */ GIM_Try, /*On fail goto*//*Label 3073*/ GIMT_Encode4(143002), // Rule ID 23452 // |
| 50769 | /* 142945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50770 | /* 142948 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50771 | /* 142952 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50772 | /* 142956 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50773 | /* 142960 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50774 | /* 142963 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50775 | /* 142967 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50776 | /* 142971 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50777 | /* 142975 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50778 | /* 142977 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50779 | /* 142984 */ // (uaddsat:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPADDUSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50780 | /* 142984 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWYrm), |
| 50781 | /* 142987 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50782 | /* 142989 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50783 | /* 142991 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50784 | /* 142995 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50785 | /* 143000 */ GIR_RootConstrainSelectedInstOperands, |
| 50786 | /* 143001 */ // GIR_Coverage, 23452, |
| 50787 | /* 143001 */ GIR_EraseRootFromParent_Done, |
| 50788 | /* 143002 */ // Label 3073: @143002 |
| 50789 | /* 143002 */ GIM_Try, /*On fail goto*//*Label 3074*/ GIMT_Encode4(143064), // Rule ID 23771 // |
| 50790 | /* 143007 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50791 | /* 143010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50792 | /* 143014 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50793 | /* 143018 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50794 | /* 143022 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50795 | /* 143025 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50796 | /* 143029 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50797 | /* 143033 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50798 | /* 143037 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50799 | /* 143039 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50800 | /* 143046 */ // (uaddsat:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPADDUSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50801 | /* 143046 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ256rm), |
| 50802 | /* 143049 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50803 | /* 143051 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50804 | /* 143053 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50805 | /* 143057 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50806 | /* 143062 */ GIR_RootConstrainSelectedInstOperands, |
| 50807 | /* 143063 */ // GIR_Coverage, 23771, |
| 50808 | /* 143063 */ GIR_EraseRootFromParent_Done, |
| 50809 | /* 143064 */ // Label 3074: @143064 |
| 50810 | /* 143064 */ GIM_Try, /*On fail goto*//*Label 3075*/ GIMT_Encode4(143126), // Rule ID 2569 // |
| 50811 | /* 143069 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50812 | /* 143072 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50813 | /* 143076 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50814 | /* 143080 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50815 | /* 143084 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50816 | /* 143088 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50817 | /* 143091 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50818 | /* 143095 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50819 | /* 143099 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50820 | /* 143101 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50821 | /* 143108 */ // (uaddsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50822 | /* 143108 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWYrm), |
| 50823 | /* 143111 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50824 | /* 143113 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50825 | /* 143115 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50826 | /* 143119 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50827 | /* 143124 */ GIR_RootConstrainSelectedInstOperands, |
| 50828 | /* 143125 */ // GIR_Coverage, 2569, |
| 50829 | /* 143125 */ GIR_EraseRootFromParent_Done, |
| 50830 | /* 143126 */ // Label 3075: @143126 |
| 50831 | /* 143126 */ GIM_Try, /*On fail goto*//*Label 3076*/ GIMT_Encode4(143188), // Rule ID 4894 // |
| 50832 | /* 143131 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50833 | /* 143134 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50834 | /* 143138 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50835 | /* 143142 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50836 | /* 143146 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50837 | /* 143150 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50838 | /* 143153 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50839 | /* 143157 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50840 | /* 143161 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50841 | /* 143163 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50842 | /* 143170 */ // (uaddsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50843 | /* 143170 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ256rm), |
| 50844 | /* 143173 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50845 | /* 143175 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50846 | /* 143177 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50847 | /* 143181 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50848 | /* 143186 */ GIR_RootConstrainSelectedInstOperands, |
| 50849 | /* 143187 */ // GIR_Coverage, 4894, |
| 50850 | /* 143187 */ GIR_EraseRootFromParent_Done, |
| 50851 | /* 143188 */ // Label 3076: @143188 |
| 50852 | /* 143188 */ GIM_Try, /*On fail goto*//*Label 3077*/ GIMT_Encode4(143215), // Rule ID 2568 // |
| 50853 | /* 143193 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50854 | /* 143196 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50855 | /* 143200 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50856 | /* 143204 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50857 | /* 143208 */ // (uaddsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPADDUSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 50858 | /* 143208 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSWYrr), |
| 50859 | /* 143213 */ GIR_RootConstrainSelectedInstOperands, |
| 50860 | /* 143214 */ // GIR_Coverage, 2568, |
| 50861 | /* 143214 */ GIR_Done, |
| 50862 | /* 143215 */ // Label 3077: @143215 |
| 50863 | /* 143215 */ GIM_Try, /*On fail goto*//*Label 3078*/ GIMT_Encode4(143242), // Rule ID 4891 // |
| 50864 | /* 143220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50865 | /* 143223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50866 | /* 143227 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50867 | /* 143231 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50868 | /* 143235 */ // (uaddsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPADDUSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 50869 | /* 143235 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ256rr), |
| 50870 | /* 143240 */ GIR_RootConstrainSelectedInstOperands, |
| 50871 | /* 143241 */ // GIR_Coverage, 4891, |
| 50872 | /* 143241 */ GIR_Done, |
| 50873 | /* 143242 */ // Label 3078: @143242 |
| 50874 | /* 143242 */ GIM_Reject, |
| 50875 | /* 143243 */ // Label 3072: @143243 |
| 50876 | /* 143243 */ GIM_Reject, |
| 50877 | /* 143244 */ // Label 3052: @143244 |
| 50878 | /* 143244 */ GIM_Try, /*On fail goto*//*Label 3079*/ GIMT_Encode4(143558), |
| 50879 | /* 143249 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 50880 | /* 143252 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 50881 | /* 143255 */ GIM_Try, /*On fail goto*//*Label 3080*/ GIMT_Encode4(143317), // Rule ID 23449 // |
| 50882 | /* 143260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50883 | /* 143263 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50884 | /* 143267 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50885 | /* 143271 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50886 | /* 143275 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50887 | /* 143278 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50888 | /* 143282 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50889 | /* 143286 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50890 | /* 143290 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50891 | /* 143292 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50892 | /* 143299 */ // (uaddsat:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPADDUSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50893 | /* 143299 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBYrm), |
| 50894 | /* 143302 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50895 | /* 143304 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50896 | /* 143306 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50897 | /* 143310 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50898 | /* 143315 */ GIR_RootConstrainSelectedInstOperands, |
| 50899 | /* 143316 */ // GIR_Coverage, 23449, |
| 50900 | /* 143316 */ GIR_EraseRootFromParent_Done, |
| 50901 | /* 143317 */ // Label 3080: @143317 |
| 50902 | /* 143317 */ GIM_Try, /*On fail goto*//*Label 3081*/ GIMT_Encode4(143379), // Rule ID 23780 // |
| 50903 | /* 143322 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50904 | /* 143325 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50905 | /* 143329 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50906 | /* 143333 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50907 | /* 143337 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50908 | /* 143340 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50909 | /* 143344 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50910 | /* 143348 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50911 | /* 143352 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50912 | /* 143354 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50913 | /* 143361 */ // (uaddsat:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPADDUSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50914 | /* 143361 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ256rm), |
| 50915 | /* 143364 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50916 | /* 143366 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50917 | /* 143368 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50918 | /* 143372 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50919 | /* 143377 */ GIR_RootConstrainSelectedInstOperands, |
| 50920 | /* 143378 */ // GIR_Coverage, 23780, |
| 50921 | /* 143378 */ GIR_EraseRootFromParent_Done, |
| 50922 | /* 143379 */ // Label 3081: @143379 |
| 50923 | /* 143379 */ GIM_Try, /*On fail goto*//*Label 3082*/ GIMT_Encode4(143441), // Rule ID 2563 // |
| 50924 | /* 143384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50925 | /* 143387 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50926 | /* 143391 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50927 | /* 143395 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50928 | /* 143399 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50929 | /* 143403 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50930 | /* 143406 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50931 | /* 143410 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50932 | /* 143414 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50933 | /* 143416 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50934 | /* 143423 */ // (uaddsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50935 | /* 143423 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBYrm), |
| 50936 | /* 143426 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50937 | /* 143428 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50938 | /* 143430 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50939 | /* 143434 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50940 | /* 143439 */ GIR_RootConstrainSelectedInstOperands, |
| 50941 | /* 143440 */ // GIR_Coverage, 2563, |
| 50942 | /* 143440 */ GIR_EraseRootFromParent_Done, |
| 50943 | /* 143441 */ // Label 3082: @143441 |
| 50944 | /* 143441 */ GIM_Try, /*On fail goto*//*Label 3083*/ GIMT_Encode4(143503), // Rule ID 4912 // |
| 50945 | /* 143446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50946 | /* 143449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50947 | /* 143453 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50948 | /* 143457 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50949 | /* 143461 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50950 | /* 143465 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50951 | /* 143468 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50952 | /* 143472 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50953 | /* 143476 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50954 | /* 143478 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50955 | /* 143485 */ // (uaddsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50956 | /* 143485 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ256rm), |
| 50957 | /* 143488 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50958 | /* 143490 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50959 | /* 143492 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50960 | /* 143496 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50961 | /* 143501 */ GIR_RootConstrainSelectedInstOperands, |
| 50962 | /* 143502 */ // GIR_Coverage, 4912, |
| 50963 | /* 143502 */ GIR_EraseRootFromParent_Done, |
| 50964 | /* 143503 */ // Label 3083: @143503 |
| 50965 | /* 143503 */ GIM_Try, /*On fail goto*//*Label 3084*/ GIMT_Encode4(143530), // Rule ID 2562 // |
| 50966 | /* 143508 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50967 | /* 143511 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50968 | /* 143515 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50969 | /* 143519 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50970 | /* 143523 */ // (uaddsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPADDUSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 50971 | /* 143523 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSBYrr), |
| 50972 | /* 143528 */ GIR_RootConstrainSelectedInstOperands, |
| 50973 | /* 143529 */ // GIR_Coverage, 2562, |
| 50974 | /* 143529 */ GIR_Done, |
| 50975 | /* 143530 */ // Label 3084: @143530 |
| 50976 | /* 143530 */ GIM_Try, /*On fail goto*//*Label 3085*/ GIMT_Encode4(143557), // Rule ID 4909 // |
| 50977 | /* 143535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50978 | /* 143538 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50979 | /* 143542 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50980 | /* 143546 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50981 | /* 143550 */ // (uaddsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPADDUSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 50982 | /* 143550 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ256rr), |
| 50983 | /* 143555 */ GIR_RootConstrainSelectedInstOperands, |
| 50984 | /* 143556 */ // GIR_Coverage, 4909, |
| 50985 | /* 143556 */ GIR_Done, |
| 50986 | /* 143557 */ // Label 3085: @143557 |
| 50987 | /* 143557 */ GIM_Reject, |
| 50988 | /* 143558 */ // Label 3079: @143558 |
| 50989 | /* 143558 */ GIM_Reject, |
| 50990 | /* 143559 */ // Label 3053: @143559 |
| 50991 | /* 143559 */ GIM_Try, /*On fail goto*//*Label 3086*/ GIMT_Encode4(143714), |
| 50992 | /* 143564 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 50993 | /* 143567 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 50994 | /* 143570 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50995 | /* 143574 */ GIM_Try, /*On fail goto*//*Label 3087*/ GIMT_Encode4(143632), // Rule ID 23768 // |
| 50996 | /* 143579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50997 | /* 143582 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50998 | /* 143586 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50999 | /* 143590 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51000 | /* 143593 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51001 | /* 143597 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51002 | /* 143601 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51003 | /* 143605 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51004 | /* 143607 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51005 | /* 143614 */ // (uaddsat:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPADDUSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51006 | /* 143614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZrm), |
| 51007 | /* 143617 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51008 | /* 143619 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51009 | /* 143621 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51010 | /* 143625 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51011 | /* 143630 */ GIR_RootConstrainSelectedInstOperands, |
| 51012 | /* 143631 */ // GIR_Coverage, 23768, |
| 51013 | /* 143631 */ GIR_EraseRootFromParent_Done, |
| 51014 | /* 143632 */ // Label 3087: @143632 |
| 51015 | /* 143632 */ GIM_Try, /*On fail goto*//*Label 3088*/ GIMT_Encode4(143690), // Rule ID 4888 // |
| 51016 | /* 143637 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51017 | /* 143640 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51018 | /* 143644 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51019 | /* 143648 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51020 | /* 143652 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51021 | /* 143655 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51022 | /* 143659 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51023 | /* 143663 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51024 | /* 143665 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51025 | /* 143672 */ // (uaddsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51026 | /* 143672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZrm), |
| 51027 | /* 143675 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51028 | /* 143677 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51029 | /* 143679 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51030 | /* 143683 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51031 | /* 143688 */ GIR_RootConstrainSelectedInstOperands, |
| 51032 | /* 143689 */ // GIR_Coverage, 4888, |
| 51033 | /* 143689 */ GIR_EraseRootFromParent_Done, |
| 51034 | /* 143690 */ // Label 3088: @143690 |
| 51035 | /* 143690 */ GIM_Try, /*On fail goto*//*Label 3089*/ GIMT_Encode4(143713), // Rule ID 4885 // |
| 51036 | /* 143695 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51037 | /* 143698 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51038 | /* 143702 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51039 | /* 143706 */ // (uaddsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPADDUSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 51040 | /* 143706 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZrr), |
| 51041 | /* 143711 */ GIR_RootConstrainSelectedInstOperands, |
| 51042 | /* 143712 */ // GIR_Coverage, 4885, |
| 51043 | /* 143712 */ GIR_Done, |
| 51044 | /* 143713 */ // Label 3089: @143713 |
| 51045 | /* 143713 */ GIM_Reject, |
| 51046 | /* 143714 */ // Label 3086: @143714 |
| 51047 | /* 143714 */ GIM_Reject, |
| 51048 | /* 143715 */ // Label 3054: @143715 |
| 51049 | /* 143715 */ GIM_Try, /*On fail goto*//*Label 3090*/ GIMT_Encode4(143870), |
| 51050 | /* 143720 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 51051 | /* 143723 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 51052 | /* 143726 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51053 | /* 143730 */ GIM_Try, /*On fail goto*//*Label 3091*/ GIMT_Encode4(143788), // Rule ID 23777 // |
| 51054 | /* 143735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51055 | /* 143738 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51056 | /* 143742 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51057 | /* 143746 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51058 | /* 143749 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51059 | /* 143753 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51060 | /* 143757 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51061 | /* 143761 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51062 | /* 143763 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51063 | /* 143770 */ // (uaddsat:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPADDUSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51064 | /* 143770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZrm), |
| 51065 | /* 143773 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51066 | /* 143775 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51067 | /* 143777 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51068 | /* 143781 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51069 | /* 143786 */ GIR_RootConstrainSelectedInstOperands, |
| 51070 | /* 143787 */ // GIR_Coverage, 23777, |
| 51071 | /* 143787 */ GIR_EraseRootFromParent_Done, |
| 51072 | /* 143788 */ // Label 3091: @143788 |
| 51073 | /* 143788 */ GIM_Try, /*On fail goto*//*Label 3092*/ GIMT_Encode4(143846), // Rule ID 4906 // |
| 51074 | /* 143793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51075 | /* 143796 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51076 | /* 143800 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51077 | /* 143804 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51078 | /* 143808 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51079 | /* 143811 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51080 | /* 143815 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51081 | /* 143819 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51082 | /* 143821 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51083 | /* 143828 */ // (uaddsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51084 | /* 143828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZrm), |
| 51085 | /* 143831 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51086 | /* 143833 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51087 | /* 143835 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51088 | /* 143839 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51089 | /* 143844 */ GIR_RootConstrainSelectedInstOperands, |
| 51090 | /* 143845 */ // GIR_Coverage, 4906, |
| 51091 | /* 143845 */ GIR_EraseRootFromParent_Done, |
| 51092 | /* 143846 */ // Label 3092: @143846 |
| 51093 | /* 143846 */ GIM_Try, /*On fail goto*//*Label 3093*/ GIMT_Encode4(143869), // Rule ID 4903 // |
| 51094 | /* 143851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51095 | /* 143854 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51096 | /* 143858 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51097 | /* 143862 */ // (uaddsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPADDUSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 51098 | /* 143862 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZrr), |
| 51099 | /* 143867 */ GIR_RootConstrainSelectedInstOperands, |
| 51100 | /* 143868 */ // GIR_Coverage, 4903, |
| 51101 | /* 143868 */ GIR_Done, |
| 51102 | /* 143869 */ // Label 3093: @143869 |
| 51103 | /* 143869 */ GIM_Reject, |
| 51104 | /* 143870 */ // Label 3090: @143870 |
| 51105 | /* 143870 */ GIM_Reject, |
| 51106 | /* 143871 */ // Label 3055: @143871 |
| 51107 | /* 143871 */ GIM_Reject, |
| 51108 | /* 143872 */ // Label 38: @143872 |
| 51109 | /* 143872 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(25), /*)*//*default:*//*Label 3100*/ GIMT_Encode4(145557), |
| 51110 | /* 143883 */ /*GILLT_v8s16*//*Label 3094*/ GIMT_Encode4(143931), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 51111 | /* 143899 */ /*GILLT_v16s8*//*Label 3095*/ GIMT_Encode4(144273), |
| 51112 | /* 143903 */ /*GILLT_v16s16*//*Label 3096*/ GIMT_Encode4(144615), GIMT_Encode4(0), GIMT_Encode4(0), |
| 51113 | /* 143915 */ /*GILLT_v32s8*//*Label 3097*/ GIMT_Encode4(144930), |
| 51114 | /* 143919 */ /*GILLT_v32s16*//*Label 3098*/ GIMT_Encode4(145245), GIMT_Encode4(0), |
| 51115 | /* 143927 */ /*GILLT_v64s8*//*Label 3099*/ GIMT_Encode4(145401), |
| 51116 | /* 143931 */ // Label 3094: @143931 |
| 51117 | /* 143931 */ GIM_Try, /*On fail goto*//*Label 3101*/ GIMT_Encode4(144272), |
| 51118 | /* 143936 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 51119 | /* 143939 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 51120 | /* 143942 */ GIM_Try, /*On fail goto*//*Label 3102*/ GIMT_Encode4(144004), // Rule ID 23444 // |
| 51121 | /* 143947 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51122 | /* 143950 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51123 | /* 143954 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51124 | /* 143958 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51125 | /* 143962 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51126 | /* 143965 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51127 | /* 143969 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51128 | /* 143973 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51129 | /* 143977 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51130 | /* 143979 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51131 | /* 143986 */ // (saddsat:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPADDSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51132 | /* 143986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWrm), |
| 51133 | /* 143989 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51134 | /* 143991 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51135 | /* 143993 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51136 | /* 143997 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51137 | /* 144002 */ GIR_RootConstrainSelectedInstOperands, |
| 51138 | /* 144003 */ // GIR_Coverage, 23444, |
| 51139 | /* 144003 */ GIR_EraseRootFromParent_Done, |
| 51140 | /* 144004 */ // Label 3102: @144004 |
| 51141 | /* 144004 */ GIM_Try, /*On fail goto*//*Label 3103*/ GIMT_Encode4(144066), // Rule ID 23756 // |
| 51142 | /* 144009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51143 | /* 144012 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51144 | /* 144016 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51145 | /* 144020 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51146 | /* 144024 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51147 | /* 144027 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51148 | /* 144031 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51149 | /* 144035 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51150 | /* 144039 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51151 | /* 144041 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51152 | /* 144048 */ // (saddsat:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPADDSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51153 | /* 144048 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ128rm), |
| 51154 | /* 144051 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51155 | /* 144053 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51156 | /* 144055 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51157 | /* 144059 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51158 | /* 144064 */ GIR_RootConstrainSelectedInstOperands, |
| 51159 | /* 144065 */ // GIR_Coverage, 23756, |
| 51160 | /* 144065 */ GIR_EraseRootFromParent_Done, |
| 51161 | /* 144066 */ // Label 3103: @144066 |
| 51162 | /* 144066 */ GIM_Try, /*On fail goto*//*Label 3104*/ GIMT_Encode4(144128), // Rule ID 2553 // |
| 51163 | /* 144071 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51164 | /* 144074 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51165 | /* 144078 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51166 | /* 144082 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51167 | /* 144086 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51168 | /* 144090 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51169 | /* 144093 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51170 | /* 144097 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51171 | /* 144101 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51172 | /* 144103 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51173 | /* 144110 */ // (saddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51174 | /* 144110 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWrm), |
| 51175 | /* 144113 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51176 | /* 144115 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51177 | /* 144117 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51178 | /* 144121 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51179 | /* 144126 */ GIR_RootConstrainSelectedInstOperands, |
| 51180 | /* 144127 */ // GIR_Coverage, 2553, |
| 51181 | /* 144127 */ GIR_EraseRootFromParent_Done, |
| 51182 | /* 144128 */ // Label 3104: @144128 |
| 51183 | /* 144128 */ GIM_Try, /*On fail goto*//*Label 3105*/ GIMT_Encode4(144190), // Rule ID 4828 // |
| 51184 | /* 144133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51185 | /* 144136 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51186 | /* 144140 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51187 | /* 144144 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51188 | /* 144148 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51189 | /* 144152 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51190 | /* 144155 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51191 | /* 144159 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51192 | /* 144163 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51193 | /* 144165 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51194 | /* 144172 */ // (saddsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51195 | /* 144172 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ128rm), |
| 51196 | /* 144175 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51197 | /* 144177 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51198 | /* 144179 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51199 | /* 144183 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51200 | /* 144188 */ GIR_RootConstrainSelectedInstOperands, |
| 51201 | /* 144189 */ // GIR_Coverage, 4828, |
| 51202 | /* 144189 */ GIR_EraseRootFromParent_Done, |
| 51203 | /* 144190 */ // Label 3105: @144190 |
| 51204 | /* 144190 */ GIM_Try, /*On fail goto*//*Label 3106*/ GIMT_Encode4(144217), // Rule ID 2552 // |
| 51205 | /* 144195 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51206 | /* 144198 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51207 | /* 144202 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51208 | /* 144206 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51209 | /* 144210 */ // (saddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPADDSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 51210 | /* 144210 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSWrr), |
| 51211 | /* 144215 */ GIR_RootConstrainSelectedInstOperands, |
| 51212 | /* 144216 */ // GIR_Coverage, 2552, |
| 51213 | /* 144216 */ GIR_Done, |
| 51214 | /* 144217 */ // Label 3106: @144217 |
| 51215 | /* 144217 */ GIM_Try, /*On fail goto*//*Label 3107*/ GIMT_Encode4(144244), // Rule ID 2554 // |
| 51216 | /* 144222 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 51217 | /* 144225 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51218 | /* 144229 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51219 | /* 144233 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51220 | /* 144237 */ // (saddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PADDSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 51221 | /* 144237 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDSWrr), |
| 51222 | /* 144242 */ GIR_RootConstrainSelectedInstOperands, |
| 51223 | /* 144243 */ // GIR_Coverage, 2554, |
| 51224 | /* 144243 */ GIR_Done, |
| 51225 | /* 144244 */ // Label 3107: @144244 |
| 51226 | /* 144244 */ GIM_Try, /*On fail goto*//*Label 3108*/ GIMT_Encode4(144271), // Rule ID 4825 // |
| 51227 | /* 144249 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51228 | /* 144252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51229 | /* 144256 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51230 | /* 144260 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51231 | /* 144264 */ // (saddsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPADDSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 51232 | /* 144264 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ128rr), |
| 51233 | /* 144269 */ GIR_RootConstrainSelectedInstOperands, |
| 51234 | /* 144270 */ // GIR_Coverage, 4825, |
| 51235 | /* 144270 */ GIR_Done, |
| 51236 | /* 144271 */ // Label 3108: @144271 |
| 51237 | /* 144271 */ GIM_Reject, |
| 51238 | /* 144272 */ // Label 3101: @144272 |
| 51239 | /* 144272 */ GIM_Reject, |
| 51240 | /* 144273 */ // Label 3095: @144273 |
| 51241 | /* 144273 */ GIM_Try, /*On fail goto*//*Label 3109*/ GIMT_Encode4(144614), |
| 51242 | /* 144278 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 51243 | /* 144281 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 51244 | /* 144284 */ GIM_Try, /*On fail goto*//*Label 3110*/ GIMT_Encode4(144346), // Rule ID 23441 // |
| 51245 | /* 144289 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51246 | /* 144292 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51247 | /* 144296 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51248 | /* 144300 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51249 | /* 144304 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51250 | /* 144307 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51251 | /* 144311 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51252 | /* 144315 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51253 | /* 144319 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51254 | /* 144321 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51255 | /* 144328 */ // (saddsat:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPADDSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51256 | /* 144328 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBrm), |
| 51257 | /* 144331 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51258 | /* 144333 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51259 | /* 144335 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51260 | /* 144339 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51261 | /* 144344 */ GIR_RootConstrainSelectedInstOperands, |
| 51262 | /* 144345 */ // GIR_Coverage, 23441, |
| 51263 | /* 144345 */ GIR_EraseRootFromParent_Done, |
| 51264 | /* 144346 */ // Label 3110: @144346 |
| 51265 | /* 144346 */ GIM_Try, /*On fail goto*//*Label 3111*/ GIMT_Encode4(144408), // Rule ID 23765 // |
| 51266 | /* 144351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51267 | /* 144354 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51268 | /* 144358 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51269 | /* 144362 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51270 | /* 144366 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51271 | /* 144369 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51272 | /* 144373 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51273 | /* 144377 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51274 | /* 144381 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51275 | /* 144383 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51276 | /* 144390 */ // (saddsat:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPADDSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51277 | /* 144390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ128rm), |
| 51278 | /* 144393 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51279 | /* 144395 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51280 | /* 144397 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51281 | /* 144401 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51282 | /* 144406 */ GIR_RootConstrainSelectedInstOperands, |
| 51283 | /* 144407 */ // GIR_Coverage, 23765, |
| 51284 | /* 144407 */ GIR_EraseRootFromParent_Done, |
| 51285 | /* 144408 */ // Label 3111: @144408 |
| 51286 | /* 144408 */ GIM_Try, /*On fail goto*//*Label 3112*/ GIMT_Encode4(144470), // Rule ID 2547 // |
| 51287 | /* 144413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51288 | /* 144416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51289 | /* 144420 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51290 | /* 144424 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51291 | /* 144428 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51292 | /* 144432 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51293 | /* 144435 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51294 | /* 144439 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51295 | /* 144443 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51296 | /* 144445 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51297 | /* 144452 */ // (saddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51298 | /* 144452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBrm), |
| 51299 | /* 144455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51300 | /* 144457 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51301 | /* 144459 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51302 | /* 144463 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51303 | /* 144468 */ GIR_RootConstrainSelectedInstOperands, |
| 51304 | /* 144469 */ // GIR_Coverage, 2547, |
| 51305 | /* 144469 */ GIR_EraseRootFromParent_Done, |
| 51306 | /* 144470 */ // Label 3112: @144470 |
| 51307 | /* 144470 */ GIM_Try, /*On fail goto*//*Label 3113*/ GIMT_Encode4(144532), // Rule ID 4846 // |
| 51308 | /* 144475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51309 | /* 144478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51310 | /* 144482 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51311 | /* 144486 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51312 | /* 144490 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51313 | /* 144494 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51314 | /* 144497 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51315 | /* 144501 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51316 | /* 144505 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51317 | /* 144507 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51318 | /* 144514 */ // (saddsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51319 | /* 144514 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ128rm), |
| 51320 | /* 144517 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51321 | /* 144519 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51322 | /* 144521 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51323 | /* 144525 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51324 | /* 144530 */ GIR_RootConstrainSelectedInstOperands, |
| 51325 | /* 144531 */ // GIR_Coverage, 4846, |
| 51326 | /* 144531 */ GIR_EraseRootFromParent_Done, |
| 51327 | /* 144532 */ // Label 3113: @144532 |
| 51328 | /* 144532 */ GIM_Try, /*On fail goto*//*Label 3114*/ GIMT_Encode4(144559), // Rule ID 2546 // |
| 51329 | /* 144537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51330 | /* 144540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51331 | /* 144544 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51332 | /* 144548 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51333 | /* 144552 */ // (saddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPADDSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 51334 | /* 144552 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSBrr), |
| 51335 | /* 144557 */ GIR_RootConstrainSelectedInstOperands, |
| 51336 | /* 144558 */ // GIR_Coverage, 2546, |
| 51337 | /* 144558 */ GIR_Done, |
| 51338 | /* 144559 */ // Label 3114: @144559 |
| 51339 | /* 144559 */ GIM_Try, /*On fail goto*//*Label 3115*/ GIMT_Encode4(144586), // Rule ID 2548 // |
| 51340 | /* 144564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 51341 | /* 144567 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51342 | /* 144571 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51343 | /* 144575 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51344 | /* 144579 */ // (saddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PADDSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 51345 | /* 144579 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDSBrr), |
| 51346 | /* 144584 */ GIR_RootConstrainSelectedInstOperands, |
| 51347 | /* 144585 */ // GIR_Coverage, 2548, |
| 51348 | /* 144585 */ GIR_Done, |
| 51349 | /* 144586 */ // Label 3115: @144586 |
| 51350 | /* 144586 */ GIM_Try, /*On fail goto*//*Label 3116*/ GIMT_Encode4(144613), // Rule ID 4843 // |
| 51351 | /* 144591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51352 | /* 144594 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51353 | /* 144598 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51354 | /* 144602 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51355 | /* 144606 */ // (saddsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPADDSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 51356 | /* 144606 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ128rr), |
| 51357 | /* 144611 */ GIR_RootConstrainSelectedInstOperands, |
| 51358 | /* 144612 */ // GIR_Coverage, 4843, |
| 51359 | /* 144612 */ GIR_Done, |
| 51360 | /* 144613 */ // Label 3116: @144613 |
| 51361 | /* 144613 */ GIM_Reject, |
| 51362 | /* 144614 */ // Label 3109: @144614 |
| 51363 | /* 144614 */ GIM_Reject, |
| 51364 | /* 144615 */ // Label 3096: @144615 |
| 51365 | /* 144615 */ GIM_Try, /*On fail goto*//*Label 3117*/ GIMT_Encode4(144929), |
| 51366 | /* 144620 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 51367 | /* 144623 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 51368 | /* 144626 */ GIM_Try, /*On fail goto*//*Label 3118*/ GIMT_Encode4(144688), // Rule ID 23446 // |
| 51369 | /* 144631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51370 | /* 144634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51371 | /* 144638 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51372 | /* 144642 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51373 | /* 144646 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51374 | /* 144649 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51375 | /* 144653 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51376 | /* 144657 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51377 | /* 144661 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51378 | /* 144663 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51379 | /* 144670 */ // (saddsat:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPADDSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51380 | /* 144670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWYrm), |
| 51381 | /* 144673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51382 | /* 144675 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51383 | /* 144677 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51384 | /* 144681 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51385 | /* 144686 */ GIR_RootConstrainSelectedInstOperands, |
| 51386 | /* 144687 */ // GIR_Coverage, 23446, |
| 51387 | /* 144687 */ GIR_EraseRootFromParent_Done, |
| 51388 | /* 144688 */ // Label 3118: @144688 |
| 51389 | /* 144688 */ GIM_Try, /*On fail goto*//*Label 3119*/ GIMT_Encode4(144750), // Rule ID 23753 // |
| 51390 | /* 144693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51391 | /* 144696 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51392 | /* 144700 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51393 | /* 144704 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51394 | /* 144708 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51395 | /* 144711 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51396 | /* 144715 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51397 | /* 144719 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51398 | /* 144723 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51399 | /* 144725 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51400 | /* 144732 */ // (saddsat:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPADDSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51401 | /* 144732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ256rm), |
| 51402 | /* 144735 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51403 | /* 144737 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51404 | /* 144739 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51405 | /* 144743 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51406 | /* 144748 */ GIR_RootConstrainSelectedInstOperands, |
| 51407 | /* 144749 */ // GIR_Coverage, 23753, |
| 51408 | /* 144749 */ GIR_EraseRootFromParent_Done, |
| 51409 | /* 144750 */ // Label 3119: @144750 |
| 51410 | /* 144750 */ GIM_Try, /*On fail goto*//*Label 3120*/ GIMT_Encode4(144812), // Rule ID 2557 // |
| 51411 | /* 144755 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51412 | /* 144758 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51413 | /* 144762 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51414 | /* 144766 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51415 | /* 144770 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51416 | /* 144774 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51417 | /* 144777 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51418 | /* 144781 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51419 | /* 144785 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51420 | /* 144787 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51421 | /* 144794 */ // (saddsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51422 | /* 144794 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWYrm), |
| 51423 | /* 144797 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51424 | /* 144799 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51425 | /* 144801 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51426 | /* 144805 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51427 | /* 144810 */ GIR_RootConstrainSelectedInstOperands, |
| 51428 | /* 144811 */ // GIR_Coverage, 2557, |
| 51429 | /* 144811 */ GIR_EraseRootFromParent_Done, |
| 51430 | /* 144812 */ // Label 3120: @144812 |
| 51431 | /* 144812 */ GIM_Try, /*On fail goto*//*Label 3121*/ GIMT_Encode4(144874), // Rule ID 4822 // |
| 51432 | /* 144817 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51433 | /* 144820 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51434 | /* 144824 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51435 | /* 144828 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51436 | /* 144832 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51437 | /* 144836 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51438 | /* 144839 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51439 | /* 144843 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51440 | /* 144847 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51441 | /* 144849 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51442 | /* 144856 */ // (saddsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51443 | /* 144856 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ256rm), |
| 51444 | /* 144859 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51445 | /* 144861 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51446 | /* 144863 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51447 | /* 144867 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51448 | /* 144872 */ GIR_RootConstrainSelectedInstOperands, |
| 51449 | /* 144873 */ // GIR_Coverage, 4822, |
| 51450 | /* 144873 */ GIR_EraseRootFromParent_Done, |
| 51451 | /* 144874 */ // Label 3121: @144874 |
| 51452 | /* 144874 */ GIM_Try, /*On fail goto*//*Label 3122*/ GIMT_Encode4(144901), // Rule ID 2556 // |
| 51453 | /* 144879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51454 | /* 144882 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51455 | /* 144886 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51456 | /* 144890 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51457 | /* 144894 */ // (saddsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPADDSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 51458 | /* 144894 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSWYrr), |
| 51459 | /* 144899 */ GIR_RootConstrainSelectedInstOperands, |
| 51460 | /* 144900 */ // GIR_Coverage, 2556, |
| 51461 | /* 144900 */ GIR_Done, |
| 51462 | /* 144901 */ // Label 3122: @144901 |
| 51463 | /* 144901 */ GIM_Try, /*On fail goto*//*Label 3123*/ GIMT_Encode4(144928), // Rule ID 4819 // |
| 51464 | /* 144906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51465 | /* 144909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51466 | /* 144913 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51467 | /* 144917 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51468 | /* 144921 */ // (saddsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPADDSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 51469 | /* 144921 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ256rr), |
| 51470 | /* 144926 */ GIR_RootConstrainSelectedInstOperands, |
| 51471 | /* 144927 */ // GIR_Coverage, 4819, |
| 51472 | /* 144927 */ GIR_Done, |
| 51473 | /* 144928 */ // Label 3123: @144928 |
| 51474 | /* 144928 */ GIM_Reject, |
| 51475 | /* 144929 */ // Label 3117: @144929 |
| 51476 | /* 144929 */ GIM_Reject, |
| 51477 | /* 144930 */ // Label 3097: @144930 |
| 51478 | /* 144930 */ GIM_Try, /*On fail goto*//*Label 3124*/ GIMT_Encode4(145244), |
| 51479 | /* 144935 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 51480 | /* 144938 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 51481 | /* 144941 */ GIM_Try, /*On fail goto*//*Label 3125*/ GIMT_Encode4(145003), // Rule ID 23443 // |
| 51482 | /* 144946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51483 | /* 144949 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51484 | /* 144953 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51485 | /* 144957 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51486 | /* 144961 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51487 | /* 144964 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51488 | /* 144968 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51489 | /* 144972 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51490 | /* 144976 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51491 | /* 144978 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51492 | /* 144985 */ // (saddsat:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPADDSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51493 | /* 144985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBYrm), |
| 51494 | /* 144988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51495 | /* 144990 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51496 | /* 144992 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51497 | /* 144996 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51498 | /* 145001 */ GIR_RootConstrainSelectedInstOperands, |
| 51499 | /* 145002 */ // GIR_Coverage, 23443, |
| 51500 | /* 145002 */ GIR_EraseRootFromParent_Done, |
| 51501 | /* 145003 */ // Label 3125: @145003 |
| 51502 | /* 145003 */ GIM_Try, /*On fail goto*//*Label 3126*/ GIMT_Encode4(145065), // Rule ID 23762 // |
| 51503 | /* 145008 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51504 | /* 145011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51505 | /* 145015 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51506 | /* 145019 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51507 | /* 145023 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51508 | /* 145026 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51509 | /* 145030 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51510 | /* 145034 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51511 | /* 145038 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51512 | /* 145040 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51513 | /* 145047 */ // (saddsat:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPADDSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51514 | /* 145047 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ256rm), |
| 51515 | /* 145050 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51516 | /* 145052 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51517 | /* 145054 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51518 | /* 145058 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51519 | /* 145063 */ GIR_RootConstrainSelectedInstOperands, |
| 51520 | /* 145064 */ // GIR_Coverage, 23762, |
| 51521 | /* 145064 */ GIR_EraseRootFromParent_Done, |
| 51522 | /* 145065 */ // Label 3126: @145065 |
| 51523 | /* 145065 */ GIM_Try, /*On fail goto*//*Label 3127*/ GIMT_Encode4(145127), // Rule ID 2551 // |
| 51524 | /* 145070 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51525 | /* 145073 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51526 | /* 145077 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51527 | /* 145081 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51528 | /* 145085 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51529 | /* 145089 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51530 | /* 145092 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51531 | /* 145096 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51532 | /* 145100 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51533 | /* 145102 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51534 | /* 145109 */ // (saddsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51535 | /* 145109 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBYrm), |
| 51536 | /* 145112 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51537 | /* 145114 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51538 | /* 145116 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51539 | /* 145120 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51540 | /* 145125 */ GIR_RootConstrainSelectedInstOperands, |
| 51541 | /* 145126 */ // GIR_Coverage, 2551, |
| 51542 | /* 145126 */ GIR_EraseRootFromParent_Done, |
| 51543 | /* 145127 */ // Label 3127: @145127 |
| 51544 | /* 145127 */ GIM_Try, /*On fail goto*//*Label 3128*/ GIMT_Encode4(145189), // Rule ID 4840 // |
| 51545 | /* 145132 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51546 | /* 145135 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51547 | /* 145139 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51548 | /* 145143 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51549 | /* 145147 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51550 | /* 145151 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51551 | /* 145154 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51552 | /* 145158 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51553 | /* 145162 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51554 | /* 145164 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51555 | /* 145171 */ // (saddsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51556 | /* 145171 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ256rm), |
| 51557 | /* 145174 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51558 | /* 145176 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51559 | /* 145178 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51560 | /* 145182 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51561 | /* 145187 */ GIR_RootConstrainSelectedInstOperands, |
| 51562 | /* 145188 */ // GIR_Coverage, 4840, |
| 51563 | /* 145188 */ GIR_EraseRootFromParent_Done, |
| 51564 | /* 145189 */ // Label 3128: @145189 |
| 51565 | /* 145189 */ GIM_Try, /*On fail goto*//*Label 3129*/ GIMT_Encode4(145216), // Rule ID 2550 // |
| 51566 | /* 145194 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51567 | /* 145197 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51568 | /* 145201 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51569 | /* 145205 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51570 | /* 145209 */ // (saddsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPADDSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 51571 | /* 145209 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSBYrr), |
| 51572 | /* 145214 */ GIR_RootConstrainSelectedInstOperands, |
| 51573 | /* 145215 */ // GIR_Coverage, 2550, |
| 51574 | /* 145215 */ GIR_Done, |
| 51575 | /* 145216 */ // Label 3129: @145216 |
| 51576 | /* 145216 */ GIM_Try, /*On fail goto*//*Label 3130*/ GIMT_Encode4(145243), // Rule ID 4837 // |
| 51577 | /* 145221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51578 | /* 145224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51579 | /* 145228 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51580 | /* 145232 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51581 | /* 145236 */ // (saddsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPADDSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 51582 | /* 145236 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ256rr), |
| 51583 | /* 145241 */ GIR_RootConstrainSelectedInstOperands, |
| 51584 | /* 145242 */ // GIR_Coverage, 4837, |
| 51585 | /* 145242 */ GIR_Done, |
| 51586 | /* 145243 */ // Label 3130: @145243 |
| 51587 | /* 145243 */ GIM_Reject, |
| 51588 | /* 145244 */ // Label 3124: @145244 |
| 51589 | /* 145244 */ GIM_Reject, |
| 51590 | /* 145245 */ // Label 3098: @145245 |
| 51591 | /* 145245 */ GIM_Try, /*On fail goto*//*Label 3131*/ GIMT_Encode4(145400), |
| 51592 | /* 145250 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 51593 | /* 145253 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 51594 | /* 145256 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51595 | /* 145260 */ GIM_Try, /*On fail goto*//*Label 3132*/ GIMT_Encode4(145318), // Rule ID 23750 // |
| 51596 | /* 145265 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51597 | /* 145268 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51598 | /* 145272 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51599 | /* 145276 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51600 | /* 145279 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51601 | /* 145283 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51602 | /* 145287 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51603 | /* 145291 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51604 | /* 145293 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51605 | /* 145300 */ // (saddsat:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPADDSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51606 | /* 145300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZrm), |
| 51607 | /* 145303 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51608 | /* 145305 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51609 | /* 145307 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51610 | /* 145311 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51611 | /* 145316 */ GIR_RootConstrainSelectedInstOperands, |
| 51612 | /* 145317 */ // GIR_Coverage, 23750, |
| 51613 | /* 145317 */ GIR_EraseRootFromParent_Done, |
| 51614 | /* 145318 */ // Label 3132: @145318 |
| 51615 | /* 145318 */ GIM_Try, /*On fail goto*//*Label 3133*/ GIMT_Encode4(145376), // Rule ID 4816 // |
| 51616 | /* 145323 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51617 | /* 145326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51618 | /* 145330 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51619 | /* 145334 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51620 | /* 145338 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51621 | /* 145341 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51622 | /* 145345 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51623 | /* 145349 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51624 | /* 145351 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51625 | /* 145358 */ // (saddsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51626 | /* 145358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZrm), |
| 51627 | /* 145361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51628 | /* 145363 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51629 | /* 145365 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51630 | /* 145369 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51631 | /* 145374 */ GIR_RootConstrainSelectedInstOperands, |
| 51632 | /* 145375 */ // GIR_Coverage, 4816, |
| 51633 | /* 145375 */ GIR_EraseRootFromParent_Done, |
| 51634 | /* 145376 */ // Label 3133: @145376 |
| 51635 | /* 145376 */ GIM_Try, /*On fail goto*//*Label 3134*/ GIMT_Encode4(145399), // Rule ID 4813 // |
| 51636 | /* 145381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51637 | /* 145384 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51638 | /* 145388 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51639 | /* 145392 */ // (saddsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPADDSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 51640 | /* 145392 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSWZrr), |
| 51641 | /* 145397 */ GIR_RootConstrainSelectedInstOperands, |
| 51642 | /* 145398 */ // GIR_Coverage, 4813, |
| 51643 | /* 145398 */ GIR_Done, |
| 51644 | /* 145399 */ // Label 3134: @145399 |
| 51645 | /* 145399 */ GIM_Reject, |
| 51646 | /* 145400 */ // Label 3131: @145400 |
| 51647 | /* 145400 */ GIM_Reject, |
| 51648 | /* 145401 */ // Label 3099: @145401 |
| 51649 | /* 145401 */ GIM_Try, /*On fail goto*//*Label 3135*/ GIMT_Encode4(145556), |
| 51650 | /* 145406 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 51651 | /* 145409 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 51652 | /* 145412 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51653 | /* 145416 */ GIM_Try, /*On fail goto*//*Label 3136*/ GIMT_Encode4(145474), // Rule ID 23759 // |
| 51654 | /* 145421 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51655 | /* 145424 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51656 | /* 145428 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51657 | /* 145432 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51658 | /* 145435 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51659 | /* 145439 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51660 | /* 145443 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51661 | /* 145447 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51662 | /* 145449 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51663 | /* 145456 */ // (saddsat:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPADDSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51664 | /* 145456 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZrm), |
| 51665 | /* 145459 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51666 | /* 145461 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51667 | /* 145463 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51668 | /* 145467 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51669 | /* 145472 */ GIR_RootConstrainSelectedInstOperands, |
| 51670 | /* 145473 */ // GIR_Coverage, 23759, |
| 51671 | /* 145473 */ GIR_EraseRootFromParent_Done, |
| 51672 | /* 145474 */ // Label 3136: @145474 |
| 51673 | /* 145474 */ GIM_Try, /*On fail goto*//*Label 3137*/ GIMT_Encode4(145532), // Rule ID 4834 // |
| 51674 | /* 145479 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51675 | /* 145482 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51676 | /* 145486 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51677 | /* 145490 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51678 | /* 145494 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51679 | /* 145497 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51680 | /* 145501 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51681 | /* 145505 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51682 | /* 145507 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51683 | /* 145514 */ // (saddsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51684 | /* 145514 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZrm), |
| 51685 | /* 145517 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51686 | /* 145519 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51687 | /* 145521 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51688 | /* 145525 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51689 | /* 145530 */ GIR_RootConstrainSelectedInstOperands, |
| 51690 | /* 145531 */ // GIR_Coverage, 4834, |
| 51691 | /* 145531 */ GIR_EraseRootFromParent_Done, |
| 51692 | /* 145532 */ // Label 3137: @145532 |
| 51693 | /* 145532 */ GIM_Try, /*On fail goto*//*Label 3138*/ GIMT_Encode4(145555), // Rule ID 4831 // |
| 51694 | /* 145537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51695 | /* 145540 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51696 | /* 145544 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51697 | /* 145548 */ // (saddsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPADDSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 51698 | /* 145548 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSBZrr), |
| 51699 | /* 145553 */ GIR_RootConstrainSelectedInstOperands, |
| 51700 | /* 145554 */ // GIR_Coverage, 4831, |
| 51701 | /* 145554 */ GIR_Done, |
| 51702 | /* 145555 */ // Label 3138: @145555 |
| 51703 | /* 145555 */ GIM_Reject, |
| 51704 | /* 145556 */ // Label 3135: @145556 |
| 51705 | /* 145556 */ GIM_Reject, |
| 51706 | /* 145557 */ // Label 3100: @145557 |
| 51707 | /* 145557 */ GIM_Reject, |
| 51708 | /* 145558 */ // Label 39: @145558 |
| 51709 | /* 145558 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(25), /*)*//*default:*//*Label 3145*/ GIMT_Encode4(146623), |
| 51710 | /* 145569 */ /*GILLT_v8s16*//*Label 3139*/ GIMT_Encode4(145617), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 51711 | /* 145585 */ /*GILLT_v16s8*//*Label 3140*/ GIMT_Encode4(145835), |
| 51712 | /* 145589 */ /*GILLT_v16s16*//*Label 3141*/ GIMT_Encode4(146053), GIMT_Encode4(0), GIMT_Encode4(0), |
| 51713 | /* 145601 */ /*GILLT_v32s8*//*Label 3142*/ GIMT_Encode4(146244), |
| 51714 | /* 145605 */ /*GILLT_v32s16*//*Label 3143*/ GIMT_Encode4(146435), GIMT_Encode4(0), |
| 51715 | /* 145613 */ /*GILLT_v64s8*//*Label 3144*/ GIMT_Encode4(146529), |
| 51716 | /* 145617 */ // Label 3139: @145617 |
| 51717 | /* 145617 */ GIM_Try, /*On fail goto*//*Label 3146*/ GIMT_Encode4(145834), |
| 51718 | /* 145622 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 51719 | /* 145625 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 51720 | /* 145628 */ GIM_Try, /*On fail goto*//*Label 3147*/ GIMT_Encode4(145690), // Rule ID 2631 // |
| 51721 | /* 145633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51722 | /* 145636 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51723 | /* 145640 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51724 | /* 145644 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51725 | /* 145648 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51726 | /* 145652 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51727 | /* 145655 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51728 | /* 145659 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51729 | /* 145663 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51730 | /* 145665 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51731 | /* 145672 */ // (usubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51732 | /* 145672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWrm), |
| 51733 | /* 145675 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51734 | /* 145677 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51735 | /* 145679 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51736 | /* 145683 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51737 | /* 145688 */ GIR_RootConstrainSelectedInstOperands, |
| 51738 | /* 145689 */ // GIR_Coverage, 2631, |
| 51739 | /* 145689 */ GIR_EraseRootFromParent_Done, |
| 51740 | /* 145690 */ // Label 3147: @145690 |
| 51741 | /* 145690 */ GIM_Try, /*On fail goto*//*Label 3148*/ GIMT_Encode4(145752), // Rule ID 4936 // |
| 51742 | /* 145695 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51743 | /* 145698 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51744 | /* 145702 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51745 | /* 145706 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51746 | /* 145710 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51747 | /* 145714 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51748 | /* 145717 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51749 | /* 145721 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51750 | /* 145725 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51751 | /* 145727 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51752 | /* 145734 */ // (usubsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51753 | /* 145734 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZ128rm), |
| 51754 | /* 145737 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51755 | /* 145739 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51756 | /* 145741 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51757 | /* 145745 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51758 | /* 145750 */ GIR_RootConstrainSelectedInstOperands, |
| 51759 | /* 145751 */ // GIR_Coverage, 4936, |
| 51760 | /* 145751 */ GIR_EraseRootFromParent_Done, |
| 51761 | /* 145752 */ // Label 3148: @145752 |
| 51762 | /* 145752 */ GIM_Try, /*On fail goto*//*Label 3149*/ GIMT_Encode4(145779), // Rule ID 2630 // |
| 51763 | /* 145757 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51764 | /* 145760 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51765 | /* 145764 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51766 | /* 145768 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51767 | /* 145772 */ // (usubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPSUBUSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 51768 | /* 145772 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWrr), |
| 51769 | /* 145777 */ GIR_RootConstrainSelectedInstOperands, |
| 51770 | /* 145778 */ // GIR_Coverage, 2630, |
| 51771 | /* 145778 */ GIR_Done, |
| 51772 | /* 145779 */ // Label 3149: @145779 |
| 51773 | /* 145779 */ GIM_Try, /*On fail goto*//*Label 3150*/ GIMT_Encode4(145806), // Rule ID 2632 // |
| 51774 | /* 145784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 51775 | /* 145787 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51776 | /* 145791 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51777 | /* 145795 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51778 | /* 145799 */ // (usubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PSUBUSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 51779 | /* 145799 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBUSWrr), |
| 51780 | /* 145804 */ GIR_RootConstrainSelectedInstOperands, |
| 51781 | /* 145805 */ // GIR_Coverage, 2632, |
| 51782 | /* 145805 */ GIR_Done, |
| 51783 | /* 145806 */ // Label 3150: @145806 |
| 51784 | /* 145806 */ GIM_Try, /*On fail goto*//*Label 3151*/ GIMT_Encode4(145833), // Rule ID 4933 // |
| 51785 | /* 145811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51786 | /* 145814 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51787 | /* 145818 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51788 | /* 145822 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51789 | /* 145826 */ // (usubsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPSUBUSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 51790 | /* 145826 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZ128rr), |
| 51791 | /* 145831 */ GIR_RootConstrainSelectedInstOperands, |
| 51792 | /* 145832 */ // GIR_Coverage, 4933, |
| 51793 | /* 145832 */ GIR_Done, |
| 51794 | /* 145833 */ // Label 3151: @145833 |
| 51795 | /* 145833 */ GIM_Reject, |
| 51796 | /* 145834 */ // Label 3146: @145834 |
| 51797 | /* 145834 */ GIM_Reject, |
| 51798 | /* 145835 */ // Label 3140: @145835 |
| 51799 | /* 145835 */ GIM_Try, /*On fail goto*//*Label 3152*/ GIMT_Encode4(146052), |
| 51800 | /* 145840 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 51801 | /* 145843 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 51802 | /* 145846 */ GIM_Try, /*On fail goto*//*Label 3153*/ GIMT_Encode4(145908), // Rule ID 2625 // |
| 51803 | /* 145851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51804 | /* 145854 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51805 | /* 145858 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51806 | /* 145862 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51807 | /* 145866 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51808 | /* 145870 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51809 | /* 145873 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51810 | /* 145877 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51811 | /* 145881 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51812 | /* 145883 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51813 | /* 145890 */ // (usubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51814 | /* 145890 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBrm), |
| 51815 | /* 145893 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51816 | /* 145895 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51817 | /* 145897 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51818 | /* 145901 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51819 | /* 145906 */ GIR_RootConstrainSelectedInstOperands, |
| 51820 | /* 145907 */ // GIR_Coverage, 2625, |
| 51821 | /* 145907 */ GIR_EraseRootFromParent_Done, |
| 51822 | /* 145908 */ // Label 3153: @145908 |
| 51823 | /* 145908 */ GIM_Try, /*On fail goto*//*Label 3154*/ GIMT_Encode4(145970), // Rule ID 4954 // |
| 51824 | /* 145913 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51825 | /* 145916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51826 | /* 145920 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51827 | /* 145924 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51828 | /* 145928 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51829 | /* 145932 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51830 | /* 145935 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51831 | /* 145939 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51832 | /* 145943 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51833 | /* 145945 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51834 | /* 145952 */ // (usubsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51835 | /* 145952 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZ128rm), |
| 51836 | /* 145955 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51837 | /* 145957 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51838 | /* 145959 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51839 | /* 145963 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51840 | /* 145968 */ GIR_RootConstrainSelectedInstOperands, |
| 51841 | /* 145969 */ // GIR_Coverage, 4954, |
| 51842 | /* 145969 */ GIR_EraseRootFromParent_Done, |
| 51843 | /* 145970 */ // Label 3154: @145970 |
| 51844 | /* 145970 */ GIM_Try, /*On fail goto*//*Label 3155*/ GIMT_Encode4(145997), // Rule ID 2624 // |
| 51845 | /* 145975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51846 | /* 145978 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51847 | /* 145982 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51848 | /* 145986 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51849 | /* 145990 */ // (usubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPSUBUSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 51850 | /* 145990 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBrr), |
| 51851 | /* 145995 */ GIR_RootConstrainSelectedInstOperands, |
| 51852 | /* 145996 */ // GIR_Coverage, 2624, |
| 51853 | /* 145996 */ GIR_Done, |
| 51854 | /* 145997 */ // Label 3155: @145997 |
| 51855 | /* 145997 */ GIM_Try, /*On fail goto*//*Label 3156*/ GIMT_Encode4(146024), // Rule ID 2626 // |
| 51856 | /* 146002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 51857 | /* 146005 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51858 | /* 146009 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51859 | /* 146013 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51860 | /* 146017 */ // (usubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PSUBUSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 51861 | /* 146017 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBUSBrr), |
| 51862 | /* 146022 */ GIR_RootConstrainSelectedInstOperands, |
| 51863 | /* 146023 */ // GIR_Coverage, 2626, |
| 51864 | /* 146023 */ GIR_Done, |
| 51865 | /* 146024 */ // Label 3156: @146024 |
| 51866 | /* 146024 */ GIM_Try, /*On fail goto*//*Label 3157*/ GIMT_Encode4(146051), // Rule ID 4951 // |
| 51867 | /* 146029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51868 | /* 146032 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51869 | /* 146036 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51870 | /* 146040 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51871 | /* 146044 */ // (usubsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPSUBUSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 51872 | /* 146044 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZ128rr), |
| 51873 | /* 146049 */ GIR_RootConstrainSelectedInstOperands, |
| 51874 | /* 146050 */ // GIR_Coverage, 4951, |
| 51875 | /* 146050 */ GIR_Done, |
| 51876 | /* 146051 */ // Label 3157: @146051 |
| 51877 | /* 146051 */ GIM_Reject, |
| 51878 | /* 146052 */ // Label 3152: @146052 |
| 51879 | /* 146052 */ GIM_Reject, |
| 51880 | /* 146053 */ // Label 3141: @146053 |
| 51881 | /* 146053 */ GIM_Try, /*On fail goto*//*Label 3158*/ GIMT_Encode4(146243), |
| 51882 | /* 146058 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 51883 | /* 146061 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 51884 | /* 146064 */ GIM_Try, /*On fail goto*//*Label 3159*/ GIMT_Encode4(146126), // Rule ID 2635 // |
| 51885 | /* 146069 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51886 | /* 146072 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51887 | /* 146076 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51888 | /* 146080 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51889 | /* 146084 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51890 | /* 146088 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51891 | /* 146091 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51892 | /* 146095 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51893 | /* 146099 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51894 | /* 146101 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51895 | /* 146108 */ // (usubsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51896 | /* 146108 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWYrm), |
| 51897 | /* 146111 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51898 | /* 146113 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51899 | /* 146115 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51900 | /* 146119 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51901 | /* 146124 */ GIR_RootConstrainSelectedInstOperands, |
| 51902 | /* 146125 */ // GIR_Coverage, 2635, |
| 51903 | /* 146125 */ GIR_EraseRootFromParent_Done, |
| 51904 | /* 146126 */ // Label 3159: @146126 |
| 51905 | /* 146126 */ GIM_Try, /*On fail goto*//*Label 3160*/ GIMT_Encode4(146188), // Rule ID 4930 // |
| 51906 | /* 146131 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51907 | /* 146134 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51908 | /* 146138 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51909 | /* 146142 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51910 | /* 146146 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51911 | /* 146150 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51912 | /* 146153 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51913 | /* 146157 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51914 | /* 146161 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51915 | /* 146163 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51916 | /* 146170 */ // (usubsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51917 | /* 146170 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZ256rm), |
| 51918 | /* 146173 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51919 | /* 146175 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51920 | /* 146177 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51921 | /* 146181 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51922 | /* 146186 */ GIR_RootConstrainSelectedInstOperands, |
| 51923 | /* 146187 */ // GIR_Coverage, 4930, |
| 51924 | /* 146187 */ GIR_EraseRootFromParent_Done, |
| 51925 | /* 146188 */ // Label 3160: @146188 |
| 51926 | /* 146188 */ GIM_Try, /*On fail goto*//*Label 3161*/ GIMT_Encode4(146215), // Rule ID 2634 // |
| 51927 | /* 146193 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51928 | /* 146196 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51929 | /* 146200 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51930 | /* 146204 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51931 | /* 146208 */ // (usubsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPSUBUSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 51932 | /* 146208 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWYrr), |
| 51933 | /* 146213 */ GIR_RootConstrainSelectedInstOperands, |
| 51934 | /* 146214 */ // GIR_Coverage, 2634, |
| 51935 | /* 146214 */ GIR_Done, |
| 51936 | /* 146215 */ // Label 3161: @146215 |
| 51937 | /* 146215 */ GIM_Try, /*On fail goto*//*Label 3162*/ GIMT_Encode4(146242), // Rule ID 4927 // |
| 51938 | /* 146220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51939 | /* 146223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51940 | /* 146227 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51941 | /* 146231 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51942 | /* 146235 */ // (usubsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPSUBUSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 51943 | /* 146235 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZ256rr), |
| 51944 | /* 146240 */ GIR_RootConstrainSelectedInstOperands, |
| 51945 | /* 146241 */ // GIR_Coverage, 4927, |
| 51946 | /* 146241 */ GIR_Done, |
| 51947 | /* 146242 */ // Label 3162: @146242 |
| 51948 | /* 146242 */ GIM_Reject, |
| 51949 | /* 146243 */ // Label 3158: @146243 |
| 51950 | /* 146243 */ GIM_Reject, |
| 51951 | /* 146244 */ // Label 3142: @146244 |
| 51952 | /* 146244 */ GIM_Try, /*On fail goto*//*Label 3163*/ GIMT_Encode4(146434), |
| 51953 | /* 146249 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 51954 | /* 146252 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 51955 | /* 146255 */ GIM_Try, /*On fail goto*//*Label 3164*/ GIMT_Encode4(146317), // Rule ID 2629 // |
| 51956 | /* 146260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51957 | /* 146263 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51958 | /* 146267 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51959 | /* 146271 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51960 | /* 146275 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51961 | /* 146279 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51962 | /* 146282 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51963 | /* 146286 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51964 | /* 146290 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51965 | /* 146292 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51966 | /* 146299 */ // (usubsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51967 | /* 146299 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBYrm), |
| 51968 | /* 146302 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51969 | /* 146304 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51970 | /* 146306 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51971 | /* 146310 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51972 | /* 146315 */ GIR_RootConstrainSelectedInstOperands, |
| 51973 | /* 146316 */ // GIR_Coverage, 2629, |
| 51974 | /* 146316 */ GIR_EraseRootFromParent_Done, |
| 51975 | /* 146317 */ // Label 3164: @146317 |
| 51976 | /* 146317 */ GIM_Try, /*On fail goto*//*Label 3165*/ GIMT_Encode4(146379), // Rule ID 4948 // |
| 51977 | /* 146322 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51978 | /* 146325 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51979 | /* 146329 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51980 | /* 146333 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51981 | /* 146337 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51982 | /* 146341 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51983 | /* 146344 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51984 | /* 146348 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51985 | /* 146352 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51986 | /* 146354 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51987 | /* 146361 */ // (usubsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51988 | /* 146361 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZ256rm), |
| 51989 | /* 146364 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51990 | /* 146366 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51991 | /* 146368 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51992 | /* 146372 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51993 | /* 146377 */ GIR_RootConstrainSelectedInstOperands, |
| 51994 | /* 146378 */ // GIR_Coverage, 4948, |
| 51995 | /* 146378 */ GIR_EraseRootFromParent_Done, |
| 51996 | /* 146379 */ // Label 3165: @146379 |
| 51997 | /* 146379 */ GIM_Try, /*On fail goto*//*Label 3166*/ GIMT_Encode4(146406), // Rule ID 2628 // |
| 51998 | /* 146384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51999 | /* 146387 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52000 | /* 146391 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52001 | /* 146395 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52002 | /* 146399 */ // (usubsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPSUBUSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 52003 | /* 146399 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBYrr), |
| 52004 | /* 146404 */ GIR_RootConstrainSelectedInstOperands, |
| 52005 | /* 146405 */ // GIR_Coverage, 2628, |
| 52006 | /* 146405 */ GIR_Done, |
| 52007 | /* 146406 */ // Label 3166: @146406 |
| 52008 | /* 146406 */ GIM_Try, /*On fail goto*//*Label 3167*/ GIMT_Encode4(146433), // Rule ID 4945 // |
| 52009 | /* 146411 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 52010 | /* 146414 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52011 | /* 146418 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52012 | /* 146422 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52013 | /* 146426 */ // (usubsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPSUBUSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 52014 | /* 146426 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZ256rr), |
| 52015 | /* 146431 */ GIR_RootConstrainSelectedInstOperands, |
| 52016 | /* 146432 */ // GIR_Coverage, 4945, |
| 52017 | /* 146432 */ GIR_Done, |
| 52018 | /* 146433 */ // Label 3167: @146433 |
| 52019 | /* 146433 */ GIM_Reject, |
| 52020 | /* 146434 */ // Label 3163: @146434 |
| 52021 | /* 146434 */ GIM_Reject, |
| 52022 | /* 146435 */ // Label 3143: @146435 |
| 52023 | /* 146435 */ GIM_Try, /*On fail goto*//*Label 3168*/ GIMT_Encode4(146528), |
| 52024 | /* 146440 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 52025 | /* 146443 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 52026 | /* 146446 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52027 | /* 146450 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52028 | /* 146454 */ GIM_Try, /*On fail goto*//*Label 3169*/ GIMT_Encode4(146508), // Rule ID 4924 // |
| 52029 | /* 146459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 52030 | /* 146462 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52031 | /* 146466 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52032 | /* 146470 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52033 | /* 146473 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52034 | /* 146477 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52035 | /* 146481 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52036 | /* 146483 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52037 | /* 146490 */ // (usubsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52038 | /* 146490 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZrm), |
| 52039 | /* 146493 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52040 | /* 146495 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52041 | /* 146497 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52042 | /* 146501 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52043 | /* 146506 */ GIR_RootConstrainSelectedInstOperands, |
| 52044 | /* 146507 */ // GIR_Coverage, 4924, |
| 52045 | /* 146507 */ GIR_EraseRootFromParent_Done, |
| 52046 | /* 146508 */ // Label 3169: @146508 |
| 52047 | /* 146508 */ GIM_Try, /*On fail goto*//*Label 3170*/ GIMT_Encode4(146527), // Rule ID 4921 // |
| 52048 | /* 146513 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 52049 | /* 146516 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52050 | /* 146520 */ // (usubsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPSUBUSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 52051 | /* 146520 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZrr), |
| 52052 | /* 146525 */ GIR_RootConstrainSelectedInstOperands, |
| 52053 | /* 146526 */ // GIR_Coverage, 4921, |
| 52054 | /* 146526 */ GIR_Done, |
| 52055 | /* 146527 */ // Label 3170: @146527 |
| 52056 | /* 146527 */ GIM_Reject, |
| 52057 | /* 146528 */ // Label 3168: @146528 |
| 52058 | /* 146528 */ GIM_Reject, |
| 52059 | /* 146529 */ // Label 3144: @146529 |
| 52060 | /* 146529 */ GIM_Try, /*On fail goto*//*Label 3171*/ GIMT_Encode4(146622), |
| 52061 | /* 146534 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 52062 | /* 146537 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 52063 | /* 146540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52064 | /* 146544 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52065 | /* 146548 */ GIM_Try, /*On fail goto*//*Label 3172*/ GIMT_Encode4(146602), // Rule ID 4942 // |
| 52066 | /* 146553 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 52067 | /* 146556 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52068 | /* 146560 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52069 | /* 146564 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52070 | /* 146567 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52071 | /* 146571 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52072 | /* 146575 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52073 | /* 146577 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52074 | /* 146584 */ // (usubsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52075 | /* 146584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZrm), |
| 52076 | /* 146587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52077 | /* 146589 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52078 | /* 146591 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52079 | /* 146595 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52080 | /* 146600 */ GIR_RootConstrainSelectedInstOperands, |
| 52081 | /* 146601 */ // GIR_Coverage, 4942, |
| 52082 | /* 146601 */ GIR_EraseRootFromParent_Done, |
| 52083 | /* 146602 */ // Label 3172: @146602 |
| 52084 | /* 146602 */ GIM_Try, /*On fail goto*//*Label 3173*/ GIMT_Encode4(146621), // Rule ID 4939 // |
| 52085 | /* 146607 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 52086 | /* 146610 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52087 | /* 146614 */ // (usubsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPSUBUSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 52088 | /* 146614 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZrr), |
| 52089 | /* 146619 */ GIR_RootConstrainSelectedInstOperands, |
| 52090 | /* 146620 */ // GIR_Coverage, 4939, |
| 52091 | /* 146620 */ GIR_Done, |
| 52092 | /* 146621 */ // Label 3173: @146621 |
| 52093 | /* 146621 */ GIM_Reject, |
| 52094 | /* 146622 */ // Label 3171: @146622 |
| 52095 | /* 146622 */ GIM_Reject, |
| 52096 | /* 146623 */ // Label 3145: @146623 |
| 52097 | /* 146623 */ GIM_Reject, |
| 52098 | /* 146624 */ // Label 40: @146624 |
| 52099 | /* 146624 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(25), /*)*//*default:*//*Label 3180*/ GIMT_Encode4(147689), |
| 52100 | /* 146635 */ /*GILLT_v8s16*//*Label 3174*/ GIMT_Encode4(146683), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 52101 | /* 146651 */ /*GILLT_v16s8*//*Label 3175*/ GIMT_Encode4(146901), |
| 52102 | /* 146655 */ /*GILLT_v16s16*//*Label 3176*/ GIMT_Encode4(147119), GIMT_Encode4(0), GIMT_Encode4(0), |
| 52103 | /* 146667 */ /*GILLT_v32s8*//*Label 3177*/ GIMT_Encode4(147310), |
| 52104 | /* 146671 */ /*GILLT_v32s16*//*Label 3178*/ GIMT_Encode4(147501), GIMT_Encode4(0), |
| 52105 | /* 146679 */ /*GILLT_v64s8*//*Label 3179*/ GIMT_Encode4(147595), |
| 52106 | /* 146683 */ // Label 3174: @146683 |
| 52107 | /* 146683 */ GIM_Try, /*On fail goto*//*Label 3181*/ GIMT_Encode4(146900), |
| 52108 | /* 146688 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 52109 | /* 146691 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 52110 | /* 146694 */ GIM_Try, /*On fail goto*//*Label 3182*/ GIMT_Encode4(146756), // Rule ID 2619 // |
| 52111 | /* 146699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 52112 | /* 146702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52113 | /* 146706 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52114 | /* 146710 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52115 | /* 146714 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52116 | /* 146718 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52117 | /* 146721 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52118 | /* 146725 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52119 | /* 146729 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52120 | /* 146731 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52121 | /* 146738 */ // (ssubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52122 | /* 146738 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSWrm), |
| 52123 | /* 146741 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52124 | /* 146743 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52125 | /* 146745 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52126 | /* 146749 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52127 | /* 146754 */ GIR_RootConstrainSelectedInstOperands, |
| 52128 | /* 146755 */ // GIR_Coverage, 2619, |
| 52129 | /* 146755 */ GIR_EraseRootFromParent_Done, |
| 52130 | /* 146756 */ // Label 3182: @146756 |
| 52131 | /* 146756 */ GIM_Try, /*On fail goto*//*Label 3183*/ GIMT_Encode4(146818), // Rule ID 4864 // |
| 52132 | /* 146761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 52133 | /* 146764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 52134 | /* 146768 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 52135 | /* 146772 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52136 | /* 146776 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52137 | /* 146780 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52138 | /* 146783 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52139 | /* 146787 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52140 | /* 146791 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52141 | /* 146793 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52142 | /* 146800 */ // (ssubsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52143 | /* 146800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZ128rm), |
| 52144 | /* 146803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52145 | /* 146805 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52146 | /* 146807 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52147 | /* 146811 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52148 | /* 146816 */ GIR_RootConstrainSelectedInstOperands, |
| 52149 | /* 146817 */ // GIR_Coverage, 4864, |
| 52150 | /* 146817 */ GIR_EraseRootFromParent_Done, |
| 52151 | /* 146818 */ // Label 3183: @146818 |
| 52152 | /* 146818 */ GIM_Try, /*On fail goto*//*Label 3184*/ GIMT_Encode4(146845), // Rule ID 2618 // |
| 52153 | /* 146823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 52154 | /* 146826 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52155 | /* 146830 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52156 | /* 146834 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52157 | /* 146838 */ // (ssubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPSUBSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 52158 | /* 146838 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSWrr), |
| 52159 | /* 146843 */ GIR_RootConstrainSelectedInstOperands, |
| 52160 | /* 146844 */ // GIR_Coverage, 2618, |
| 52161 | /* 146844 */ GIR_Done, |
| 52162 | /* 146845 */ // Label 3184: @146845 |
| 52163 | /* 146845 */ GIM_Try, /*On fail goto*//*Label 3185*/ GIMT_Encode4(146872), // Rule ID 2620 // |
| 52164 | /* 146850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 52165 | /* 146853 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52166 | /* 146857 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52167 | /* 146861 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52168 | /* 146865 */ // (ssubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PSUBSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 52169 | /* 146865 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBSWrr), |
| 52170 | /* 146870 */ GIR_RootConstrainSelectedInstOperands, |
| 52171 | /* 146871 */ // GIR_Coverage, 2620, |
| 52172 | /* 146871 */ GIR_Done, |
| 52173 | /* 146872 */ // Label 3185: @146872 |
| 52174 | /* 146872 */ GIM_Try, /*On fail goto*//*Label 3186*/ GIMT_Encode4(146899), // Rule ID 4861 // |
| 52175 | /* 146877 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 52176 | /* 146880 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 52177 | /* 146884 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 52178 | /* 146888 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 52179 | /* 146892 */ // (ssubsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPSUBSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 52180 | /* 146892 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZ128rr), |
| 52181 | /* 146897 */ GIR_RootConstrainSelectedInstOperands, |
| 52182 | /* 146898 */ // GIR_Coverage, 4861, |
| 52183 | /* 146898 */ GIR_Done, |
| 52184 | /* 146899 */ // Label 3186: @146899 |
| 52185 | /* 146899 */ GIM_Reject, |
| 52186 | /* 146900 */ // Label 3181: @146900 |
| 52187 | /* 146900 */ GIM_Reject, |
| 52188 | /* 146901 */ // Label 3175: @146901 |
| 52189 | /* 146901 */ GIM_Try, /*On fail goto*//*Label 3187*/ GIMT_Encode4(147118), |
| 52190 | /* 146906 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 52191 | /* 146909 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 52192 | /* 146912 */ GIM_Try, /*On fail goto*//*Label 3188*/ GIMT_Encode4(146974), // Rule ID 2613 // |
| 52193 | /* 146917 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 52194 | /* 146920 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52195 | /* 146924 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52196 | /* 146928 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52197 | /* 146932 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52198 | /* 146936 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52199 | /* 146939 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52200 | /* 146943 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52201 | /* 146947 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52202 | /* 146949 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52203 | /* 146956 */ // (ssubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52204 | /* 146956 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSBrm), |
| 52205 | /* 146959 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52206 | /* 146961 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52207 | /* 146963 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52208 | /* 146967 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52209 | /* 146972 */ GIR_RootConstrainSelectedInstOperands, |
| 52210 | /* 146973 */ // GIR_Coverage, 2613, |
| 52211 | /* 146973 */ GIR_EraseRootFromParent_Done, |
| 52212 | /* 146974 */ // Label 3188: @146974 |
| 52213 | /* 146974 */ GIM_Try, /*On fail goto*//*Label 3189*/ GIMT_Encode4(147036), // Rule ID 4882 // |
| 52214 | /* 146979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 52215 | /* 146982 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 52216 | /* 146986 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 52217 | /* 146990 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52218 | /* 146994 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52219 | /* 146998 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52220 | /* 147001 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52221 | /* 147005 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52222 | /* 147009 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52223 | /* 147011 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52224 | /* 147018 */ // (ssubsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52225 | /* 147018 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZ128rm), |
| 52226 | /* 147021 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52227 | /* 147023 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52228 | /* 147025 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52229 | /* 147029 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52230 | /* 147034 */ GIR_RootConstrainSelectedInstOperands, |
| 52231 | /* 147035 */ // GIR_Coverage, 4882, |
| 52232 | /* 147035 */ GIR_EraseRootFromParent_Done, |
| 52233 | /* 147036 */ // Label 3189: @147036 |
| 52234 | /* 147036 */ GIM_Try, /*On fail goto*//*Label 3190*/ GIMT_Encode4(147063), // Rule ID 2612 // |
| 52235 | /* 147041 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 52236 | /* 147044 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52237 | /* 147048 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52238 | /* 147052 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52239 | /* 147056 */ // (ssubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPSUBSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 52240 | /* 147056 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSBrr), |
| 52241 | /* 147061 */ GIR_RootConstrainSelectedInstOperands, |
| 52242 | /* 147062 */ // GIR_Coverage, 2612, |
| 52243 | /* 147062 */ GIR_Done, |
| 52244 | /* 147063 */ // Label 3190: @147063 |
| 52245 | /* 147063 */ GIM_Try, /*On fail goto*//*Label 3191*/ GIMT_Encode4(147090), // Rule ID 2614 // |
| 52246 | /* 147068 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 52247 | /* 147071 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52248 | /* 147075 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52249 | /* 147079 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 52250 | /* 147083 */ // (ssubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PSUBSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 52251 | /* 147083 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBSBrr), |
| 52252 | /* 147088 */ GIR_RootConstrainSelectedInstOperands, |
| 52253 | /* 147089 */ // GIR_Coverage, 2614, |
| 52254 | /* 147089 */ GIR_Done, |
| 52255 | /* 147090 */ // Label 3191: @147090 |
| 52256 | /* 147090 */ GIM_Try, /*On fail goto*//*Label 3192*/ GIMT_Encode4(147117), // Rule ID 4879 // |
| 52257 | /* 147095 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 52258 | /* 147098 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 52259 | /* 147102 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 52260 | /* 147106 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 52261 | /* 147110 */ // (ssubsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPSUBSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 52262 | /* 147110 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZ128rr), |
| 52263 | /* 147115 */ GIR_RootConstrainSelectedInstOperands, |
| 52264 | /* 147116 */ // GIR_Coverage, 4879, |
| 52265 | /* 147116 */ GIR_Done, |
| 52266 | /* 147117 */ // Label 3192: @147117 |
| 52267 | /* 147117 */ GIM_Reject, |
| 52268 | /* 147118 */ // Label 3187: @147118 |
| 52269 | /* 147118 */ GIM_Reject, |
| 52270 | /* 147119 */ // Label 3176: @147119 |
| 52271 | /* 147119 */ GIM_Try, /*On fail goto*//*Label 3193*/ GIMT_Encode4(147309), |
| 52272 | /* 147124 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 52273 | /* 147127 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 52274 | /* 147130 */ GIM_Try, /*On fail goto*//*Label 3194*/ GIMT_Encode4(147192), // Rule ID 2623 // |
| 52275 | /* 147135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 52276 | /* 147138 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52277 | /* 147142 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52278 | /* 147146 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52279 | /* 147150 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52280 | /* 147154 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52281 | /* 147157 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52282 | /* 147161 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52283 | /* 147165 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52284 | /* 147167 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52285 | /* 147174 */ // (ssubsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52286 | /* 147174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSWYrm), |
| 52287 | /* 147177 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52288 | /* 147179 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52289 | /* 147181 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52290 | /* 147185 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52291 | /* 147190 */ GIR_RootConstrainSelectedInstOperands, |
| 52292 | /* 147191 */ // GIR_Coverage, 2623, |
| 52293 | /* 147191 */ GIR_EraseRootFromParent_Done, |
| 52294 | /* 147192 */ // Label 3194: @147192 |
| 52295 | /* 147192 */ GIM_Try, /*On fail goto*//*Label 3195*/ GIMT_Encode4(147254), // Rule ID 4858 // |
| 52296 | /* 147197 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 52297 | /* 147200 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52298 | /* 147204 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52299 | /* 147208 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52300 | /* 147212 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52301 | /* 147216 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52302 | /* 147219 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52303 | /* 147223 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52304 | /* 147227 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52305 | /* 147229 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52306 | /* 147236 */ // (ssubsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52307 | /* 147236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZ256rm), |
| 52308 | /* 147239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52309 | /* 147241 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52310 | /* 147243 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52311 | /* 147247 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52312 | /* 147252 */ GIR_RootConstrainSelectedInstOperands, |
| 52313 | /* 147253 */ // GIR_Coverage, 4858, |
| 52314 | /* 147253 */ GIR_EraseRootFromParent_Done, |
| 52315 | /* 147254 */ // Label 3195: @147254 |
| 52316 | /* 147254 */ GIM_Try, /*On fail goto*//*Label 3196*/ GIMT_Encode4(147281), // Rule ID 2622 // |
| 52317 | /* 147259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 52318 | /* 147262 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52319 | /* 147266 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52320 | /* 147270 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52321 | /* 147274 */ // (ssubsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPSUBSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 52322 | /* 147274 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSWYrr), |
| 52323 | /* 147279 */ GIR_RootConstrainSelectedInstOperands, |
| 52324 | /* 147280 */ // GIR_Coverage, 2622, |
| 52325 | /* 147280 */ GIR_Done, |
| 52326 | /* 147281 */ // Label 3196: @147281 |
| 52327 | /* 147281 */ GIM_Try, /*On fail goto*//*Label 3197*/ GIMT_Encode4(147308), // Rule ID 4855 // |
| 52328 | /* 147286 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 52329 | /* 147289 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52330 | /* 147293 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52331 | /* 147297 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52332 | /* 147301 */ // (ssubsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPSUBSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 52333 | /* 147301 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZ256rr), |
| 52334 | /* 147306 */ GIR_RootConstrainSelectedInstOperands, |
| 52335 | /* 147307 */ // GIR_Coverage, 4855, |
| 52336 | /* 147307 */ GIR_Done, |
| 52337 | /* 147308 */ // Label 3197: @147308 |
| 52338 | /* 147308 */ GIM_Reject, |
| 52339 | /* 147309 */ // Label 3193: @147309 |
| 52340 | /* 147309 */ GIM_Reject, |
| 52341 | /* 147310 */ // Label 3177: @147310 |
| 52342 | /* 147310 */ GIM_Try, /*On fail goto*//*Label 3198*/ GIMT_Encode4(147500), |
| 52343 | /* 147315 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 52344 | /* 147318 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 52345 | /* 147321 */ GIM_Try, /*On fail goto*//*Label 3199*/ GIMT_Encode4(147383), // Rule ID 2617 // |
| 52346 | /* 147326 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 52347 | /* 147329 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52348 | /* 147333 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52349 | /* 147337 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52350 | /* 147341 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52351 | /* 147345 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52352 | /* 147348 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52353 | /* 147352 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52354 | /* 147356 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52355 | /* 147358 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52356 | /* 147365 */ // (ssubsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52357 | /* 147365 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSBYrm), |
| 52358 | /* 147368 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52359 | /* 147370 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52360 | /* 147372 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52361 | /* 147376 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52362 | /* 147381 */ GIR_RootConstrainSelectedInstOperands, |
| 52363 | /* 147382 */ // GIR_Coverage, 2617, |
| 52364 | /* 147382 */ GIR_EraseRootFromParent_Done, |
| 52365 | /* 147383 */ // Label 3199: @147383 |
| 52366 | /* 147383 */ GIM_Try, /*On fail goto*//*Label 3200*/ GIMT_Encode4(147445), // Rule ID 4876 // |
| 52367 | /* 147388 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 52368 | /* 147391 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52369 | /* 147395 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52370 | /* 147399 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52371 | /* 147403 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52372 | /* 147407 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52373 | /* 147410 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52374 | /* 147414 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52375 | /* 147418 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52376 | /* 147420 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52377 | /* 147427 */ // (ssubsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52378 | /* 147427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZ256rm), |
| 52379 | /* 147430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52380 | /* 147432 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52381 | /* 147434 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52382 | /* 147438 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52383 | /* 147443 */ GIR_RootConstrainSelectedInstOperands, |
| 52384 | /* 147444 */ // GIR_Coverage, 4876, |
| 52385 | /* 147444 */ GIR_EraseRootFromParent_Done, |
| 52386 | /* 147445 */ // Label 3200: @147445 |
| 52387 | /* 147445 */ GIM_Try, /*On fail goto*//*Label 3201*/ GIMT_Encode4(147472), // Rule ID 2616 // |
| 52388 | /* 147450 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 52389 | /* 147453 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52390 | /* 147457 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52391 | /* 147461 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 52392 | /* 147465 */ // (ssubsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPSUBSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 52393 | /* 147465 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSBYrr), |
| 52394 | /* 147470 */ GIR_RootConstrainSelectedInstOperands, |
| 52395 | /* 147471 */ // GIR_Coverage, 2616, |
| 52396 | /* 147471 */ GIR_Done, |
| 52397 | /* 147472 */ // Label 3201: @147472 |
| 52398 | /* 147472 */ GIM_Try, /*On fail goto*//*Label 3202*/ GIMT_Encode4(147499), // Rule ID 4873 // |
| 52399 | /* 147477 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 52400 | /* 147480 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52401 | /* 147484 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52402 | /* 147488 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 52403 | /* 147492 */ // (ssubsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPSUBSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 52404 | /* 147492 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZ256rr), |
| 52405 | /* 147497 */ GIR_RootConstrainSelectedInstOperands, |
| 52406 | /* 147498 */ // GIR_Coverage, 4873, |
| 52407 | /* 147498 */ GIR_Done, |
| 52408 | /* 147499 */ // Label 3202: @147499 |
| 52409 | /* 147499 */ GIM_Reject, |
| 52410 | /* 147500 */ // Label 3198: @147500 |
| 52411 | /* 147500 */ GIM_Reject, |
| 52412 | /* 147501 */ // Label 3178: @147501 |
| 52413 | /* 147501 */ GIM_Try, /*On fail goto*//*Label 3203*/ GIMT_Encode4(147594), |
| 52414 | /* 147506 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 52415 | /* 147509 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 52416 | /* 147512 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52417 | /* 147516 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52418 | /* 147520 */ GIM_Try, /*On fail goto*//*Label 3204*/ GIMT_Encode4(147574), // Rule ID 4852 // |
| 52419 | /* 147525 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 52420 | /* 147528 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52421 | /* 147532 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52422 | /* 147536 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52423 | /* 147539 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52424 | /* 147543 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52425 | /* 147547 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52426 | /* 147549 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52427 | /* 147556 */ // (ssubsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52428 | /* 147556 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZrm), |
| 52429 | /* 147559 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52430 | /* 147561 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52431 | /* 147563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52432 | /* 147567 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52433 | /* 147572 */ GIR_RootConstrainSelectedInstOperands, |
| 52434 | /* 147573 */ // GIR_Coverage, 4852, |
| 52435 | /* 147573 */ GIR_EraseRootFromParent_Done, |
| 52436 | /* 147574 */ // Label 3204: @147574 |
| 52437 | /* 147574 */ GIM_Try, /*On fail goto*//*Label 3205*/ GIMT_Encode4(147593), // Rule ID 4849 // |
| 52438 | /* 147579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 52439 | /* 147582 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52440 | /* 147586 */ // (ssubsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPSUBSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 52441 | /* 147586 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZrr), |
| 52442 | /* 147591 */ GIR_RootConstrainSelectedInstOperands, |
| 52443 | /* 147592 */ // GIR_Coverage, 4849, |
| 52444 | /* 147592 */ GIR_Done, |
| 52445 | /* 147593 */ // Label 3205: @147593 |
| 52446 | /* 147593 */ GIM_Reject, |
| 52447 | /* 147594 */ // Label 3203: @147594 |
| 52448 | /* 147594 */ GIM_Reject, |
| 52449 | /* 147595 */ // Label 3179: @147595 |
| 52450 | /* 147595 */ GIM_Try, /*On fail goto*//*Label 3206*/ GIMT_Encode4(147688), |
| 52451 | /* 147600 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 52452 | /* 147603 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 52453 | /* 147606 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52454 | /* 147610 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52455 | /* 147614 */ GIM_Try, /*On fail goto*//*Label 3207*/ GIMT_Encode4(147668), // Rule ID 4870 // |
| 52456 | /* 147619 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 52457 | /* 147622 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52458 | /* 147626 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52459 | /* 147630 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52460 | /* 147633 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52461 | /* 147637 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52462 | /* 147641 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52463 | /* 147643 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52464 | /* 147650 */ // (ssubsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52465 | /* 147650 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZrm), |
| 52466 | /* 147653 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52467 | /* 147655 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52468 | /* 147657 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52469 | /* 147661 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52470 | /* 147666 */ GIR_RootConstrainSelectedInstOperands, |
| 52471 | /* 147667 */ // GIR_Coverage, 4870, |
| 52472 | /* 147667 */ GIR_EraseRootFromParent_Done, |
| 52473 | /* 147668 */ // Label 3207: @147668 |
| 52474 | /* 147668 */ GIM_Try, /*On fail goto*//*Label 3208*/ GIMT_Encode4(147687), // Rule ID 4867 // |
| 52475 | /* 147673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 52476 | /* 147676 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52477 | /* 147680 */ // (ssubsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPSUBSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 52478 | /* 147680 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZrr), |
| 52479 | /* 147685 */ GIR_RootConstrainSelectedInstOperands, |
| 52480 | /* 147686 */ // GIR_Coverage, 4867, |
| 52481 | /* 147686 */ GIR_Done, |
| 52482 | /* 147687 */ // Label 3208: @147687 |
| 52483 | /* 147687 */ GIM_Reject, |
| 52484 | /* 147688 */ // Label 3206: @147688 |
| 52485 | /* 147688 */ GIM_Reject, |
| 52486 | /* 147689 */ // Label 3180: @147689 |
| 52487 | /* 147689 */ GIM_Reject, |
| 52488 | /* 147690 */ // Label 41: @147690 |
| 52489 | /* 147690 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3222*/ GIMT_Encode4(153603), |
| 52490 | /* 147701 */ /*GILLT_s16*//*Label 3209*/ GIMT_Encode4(147785), |
| 52491 | /* 147705 */ /*GILLT_s32*//*Label 3210*/ GIMT_Encode4(147945), |
| 52492 | /* 147709 */ /*GILLT_s64*//*Label 3211*/ GIMT_Encode4(149342), |
| 52493 | /* 147713 */ /*GILLT_s80*//*Label 3212*/ GIMT_Encode4(150883), GIMT_Encode4(0), GIMT_Encode4(0), |
| 52494 | /* 147725 */ /*GILLT_v2s64*//*Label 3213*/ GIMT_Encode4(151449), GIMT_Encode4(0), |
| 52495 | /* 147733 */ /*GILLT_v4s32*//*Label 3214*/ GIMT_Encode4(151803), |
| 52496 | /* 147737 */ /*GILLT_v4s64*//*Label 3215*/ GIMT_Encode4(152157), GIMT_Encode4(0), |
| 52497 | /* 147745 */ /*GILLT_v8s16*//*Label 3216*/ GIMT_Encode4(152480), |
| 52498 | /* 147749 */ /*GILLT_v8s32*//*Label 3217*/ GIMT_Encode4(152640), |
| 52499 | /* 147753 */ /*GILLT_v8s64*//*Label 3218*/ GIMT_Encode4(152963), GIMT_Encode4(0), GIMT_Encode4(0), |
| 52500 | /* 147765 */ /*GILLT_v16s16*//*Label 3219*/ GIMT_Encode4(153123), |
| 52501 | /* 147769 */ /*GILLT_v16s32*//*Label 3220*/ GIMT_Encode4(153283), GIMT_Encode4(0), GIMT_Encode4(0), |
| 52502 | /* 147781 */ /*GILLT_v32s16*//*Label 3221*/ GIMT_Encode4(153443), |
| 52503 | /* 147785 */ // Label 3209: @147785 |
| 52504 | /* 147785 */ GIM_Try, /*On fail goto*//*Label 3223*/ GIMT_Encode4(147944), |
| 52505 | /* 147790 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 52506 | /* 147793 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 52507 | /* 147796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 52508 | /* 147800 */ GIM_Try, /*On fail goto*//*Label 3224*/ GIMT_Encode4(147858), // Rule ID 24250 // |
| 52509 | /* 147805 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 52510 | /* 147808 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52511 | /* 147812 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52512 | /* 147816 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52513 | /* 147819 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52514 | /* 147823 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52515 | /* 147827 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 52516 | /* 147831 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52517 | /* 147833 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52518 | /* 147840 */ // (fadd:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR16X:{ *:[f16] }:$src1) => (VADDSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52519 | /* 147840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSHZrm), |
| 52520 | /* 147843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52521 | /* 147845 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52522 | /* 147847 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52523 | /* 147851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52524 | /* 147856 */ GIR_RootConstrainSelectedInstOperands, |
| 52525 | /* 147857 */ // GIR_Coverage, 24250, |
| 52526 | /* 147857 */ GIR_EraseRootFromParent_Done, |
| 52527 | /* 147858 */ // Label 3224: @147858 |
| 52528 | /* 147858 */ GIM_Try, /*On fail goto*//*Label 3225*/ GIMT_Encode4(147916), // Rule ID 5955 // |
| 52529 | /* 147863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 52530 | /* 147866 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 52531 | /* 147870 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52532 | /* 147874 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52533 | /* 147878 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52534 | /* 147881 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52535 | /* 147885 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52536 | /* 147889 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52537 | /* 147891 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52538 | /* 147898 */ // (fadd:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52539 | /* 147898 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSHZrm), |
| 52540 | /* 147901 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52541 | /* 147903 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52542 | /* 147905 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52543 | /* 147909 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52544 | /* 147914 */ GIR_RootConstrainSelectedInstOperands, |
| 52545 | /* 147915 */ // GIR_Coverage, 5955, |
| 52546 | /* 147915 */ GIR_EraseRootFromParent_Done, |
| 52547 | /* 147916 */ // Label 3225: @147916 |
| 52548 | /* 147916 */ GIM_Try, /*On fail goto*//*Label 3226*/ GIMT_Encode4(147943), // Rule ID 5953 // |
| 52549 | /* 147921 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 52550 | /* 147924 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 52551 | /* 147928 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 52552 | /* 147932 */ // (fadd:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VADDSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 52553 | /* 147932 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSHZrr), |
| 52554 | /* 147937 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 52555 | /* 147941 */ GIR_RootConstrainSelectedInstOperands, |
| 52556 | /* 147942 */ // GIR_Coverage, 5953, |
| 52557 | /* 147942 */ GIR_Done, |
| 52558 | /* 147943 */ // Label 3226: @147943 |
| 52559 | /* 147943 */ GIM_Reject, |
| 52560 | /* 147944 */ // Label 3223: @147944 |
| 52561 | /* 147944 */ GIM_Reject, |
| 52562 | /* 147945 */ // Label 3210: @147945 |
| 52563 | /* 147945 */ GIM_Try, /*On fail goto*//*Label 3227*/ GIMT_Encode4(149341), |
| 52564 | /* 147950 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 52565 | /* 147953 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 52566 | /* 147956 */ GIM_Try, /*On fail goto*//*Label 3228*/ GIMT_Encode4(148038), // Rule ID 26018 // |
| 52567 | /* 147961 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52568 | /* 147964 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52569 | /* 147968 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52570 | /* 147972 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52571 | /* 147976 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52572 | /* 147980 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52573 | /* 147984 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52574 | /* 147988 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52575 | /* 147991 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52576 | /* 147995 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52577 | /* 148002 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52578 | /* 148006 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52579 | /* 148010 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52580 | /* 148012 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52581 | /* 148019 */ // (fadd:{ *:[f32] } (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), FR32:{ *:[f32] }:$src1) => (ADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52582 | /* 148019 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 52583 | /* 148022 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52584 | /* 148024 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52585 | /* 148026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52586 | /* 148030 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52587 | /* 148036 */ GIR_RootConstrainSelectedInstOperands, |
| 52588 | /* 148037 */ // GIR_Coverage, 26018, |
| 52589 | /* 148037 */ GIR_EraseRootFromParent_Done, |
| 52590 | /* 148038 */ // Label 3228: @148038 |
| 52591 | /* 148038 */ GIM_Try, /*On fail goto*//*Label 3229*/ GIMT_Encode4(148120), // Rule ID 26019 // |
| 52592 | /* 148043 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52593 | /* 148046 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52594 | /* 148050 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52595 | /* 148054 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52596 | /* 148058 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52597 | /* 148062 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52598 | /* 148066 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52599 | /* 148070 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52600 | /* 148073 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52601 | /* 148077 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52602 | /* 148084 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52603 | /* 148088 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52604 | /* 148092 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52605 | /* 148094 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52606 | /* 148101 */ // (fadd:{ *:[f32] } (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), FR32:{ *:[f32] }:$src1) => (VADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52607 | /* 148101 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 52608 | /* 148104 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52609 | /* 148106 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52610 | /* 148108 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52611 | /* 148112 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52612 | /* 148118 */ GIR_RootConstrainSelectedInstOperands, |
| 52613 | /* 148119 */ // GIR_Coverage, 26019, |
| 52614 | /* 148119 */ GIR_EraseRootFromParent_Done, |
| 52615 | /* 148120 */ // Label 3229: @148120 |
| 52616 | /* 148120 */ GIM_Try, /*On fail goto*//*Label 3230*/ GIMT_Encode4(148202), // Rule ID 26020 // |
| 52617 | /* 148125 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52618 | /* 148128 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52619 | /* 148132 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52620 | /* 148136 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52621 | /* 148140 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52622 | /* 148144 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52623 | /* 148148 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52624 | /* 148152 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52625 | /* 148155 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52626 | /* 148159 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52627 | /* 148166 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52628 | /* 148170 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52629 | /* 148174 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52630 | /* 148176 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52631 | /* 148183 */ // (fadd:{ *:[f32] } (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), FR32X:{ *:[f32] }:$src1) => (VADDSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52632 | /* 148183 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 52633 | /* 148186 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52634 | /* 148188 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52635 | /* 148190 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52636 | /* 148194 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52637 | /* 148200 */ GIR_RootConstrainSelectedInstOperands, |
| 52638 | /* 148201 */ // GIR_Coverage, 26020, |
| 52639 | /* 148201 */ GIR_EraseRootFromParent_Done, |
| 52640 | /* 148202 */ // Label 3230: @148202 |
| 52641 | /* 148202 */ GIM_Try, /*On fail goto*//*Label 3231*/ GIMT_Encode4(148284), // Rule ID 22467 // |
| 52642 | /* 148207 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52643 | /* 148210 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52644 | /* 148214 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52645 | /* 148218 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52646 | /* 148222 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52647 | /* 148226 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52648 | /* 148230 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52649 | /* 148234 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52650 | /* 148238 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52651 | /* 148241 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52652 | /* 148245 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52653 | /* 148252 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52654 | /* 148256 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52655 | /* 148258 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52656 | /* 148265 */ // (fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (ADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52657 | /* 148265 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 52658 | /* 148268 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52659 | /* 148270 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52660 | /* 148272 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52661 | /* 148276 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52662 | /* 148282 */ GIR_RootConstrainSelectedInstOperands, |
| 52663 | /* 148283 */ // GIR_Coverage, 22467, |
| 52664 | /* 148283 */ GIR_EraseRootFromParent_Done, |
| 52665 | /* 148284 */ // Label 3231: @148284 |
| 52666 | /* 148284 */ GIM_Try, /*On fail goto*//*Label 3232*/ GIMT_Encode4(148366), // Rule ID 22468 // |
| 52667 | /* 148289 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52668 | /* 148292 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52669 | /* 148296 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52670 | /* 148300 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52671 | /* 148304 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52672 | /* 148308 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52673 | /* 148312 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52674 | /* 148316 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52675 | /* 148320 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52676 | /* 148323 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52677 | /* 148327 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52678 | /* 148334 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52679 | /* 148338 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52680 | /* 148340 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52681 | /* 148347 */ // (fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (VADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52682 | /* 148347 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 52683 | /* 148350 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52684 | /* 148352 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52685 | /* 148354 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52686 | /* 148358 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52687 | /* 148364 */ GIR_RootConstrainSelectedInstOperands, |
| 52688 | /* 148365 */ // GIR_Coverage, 22468, |
| 52689 | /* 148365 */ GIR_EraseRootFromParent_Done, |
| 52690 | /* 148366 */ // Label 3232: @148366 |
| 52691 | /* 148366 */ GIM_Try, /*On fail goto*//*Label 3233*/ GIMT_Encode4(148448), // Rule ID 22469 // |
| 52692 | /* 148371 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52693 | /* 148374 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52694 | /* 148378 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52695 | /* 148382 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52696 | /* 148386 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52697 | /* 148390 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52698 | /* 148394 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52699 | /* 148398 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52700 | /* 148402 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52701 | /* 148405 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52702 | /* 148409 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52703 | /* 148416 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52704 | /* 148420 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52705 | /* 148422 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52706 | /* 148429 */ // (fadd:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (VADDSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52707 | /* 148429 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 52708 | /* 148432 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52709 | /* 148434 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52710 | /* 148436 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52711 | /* 148440 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52712 | /* 148446 */ GIR_RootConstrainSelectedInstOperands, |
| 52713 | /* 148447 */ // GIR_Coverage, 22469, |
| 52714 | /* 148447 */ GIR_EraseRootFromParent_Done, |
| 52715 | /* 148448 */ // Label 3233: @148448 |
| 52716 | /* 148448 */ GIM_Try, /*On fail goto*//*Label 3234*/ GIMT_Encode4(148513), // Rule ID 23247 // |
| 52717 | /* 148453 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52718 | /* 148456 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52719 | /* 148460 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52720 | /* 148464 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52721 | /* 148468 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 52722 | /* 148475 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52723 | /* 148479 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52724 | /* 148483 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52725 | /* 148485 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52726 | /* 148492 */ // (fadd:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (ADD_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52727 | /* 148492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m32), |
| 52728 | /* 148495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52729 | /* 148497 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52730 | /* 148499 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52731 | /* 148503 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52732 | /* 148506 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52733 | /* 148511 */ GIR_RootConstrainSelectedInstOperands, |
| 52734 | /* 148512 */ // GIR_Coverage, 23247, |
| 52735 | /* 148512 */ GIR_EraseRootFromParent_Done, |
| 52736 | /* 148513 */ // Label 3234: @148513 |
| 52737 | /* 148513 */ GIM_Try, /*On fail goto*//*Label 3235*/ GIMT_Encode4(148578), // Rule ID 23249 // |
| 52738 | /* 148518 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52739 | /* 148521 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52740 | /* 148525 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52741 | /* 148529 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52742 | /* 148533 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52743 | /* 148540 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52744 | /* 148544 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52745 | /* 148548 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52746 | /* 148550 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52747 | /* 148557 */ // (fadd:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (ADD_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52748 | /* 148557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m32), |
| 52749 | /* 148560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52750 | /* 148562 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52751 | /* 148564 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52752 | /* 148568 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52753 | /* 148571 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52754 | /* 148576 */ GIR_RootConstrainSelectedInstOperands, |
| 52755 | /* 148577 */ // GIR_Coverage, 23249, |
| 52756 | /* 148577 */ GIR_EraseRootFromParent_Done, |
| 52757 | /* 148578 */ // Label 3235: @148578 |
| 52758 | /* 148578 */ GIM_Try, /*On fail goto*//*Label 3236*/ GIMT_Encode4(148643), // Rule ID 23237 // |
| 52759 | /* 148583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52760 | /* 148586 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52761 | /* 148590 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52762 | /* 148594 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52763 | /* 148598 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52764 | /* 148601 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52765 | /* 148605 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52766 | /* 148609 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52767 | /* 148613 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52768 | /* 148615 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52769 | /* 148622 */ // (fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP32:{ *:[f32] }:$src1) => (ADD_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52770 | /* 148622 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32m), |
| 52771 | /* 148625 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52772 | /* 148627 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52773 | /* 148629 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52774 | /* 148633 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52775 | /* 148636 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52776 | /* 148641 */ GIR_RootConstrainSelectedInstOperands, |
| 52777 | /* 148642 */ // GIR_Coverage, 23237, |
| 52778 | /* 148642 */ GIR_EraseRootFromParent_Done, |
| 52779 | /* 148643 */ // Label 3236: @148643 |
| 52780 | /* 148643 */ GIM_Try, /*On fail goto*//*Label 3237*/ GIMT_Encode4(148705), // Rule ID 23382 // |
| 52781 | /* 148648 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52782 | /* 148651 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52783 | /* 148655 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52784 | /* 148659 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52785 | /* 148663 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52786 | /* 148666 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52787 | /* 148670 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52788 | /* 148674 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52789 | /* 148678 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52790 | /* 148680 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52791 | /* 148687 */ // (fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (VADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52792 | /* 148687 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 52793 | /* 148690 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52794 | /* 148692 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52795 | /* 148694 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52796 | /* 148698 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52797 | /* 148703 */ GIR_RootConstrainSelectedInstOperands, |
| 52798 | /* 148704 */ // GIR_Coverage, 23382, |
| 52799 | /* 148704 */ GIR_EraseRootFromParent_Done, |
| 52800 | /* 148705 */ // Label 3237: @148705 |
| 52801 | /* 148705 */ GIM_Try, /*On fail goto*//*Label 3238*/ GIMT_Encode4(148767), // Rule ID 23386 // |
| 52802 | /* 148710 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52803 | /* 148713 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52804 | /* 148717 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52805 | /* 148721 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52806 | /* 148725 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52807 | /* 148728 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52808 | /* 148732 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52809 | /* 148736 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52810 | /* 148740 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52811 | /* 148742 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52812 | /* 148749 */ // (fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (ADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52813 | /* 148749 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 52814 | /* 148752 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52815 | /* 148754 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52816 | /* 148756 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52817 | /* 148760 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52818 | /* 148765 */ GIR_RootConstrainSelectedInstOperands, |
| 52819 | /* 148766 */ // GIR_Coverage, 23386, |
| 52820 | /* 148766 */ GIR_EraseRootFromParent_Done, |
| 52821 | /* 148767 */ // Label 3238: @148767 |
| 52822 | /* 148767 */ GIM_Try, /*On fail goto*//*Label 3239*/ GIMT_Encode4(148829), // Rule ID 24246 // |
| 52823 | /* 148772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52824 | /* 148775 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52825 | /* 148779 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52826 | /* 148783 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52827 | /* 148787 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52828 | /* 148790 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52829 | /* 148794 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52830 | /* 148798 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52831 | /* 148802 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52832 | /* 148804 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52833 | /* 148811 */ // (fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32X:{ *:[f32] }:$src1) => (VADDSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52834 | /* 148811 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 52835 | /* 148814 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52836 | /* 148816 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52837 | /* 148818 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52838 | /* 148822 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52839 | /* 148827 */ GIR_RootConstrainSelectedInstOperands, |
| 52840 | /* 148828 */ // GIR_Coverage, 24246, |
| 52841 | /* 148828 */ GIR_EraseRootFromParent_Done, |
| 52842 | /* 148829 */ // Label 3239: @148829 |
| 52843 | /* 148829 */ GIM_Try, /*On fail goto*//*Label 3240*/ GIMT_Encode4(148894), // Rule ID 921 // |
| 52844 | /* 148834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52845 | /* 148837 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52846 | /* 148841 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52847 | /* 148845 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52848 | /* 148849 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52849 | /* 148853 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 52850 | /* 148860 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52851 | /* 148864 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52852 | /* 148866 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52853 | /* 148873 */ // (fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52854 | /* 148873 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m32), |
| 52855 | /* 148876 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52856 | /* 148878 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52857 | /* 148880 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52858 | /* 148884 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52859 | /* 148887 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52860 | /* 148892 */ GIR_RootConstrainSelectedInstOperands, |
| 52861 | /* 148893 */ // GIR_Coverage, 921, |
| 52862 | /* 148893 */ GIR_EraseRootFromParent_Done, |
| 52863 | /* 148894 */ // Label 3240: @148894 |
| 52864 | /* 148894 */ GIM_Try, /*On fail goto*//*Label 3241*/ GIMT_Encode4(148959), // Rule ID 923 // |
| 52865 | /* 148899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52866 | /* 148902 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52867 | /* 148906 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52868 | /* 148910 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52869 | /* 148914 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52870 | /* 148918 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52871 | /* 148925 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52872 | /* 148929 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52873 | /* 148931 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52874 | /* 148938 */ // (fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52875 | /* 148938 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m32), |
| 52876 | /* 148941 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52877 | /* 148943 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52878 | /* 148945 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52879 | /* 148949 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52880 | /* 148952 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52881 | /* 148957 */ GIR_RootConstrainSelectedInstOperands, |
| 52882 | /* 148958 */ // GIR_Coverage, 923, |
| 52883 | /* 148958 */ GIR_EraseRootFromParent_Done, |
| 52884 | /* 148959 */ // Label 3241: @148959 |
| 52885 | /* 148959 */ GIM_Try, /*On fail goto*//*Label 3242*/ GIMT_Encode4(149024), // Rule ID 911 // |
| 52886 | /* 148964 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52887 | /* 148967 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52888 | /* 148971 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52889 | /* 148975 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52890 | /* 148979 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52891 | /* 148983 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52892 | /* 148986 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52893 | /* 148990 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52894 | /* 148994 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52895 | /* 148996 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52896 | /* 149003 */ // (fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADD_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52897 | /* 149003 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32m), |
| 52898 | /* 149006 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52899 | /* 149008 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52900 | /* 149010 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52901 | /* 149014 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52902 | /* 149017 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52903 | /* 149022 */ GIR_RootConstrainSelectedInstOperands, |
| 52904 | /* 149023 */ // GIR_Coverage, 911, |
| 52905 | /* 149023 */ GIR_EraseRootFromParent_Done, |
| 52906 | /* 149024 */ // Label 3242: @149024 |
| 52907 | /* 149024 */ GIM_Try, /*On fail goto*//*Label 3243*/ GIMT_Encode4(149086), // Rule ID 2161 // |
| 52908 | /* 149029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52909 | /* 149032 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52910 | /* 149036 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52911 | /* 149040 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52912 | /* 149044 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52913 | /* 149048 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52914 | /* 149051 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52915 | /* 149055 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52916 | /* 149059 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52917 | /* 149061 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52918 | /* 149068 */ // (fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52919 | /* 149068 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 52920 | /* 149071 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52921 | /* 149073 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52922 | /* 149075 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52923 | /* 149079 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52924 | /* 149084 */ GIR_RootConstrainSelectedInstOperands, |
| 52925 | /* 149085 */ // GIR_Coverage, 2161, |
| 52926 | /* 149085 */ GIR_EraseRootFromParent_Done, |
| 52927 | /* 149086 */ // Label 3243: @149086 |
| 52928 | /* 149086 */ GIM_Try, /*On fail goto*//*Label 3244*/ GIMT_Encode4(149148), // Rule ID 2169 // |
| 52929 | /* 149091 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52930 | /* 149094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52931 | /* 149098 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52932 | /* 149102 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52933 | /* 149106 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52934 | /* 149110 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52935 | /* 149113 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52936 | /* 149117 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52937 | /* 149121 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52938 | /* 149123 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52939 | /* 149130 */ // (fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52940 | /* 149130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 52941 | /* 149133 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52942 | /* 149135 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52943 | /* 149137 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52944 | /* 149141 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52945 | /* 149146 */ GIR_RootConstrainSelectedInstOperands, |
| 52946 | /* 149147 */ // GIR_Coverage, 2169, |
| 52947 | /* 149147 */ GIR_EraseRootFromParent_Done, |
| 52948 | /* 149148 */ // Label 3244: @149148 |
| 52949 | /* 149148 */ GIM_Try, /*On fail goto*//*Label 3245*/ GIMT_Encode4(149210), // Rule ID 5917 // |
| 52950 | /* 149153 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52951 | /* 149156 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52952 | /* 149160 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52953 | /* 149164 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52954 | /* 149168 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52955 | /* 149172 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52956 | /* 149175 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52957 | /* 149179 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52958 | /* 149183 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52959 | /* 149185 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52960 | /* 149192 */ // (fadd:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52961 | /* 149192 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 52962 | /* 149195 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52963 | /* 149197 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52964 | /* 149199 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52965 | /* 149203 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52966 | /* 149208 */ GIR_RootConstrainSelectedInstOperands, |
| 52967 | /* 149209 */ // GIR_Coverage, 5917, |
| 52968 | /* 149209 */ GIR_EraseRootFromParent_Done, |
| 52969 | /* 149210 */ // Label 3245: @149210 |
| 52970 | /* 149210 */ GIM_Try, /*On fail goto*//*Label 3246*/ GIMT_Encode4(149247), // Rule ID 887 // |
| 52971 | /* 149215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52972 | /* 149218 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52973 | /* 149222 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52974 | /* 149226 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52975 | /* 149230 */ // (fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (ADD_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 52976 | /* 149230 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32), |
| 52977 | /* 149235 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 52978 | /* 149241 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 52979 | /* 149245 */ GIR_RootConstrainSelectedInstOperands, |
| 52980 | /* 149246 */ // GIR_Coverage, 887, |
| 52981 | /* 149246 */ GIR_Done, |
| 52982 | /* 149247 */ // Label 3246: @149247 |
| 52983 | /* 149247 */ GIM_Try, /*On fail goto*//*Label 3247*/ GIMT_Encode4(149278), // Rule ID 2159 // |
| 52984 | /* 149252 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52985 | /* 149255 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52986 | /* 149259 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52987 | /* 149263 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52988 | /* 149267 */ // (fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VADDSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 52989 | /* 149267 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSSrr), |
| 52990 | /* 149272 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 52991 | /* 149276 */ GIR_RootConstrainSelectedInstOperands, |
| 52992 | /* 149277 */ // GIR_Coverage, 2159, |
| 52993 | /* 149277 */ GIR_Done, |
| 52994 | /* 149278 */ // Label 3247: @149278 |
| 52995 | /* 149278 */ GIM_Try, /*On fail goto*//*Label 3248*/ GIMT_Encode4(149309), // Rule ID 2167 // |
| 52996 | /* 149283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52997 | /* 149286 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52998 | /* 149290 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52999 | /* 149294 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 53000 | /* 149298 */ // (fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (ADDSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 53001 | /* 149298 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDSSrr), |
| 53002 | /* 149303 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53003 | /* 149307 */ GIR_RootConstrainSelectedInstOperands, |
| 53004 | /* 149308 */ // GIR_Coverage, 2167, |
| 53005 | /* 149308 */ GIR_Done, |
| 53006 | /* 149309 */ // Label 3248: @149309 |
| 53007 | /* 149309 */ GIM_Try, /*On fail goto*//*Label 3249*/ GIMT_Encode4(149340), // Rule ID 5915 // |
| 53008 | /* 149314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53009 | /* 149317 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 53010 | /* 149321 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 53011 | /* 149325 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 53012 | /* 149329 */ // (fadd:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VADDSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 53013 | /* 149329 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSSZrr), |
| 53014 | /* 149334 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53015 | /* 149338 */ GIR_RootConstrainSelectedInstOperands, |
| 53016 | /* 149339 */ // GIR_Coverage, 5915, |
| 53017 | /* 149339 */ GIR_Done, |
| 53018 | /* 149340 */ // Label 3249: @149340 |
| 53019 | /* 149340 */ GIM_Reject, |
| 53020 | /* 149341 */ // Label 3227: @149341 |
| 53021 | /* 149341 */ GIM_Reject, |
| 53022 | /* 149342 */ // Label 3211: @149342 |
| 53023 | /* 149342 */ GIM_Try, /*On fail goto*//*Label 3250*/ GIMT_Encode4(150882), |
| 53024 | /* 149347 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 53025 | /* 149350 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 53026 | /* 149353 */ GIM_Try, /*On fail goto*//*Label 3251*/ GIMT_Encode4(149435), // Rule ID 26021 // |
| 53027 | /* 149358 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 53028 | /* 149361 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53029 | /* 149365 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53030 | /* 149369 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 53031 | /* 149373 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 53032 | /* 149377 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 53033 | /* 149381 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53034 | /* 149385 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 53035 | /* 149388 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 53036 | /* 149392 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 53037 | /* 149399 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 53038 | /* 149403 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53039 | /* 149407 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 53040 | /* 149409 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53041 | /* 149416 */ // (fadd:{ *:[f64] } (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), FR64:{ *:[f64] }:$src1) => (ADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53042 | /* 149416 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 53043 | /* 149419 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53044 | /* 149421 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53045 | /* 149423 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53046 | /* 149427 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 53047 | /* 149433 */ GIR_RootConstrainSelectedInstOperands, |
| 53048 | /* 149434 */ // GIR_Coverage, 26021, |
| 53049 | /* 149434 */ GIR_EraseRootFromParent_Done, |
| 53050 | /* 149435 */ // Label 3251: @149435 |
| 53051 | /* 149435 */ GIM_Try, /*On fail goto*//*Label 3252*/ GIMT_Encode4(149517), // Rule ID 26022 // |
| 53052 | /* 149440 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 53053 | /* 149443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53054 | /* 149447 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53055 | /* 149451 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 53056 | /* 149455 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 53057 | /* 149459 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 53058 | /* 149463 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53059 | /* 149467 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 53060 | /* 149470 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 53061 | /* 149474 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 53062 | /* 149481 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 53063 | /* 149485 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53064 | /* 149489 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 53065 | /* 149491 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53066 | /* 149498 */ // (fadd:{ *:[f64] } (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), FR64:{ *:[f64] }:$src1) => (VADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53067 | /* 149498 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 53068 | /* 149501 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53069 | /* 149503 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53070 | /* 149505 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53071 | /* 149509 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 53072 | /* 149515 */ GIR_RootConstrainSelectedInstOperands, |
| 53073 | /* 149516 */ // GIR_Coverage, 26022, |
| 53074 | /* 149516 */ GIR_EraseRootFromParent_Done, |
| 53075 | /* 149517 */ // Label 3252: @149517 |
| 53076 | /* 149517 */ GIM_Try, /*On fail goto*//*Label 3253*/ GIMT_Encode4(149599), // Rule ID 26023 // |
| 53077 | /* 149522 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53078 | /* 149525 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53079 | /* 149529 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53080 | /* 149533 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 53081 | /* 149537 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 53082 | /* 149541 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 53083 | /* 149545 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53084 | /* 149549 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 53085 | /* 149552 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 53086 | /* 149556 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 53087 | /* 149563 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 53088 | /* 149567 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53089 | /* 149571 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 53090 | /* 149573 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53091 | /* 149580 */ // (fadd:{ *:[f64] } (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), FR64X:{ *:[f64] }:$src1) => (VADDSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53092 | /* 149580 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 53093 | /* 149583 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53094 | /* 149585 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53095 | /* 149587 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53096 | /* 149591 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 53097 | /* 149597 */ GIR_RootConstrainSelectedInstOperands, |
| 53098 | /* 149598 */ // GIR_Coverage, 26023, |
| 53099 | /* 149598 */ GIR_EraseRootFromParent_Done, |
| 53100 | /* 149599 */ // Label 3253: @149599 |
| 53101 | /* 149599 */ GIM_Try, /*On fail goto*//*Label 3254*/ GIMT_Encode4(149681), // Rule ID 22470 // |
| 53102 | /* 149604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 53103 | /* 149607 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53104 | /* 149611 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53105 | /* 149615 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53106 | /* 149619 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 53107 | /* 149623 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 53108 | /* 149627 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 53109 | /* 149631 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53110 | /* 149635 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 53111 | /* 149638 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 53112 | /* 149642 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 53113 | /* 149649 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 53114 | /* 149653 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 53115 | /* 149655 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53116 | /* 149662 */ // (fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (ADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53117 | /* 149662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 53118 | /* 149665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53119 | /* 149667 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53120 | /* 149669 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53121 | /* 149673 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 53122 | /* 149679 */ GIR_RootConstrainSelectedInstOperands, |
| 53123 | /* 149680 */ // GIR_Coverage, 22470, |
| 53124 | /* 149680 */ GIR_EraseRootFromParent_Done, |
| 53125 | /* 149681 */ // Label 3254: @149681 |
| 53126 | /* 149681 */ GIM_Try, /*On fail goto*//*Label 3255*/ GIMT_Encode4(149763), // Rule ID 22471 // |
| 53127 | /* 149686 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 53128 | /* 149689 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53129 | /* 149693 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53130 | /* 149697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53131 | /* 149701 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 53132 | /* 149705 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 53133 | /* 149709 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 53134 | /* 149713 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53135 | /* 149717 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 53136 | /* 149720 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 53137 | /* 149724 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 53138 | /* 149731 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 53139 | /* 149735 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 53140 | /* 149737 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53141 | /* 149744 */ // (fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (VADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53142 | /* 149744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 53143 | /* 149747 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53144 | /* 149749 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53145 | /* 149751 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53146 | /* 149755 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 53147 | /* 149761 */ GIR_RootConstrainSelectedInstOperands, |
| 53148 | /* 149762 */ // GIR_Coverage, 22471, |
| 53149 | /* 149762 */ GIR_EraseRootFromParent_Done, |
| 53150 | /* 149763 */ // Label 3255: @149763 |
| 53151 | /* 149763 */ GIM_Try, /*On fail goto*//*Label 3256*/ GIMT_Encode4(149845), // Rule ID 22472 // |
| 53152 | /* 149768 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53153 | /* 149771 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53154 | /* 149775 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53155 | /* 149779 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53156 | /* 149783 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 53157 | /* 149787 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 53158 | /* 149791 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 53159 | /* 149795 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53160 | /* 149799 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 53161 | /* 149802 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 53162 | /* 149806 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 53163 | /* 149813 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 53164 | /* 149817 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 53165 | /* 149819 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53166 | /* 149826 */ // (fadd:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (VADDSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53167 | /* 149826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 53168 | /* 149829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53169 | /* 149831 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53170 | /* 149833 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53171 | /* 149837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 53172 | /* 149843 */ GIR_RootConstrainSelectedInstOperands, |
| 53173 | /* 149844 */ // GIR_Coverage, 22472, |
| 53174 | /* 149844 */ GIR_EraseRootFromParent_Done, |
| 53175 | /* 149845 */ // Label 3256: @149845 |
| 53176 | /* 149845 */ GIM_Try, /*On fail goto*//*Label 3257*/ GIMT_Encode4(149910), // Rule ID 23251 // |
| 53177 | /* 149850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 53178 | /* 149853 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53179 | /* 149857 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53180 | /* 149861 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53181 | /* 149865 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 53182 | /* 149872 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53183 | /* 149876 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53184 | /* 149880 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53185 | /* 149882 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53186 | /* 149889 */ // (fadd:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (ADD_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53187 | /* 149889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m64), |
| 53188 | /* 149892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53189 | /* 149894 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53190 | /* 149896 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53191 | /* 149900 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53192 | /* 149903 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53193 | /* 149908 */ GIR_RootConstrainSelectedInstOperands, |
| 53194 | /* 149909 */ // GIR_Coverage, 23251, |
| 53195 | /* 149909 */ GIR_EraseRootFromParent_Done, |
| 53196 | /* 149910 */ // Label 3257: @149910 |
| 53197 | /* 149910 */ GIM_Try, /*On fail goto*//*Label 3258*/ GIMT_Encode4(149975), // Rule ID 23253 // |
| 53198 | /* 149915 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 53199 | /* 149918 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53200 | /* 149922 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53201 | /* 149926 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53202 | /* 149930 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53203 | /* 149937 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53204 | /* 149941 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53205 | /* 149945 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53206 | /* 149947 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53207 | /* 149954 */ // (fadd:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (ADD_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53208 | /* 149954 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m64), |
| 53209 | /* 149957 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53210 | /* 149959 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53211 | /* 149961 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53212 | /* 149965 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53213 | /* 149968 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53214 | /* 149973 */ GIR_RootConstrainSelectedInstOperands, |
| 53215 | /* 149974 */ // GIR_Coverage, 23253, |
| 53216 | /* 149974 */ GIR_EraseRootFromParent_Done, |
| 53217 | /* 149975 */ // Label 3258: @149975 |
| 53218 | /* 149975 */ GIM_Try, /*On fail goto*//*Label 3259*/ GIMT_Encode4(150040), // Rule ID 23239 // |
| 53219 | /* 149980 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 53220 | /* 149983 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53221 | /* 149987 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53222 | /* 149991 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53223 | /* 149995 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53224 | /* 149998 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53225 | /* 150002 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53226 | /* 150006 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53227 | /* 150010 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53228 | /* 150012 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53229 | /* 150019 */ // (fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP64:{ *:[f64] }:$src1) => (ADD_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53230 | /* 150019 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m), |
| 53231 | /* 150022 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53232 | /* 150024 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53233 | /* 150026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53234 | /* 150030 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53235 | /* 150033 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53236 | /* 150038 */ GIR_RootConstrainSelectedInstOperands, |
| 53237 | /* 150039 */ // GIR_Coverage, 23239, |
| 53238 | /* 150039 */ GIR_EraseRootFromParent_Done, |
| 53239 | /* 150040 */ // Label 3259: @150040 |
| 53240 | /* 150040 */ GIM_Try, /*On fail goto*//*Label 3260*/ GIMT_Encode4(150112), // Rule ID 23241 // |
| 53241 | /* 150045 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 53242 | /* 150048 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53243 | /* 150052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53244 | /* 150056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53245 | /* 150060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53246 | /* 150063 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53247 | /* 150067 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53248 | /* 150074 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53249 | /* 150078 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53250 | /* 150082 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53251 | /* 150084 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53252 | /* 150091 */ // (fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP64:{ *:[f64] }:$src1) => (ADD_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53253 | /* 150091 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m32), |
| 53254 | /* 150094 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53255 | /* 150096 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53256 | /* 150098 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53257 | /* 150102 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53258 | /* 150105 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53259 | /* 150110 */ GIR_RootConstrainSelectedInstOperands, |
| 53260 | /* 150111 */ // GIR_Coverage, 23241, |
| 53261 | /* 150111 */ GIR_EraseRootFromParent_Done, |
| 53262 | /* 150112 */ // Label 3260: @150112 |
| 53263 | /* 150112 */ GIM_Try, /*On fail goto*//*Label 3261*/ GIMT_Encode4(150174), // Rule ID 23384 // |
| 53264 | /* 150117 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 53265 | /* 150120 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53266 | /* 150124 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53267 | /* 150128 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53268 | /* 150132 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53269 | /* 150135 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53270 | /* 150139 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53271 | /* 150143 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53272 | /* 150147 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53273 | /* 150149 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53274 | /* 150156 */ // (fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (VADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53275 | /* 150156 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 53276 | /* 150159 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53277 | /* 150161 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53278 | /* 150163 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53279 | /* 150167 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53280 | /* 150172 */ GIR_RootConstrainSelectedInstOperands, |
| 53281 | /* 150173 */ // GIR_Coverage, 23384, |
| 53282 | /* 150173 */ GIR_EraseRootFromParent_Done, |
| 53283 | /* 150174 */ // Label 3261: @150174 |
| 53284 | /* 150174 */ GIM_Try, /*On fail goto*//*Label 3262*/ GIMT_Encode4(150236), // Rule ID 23388 // |
| 53285 | /* 150179 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 53286 | /* 150182 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53287 | /* 150186 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53288 | /* 150190 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53289 | /* 150194 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53290 | /* 150197 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53291 | /* 150201 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53292 | /* 150205 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53293 | /* 150209 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53294 | /* 150211 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53295 | /* 150218 */ // (fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (ADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53296 | /* 150218 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 53297 | /* 150221 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53298 | /* 150223 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53299 | /* 150225 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53300 | /* 150229 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53301 | /* 150234 */ GIR_RootConstrainSelectedInstOperands, |
| 53302 | /* 150235 */ // GIR_Coverage, 23388, |
| 53303 | /* 150235 */ GIR_EraseRootFromParent_Done, |
| 53304 | /* 150236 */ // Label 3262: @150236 |
| 53305 | /* 150236 */ GIM_Try, /*On fail goto*//*Label 3263*/ GIMT_Encode4(150298), // Rule ID 24248 // |
| 53306 | /* 150241 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53307 | /* 150244 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53308 | /* 150248 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53309 | /* 150252 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53310 | /* 150256 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53311 | /* 150259 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53312 | /* 150263 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53313 | /* 150267 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53314 | /* 150271 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53315 | /* 150273 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53316 | /* 150280 */ // (fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64X:{ *:[f64] }:$src1) => (VADDSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53317 | /* 150280 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 53318 | /* 150283 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53319 | /* 150285 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53320 | /* 150287 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53321 | /* 150291 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53322 | /* 150296 */ GIR_RootConstrainSelectedInstOperands, |
| 53323 | /* 150297 */ // GIR_Coverage, 24248, |
| 53324 | /* 150297 */ GIR_EraseRootFromParent_Done, |
| 53325 | /* 150298 */ // Label 3263: @150298 |
| 53326 | /* 150298 */ GIM_Try, /*On fail goto*//*Label 3264*/ GIMT_Encode4(150363), // Rule ID 925 // |
| 53327 | /* 150303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 53328 | /* 150306 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53329 | /* 150310 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53330 | /* 150314 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53331 | /* 150318 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53332 | /* 150322 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 53333 | /* 150329 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53334 | /* 150333 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53335 | /* 150335 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53336 | /* 150342 */ // (fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53337 | /* 150342 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m64), |
| 53338 | /* 150345 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53339 | /* 150347 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53340 | /* 150349 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53341 | /* 150353 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53342 | /* 150356 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53343 | /* 150361 */ GIR_RootConstrainSelectedInstOperands, |
| 53344 | /* 150362 */ // GIR_Coverage, 925, |
| 53345 | /* 150362 */ GIR_EraseRootFromParent_Done, |
| 53346 | /* 150363 */ // Label 3264: @150363 |
| 53347 | /* 150363 */ GIM_Try, /*On fail goto*//*Label 3265*/ GIMT_Encode4(150428), // Rule ID 927 // |
| 53348 | /* 150368 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 53349 | /* 150371 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53350 | /* 150375 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53351 | /* 150379 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53352 | /* 150383 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53353 | /* 150387 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53354 | /* 150394 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53355 | /* 150398 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53356 | /* 150400 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53357 | /* 150407 */ // (fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53358 | /* 150407 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m64), |
| 53359 | /* 150410 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53360 | /* 150412 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53361 | /* 150414 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53362 | /* 150418 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53363 | /* 150421 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53364 | /* 150426 */ GIR_RootConstrainSelectedInstOperands, |
| 53365 | /* 150427 */ // GIR_Coverage, 927, |
| 53366 | /* 150427 */ GIR_EraseRootFromParent_Done, |
| 53367 | /* 150428 */ // Label 3265: @150428 |
| 53368 | /* 150428 */ GIM_Try, /*On fail goto*//*Label 3266*/ GIMT_Encode4(150493), // Rule ID 913 // |
| 53369 | /* 150433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 53370 | /* 150436 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53371 | /* 150440 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53372 | /* 150444 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53373 | /* 150448 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53374 | /* 150452 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53375 | /* 150455 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53376 | /* 150459 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53377 | /* 150463 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53378 | /* 150465 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53379 | /* 150472 */ // (fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADD_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53380 | /* 150472 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m), |
| 53381 | /* 150475 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53382 | /* 150477 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53383 | /* 150479 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53384 | /* 150483 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53385 | /* 150486 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53386 | /* 150491 */ GIR_RootConstrainSelectedInstOperands, |
| 53387 | /* 150492 */ // GIR_Coverage, 913, |
| 53388 | /* 150492 */ GIR_EraseRootFromParent_Done, |
| 53389 | /* 150493 */ // Label 3266: @150493 |
| 53390 | /* 150493 */ GIM_Try, /*On fail goto*//*Label 3267*/ GIMT_Encode4(150565), // Rule ID 915 // |
| 53391 | /* 150498 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 53392 | /* 150501 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53393 | /* 150505 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53394 | /* 150509 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53395 | /* 150513 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53396 | /* 150517 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53397 | /* 150520 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53398 | /* 150524 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53399 | /* 150531 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53400 | /* 150535 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53401 | /* 150537 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53402 | /* 150544 */ // (fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (ADD_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53403 | /* 150544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m32), |
| 53404 | /* 150547 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53405 | /* 150549 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53406 | /* 150551 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53407 | /* 150555 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53408 | /* 150558 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53409 | /* 150563 */ GIR_RootConstrainSelectedInstOperands, |
| 53410 | /* 150564 */ // GIR_Coverage, 915, |
| 53411 | /* 150564 */ GIR_EraseRootFromParent_Done, |
| 53412 | /* 150565 */ // Label 3267: @150565 |
| 53413 | /* 150565 */ GIM_Try, /*On fail goto*//*Label 3268*/ GIMT_Encode4(150627), // Rule ID 2165 // |
| 53414 | /* 150570 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 53415 | /* 150573 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53416 | /* 150577 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53417 | /* 150581 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53418 | /* 150585 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53419 | /* 150589 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53420 | /* 150592 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53421 | /* 150596 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53422 | /* 150600 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53423 | /* 150602 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53424 | /* 150609 */ // (fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53425 | /* 150609 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 53426 | /* 150612 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53427 | /* 150614 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53428 | /* 150616 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53429 | /* 150620 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53430 | /* 150625 */ GIR_RootConstrainSelectedInstOperands, |
| 53431 | /* 150626 */ // GIR_Coverage, 2165, |
| 53432 | /* 150626 */ GIR_EraseRootFromParent_Done, |
| 53433 | /* 150627 */ // Label 3268: @150627 |
| 53434 | /* 150627 */ GIM_Try, /*On fail goto*//*Label 3269*/ GIMT_Encode4(150689), // Rule ID 2173 // |
| 53435 | /* 150632 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 53436 | /* 150635 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53437 | /* 150639 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53438 | /* 150643 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53439 | /* 150647 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53440 | /* 150651 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53441 | /* 150654 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53442 | /* 150658 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53443 | /* 150662 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53444 | /* 150664 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53445 | /* 150671 */ // (fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53446 | /* 150671 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 53447 | /* 150674 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53448 | /* 150676 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53449 | /* 150678 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53450 | /* 150682 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53451 | /* 150687 */ GIR_RootConstrainSelectedInstOperands, |
| 53452 | /* 150688 */ // GIR_Coverage, 2173, |
| 53453 | /* 150688 */ GIR_EraseRootFromParent_Done, |
| 53454 | /* 150689 */ // Label 3269: @150689 |
| 53455 | /* 150689 */ GIM_Try, /*On fail goto*//*Label 3270*/ GIMT_Encode4(150751), // Rule ID 5936 // |
| 53456 | /* 150694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53457 | /* 150697 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53458 | /* 150701 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53459 | /* 150705 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53460 | /* 150709 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53461 | /* 150713 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53462 | /* 150716 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53463 | /* 150720 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53464 | /* 150724 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53465 | /* 150726 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53466 | /* 150733 */ // (fadd:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53467 | /* 150733 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 53468 | /* 150736 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53469 | /* 150738 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53470 | /* 150740 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53471 | /* 150744 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53472 | /* 150749 */ GIR_RootConstrainSelectedInstOperands, |
| 53473 | /* 150750 */ // GIR_Coverage, 5936, |
| 53474 | /* 150750 */ GIR_EraseRootFromParent_Done, |
| 53475 | /* 150751 */ // Label 3270: @150751 |
| 53476 | /* 150751 */ GIM_Try, /*On fail goto*//*Label 3271*/ GIMT_Encode4(150788), // Rule ID 889 // |
| 53477 | /* 150756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 53478 | /* 150759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53479 | /* 150763 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53480 | /* 150767 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53481 | /* 150771 */ // (fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (ADD_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 53482 | /* 150771 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64), |
| 53483 | /* 150776 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 53484 | /* 150782 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 53485 | /* 150786 */ GIR_RootConstrainSelectedInstOperands, |
| 53486 | /* 150787 */ // GIR_Coverage, 889, |
| 53487 | /* 150787 */ GIR_Done, |
| 53488 | /* 150788 */ // Label 3271: @150788 |
| 53489 | /* 150788 */ GIM_Try, /*On fail goto*//*Label 3272*/ GIMT_Encode4(150819), // Rule ID 2163 // |
| 53490 | /* 150793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 53491 | /* 150796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53492 | /* 150800 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53493 | /* 150804 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53494 | /* 150808 */ // (fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VADDSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 53495 | /* 150808 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSDrr), |
| 53496 | /* 150813 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53497 | /* 150817 */ GIR_RootConstrainSelectedInstOperands, |
| 53498 | /* 150818 */ // GIR_Coverage, 2163, |
| 53499 | /* 150818 */ GIR_Done, |
| 53500 | /* 150819 */ // Label 3272: @150819 |
| 53501 | /* 150819 */ GIM_Try, /*On fail goto*//*Label 3273*/ GIMT_Encode4(150850), // Rule ID 2171 // |
| 53502 | /* 150824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 53503 | /* 150827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53504 | /* 150831 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53505 | /* 150835 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53506 | /* 150839 */ // (fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (ADDSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 53507 | /* 150839 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDSDrr), |
| 53508 | /* 150844 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53509 | /* 150848 */ GIR_RootConstrainSelectedInstOperands, |
| 53510 | /* 150849 */ // GIR_Coverage, 2171, |
| 53511 | /* 150849 */ GIR_Done, |
| 53512 | /* 150850 */ // Label 3273: @150850 |
| 53513 | /* 150850 */ GIM_Try, /*On fail goto*//*Label 3274*/ GIMT_Encode4(150881), // Rule ID 5934 // |
| 53514 | /* 150855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53515 | /* 150858 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53516 | /* 150862 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53517 | /* 150866 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53518 | /* 150870 */ // (fadd:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VADDSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 53519 | /* 150870 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSDZrr), |
| 53520 | /* 150875 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53521 | /* 150879 */ GIR_RootConstrainSelectedInstOperands, |
| 53522 | /* 150880 */ // GIR_Coverage, 5934, |
| 53523 | /* 150880 */ GIR_Done, |
| 53524 | /* 150881 */ // Label 3274: @150881 |
| 53525 | /* 150881 */ GIM_Reject, |
| 53526 | /* 150882 */ // Label 3250: @150882 |
| 53527 | /* 150882 */ GIM_Reject, |
| 53528 | /* 150883 */ // Label 3212: @150883 |
| 53529 | /* 150883 */ GIM_Try, /*On fail goto*//*Label 3275*/ GIMT_Encode4(151448), |
| 53530 | /* 150888 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 53531 | /* 150891 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 53532 | /* 150894 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53533 | /* 150898 */ GIM_Try, /*On fail goto*//*Label 3276*/ GIMT_Encode4(150959), // Rule ID 23255 // |
| 53534 | /* 150903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53535 | /* 150906 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53536 | /* 150910 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53537 | /* 150914 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 53538 | /* 150921 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53539 | /* 150925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53540 | /* 150929 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53541 | /* 150931 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53542 | /* 150938 */ // (fadd:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (ADD_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53543 | /* 150938 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m80), |
| 53544 | /* 150941 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53545 | /* 150943 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53546 | /* 150945 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53547 | /* 150949 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53548 | /* 150952 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53549 | /* 150957 */ GIR_RootConstrainSelectedInstOperands, |
| 53550 | /* 150958 */ // GIR_Coverage, 23255, |
| 53551 | /* 150958 */ GIR_EraseRootFromParent_Done, |
| 53552 | /* 150959 */ // Label 3276: @150959 |
| 53553 | /* 150959 */ GIM_Try, /*On fail goto*//*Label 3277*/ GIMT_Encode4(151020), // Rule ID 23257 // |
| 53554 | /* 150964 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53555 | /* 150967 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53556 | /* 150971 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53557 | /* 150975 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53558 | /* 150982 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53559 | /* 150986 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53560 | /* 150990 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53561 | /* 150992 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53562 | /* 150999 */ // (fadd:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (ADD_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53563 | /* 150999 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m80), |
| 53564 | /* 151002 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53565 | /* 151004 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53566 | /* 151006 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53567 | /* 151010 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53568 | /* 151013 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53569 | /* 151018 */ GIR_RootConstrainSelectedInstOperands, |
| 53570 | /* 151019 */ // GIR_Coverage, 23257, |
| 53571 | /* 151019 */ GIR_EraseRootFromParent_Done, |
| 53572 | /* 151020 */ // Label 3277: @151020 |
| 53573 | /* 151020 */ GIM_Try, /*On fail goto*//*Label 3278*/ GIMT_Encode4(151088), // Rule ID 23243 // |
| 53574 | /* 151025 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53575 | /* 151028 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53576 | /* 151032 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53577 | /* 151036 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53578 | /* 151039 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53579 | /* 151043 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53580 | /* 151050 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53581 | /* 151054 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53582 | /* 151058 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53583 | /* 151060 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53584 | /* 151067 */ // (fadd:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP80:{ *:[f80] }:$src1) => (ADD_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53585 | /* 151067 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m32), |
| 53586 | /* 151070 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53587 | /* 151072 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53588 | /* 151074 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53589 | /* 151078 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53590 | /* 151081 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53591 | /* 151086 */ GIR_RootConstrainSelectedInstOperands, |
| 53592 | /* 151087 */ // GIR_Coverage, 23243, |
| 53593 | /* 151087 */ GIR_EraseRootFromParent_Done, |
| 53594 | /* 151088 */ // Label 3278: @151088 |
| 53595 | /* 151088 */ GIM_Try, /*On fail goto*//*Label 3279*/ GIMT_Encode4(151156), // Rule ID 23245 // |
| 53596 | /* 151093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53597 | /* 151096 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53598 | /* 151100 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53599 | /* 151104 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53600 | /* 151107 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53601 | /* 151111 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 53602 | /* 151118 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53603 | /* 151122 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53604 | /* 151126 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53605 | /* 151128 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53606 | /* 151135 */ // (fadd:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>, RFP80:{ *:[f80] }:$src1) => (ADD_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53607 | /* 151135 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m64), |
| 53608 | /* 151138 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53609 | /* 151140 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53610 | /* 151142 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53611 | /* 151146 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53612 | /* 151149 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53613 | /* 151154 */ GIR_RootConstrainSelectedInstOperands, |
| 53614 | /* 151155 */ // GIR_Coverage, 23245, |
| 53615 | /* 151155 */ GIR_EraseRootFromParent_Done, |
| 53616 | /* 151156 */ // Label 3279: @151156 |
| 53617 | /* 151156 */ GIM_Try, /*On fail goto*//*Label 3280*/ GIMT_Encode4(151217), // Rule ID 929 // |
| 53618 | /* 151161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53619 | /* 151164 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53620 | /* 151168 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53621 | /* 151172 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53622 | /* 151176 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 53623 | /* 151183 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53624 | /* 151187 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53625 | /* 151189 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53626 | /* 151196 */ // (fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53627 | /* 151196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m80), |
| 53628 | /* 151199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53629 | /* 151201 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53630 | /* 151203 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53631 | /* 151207 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53632 | /* 151210 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53633 | /* 151215 */ GIR_RootConstrainSelectedInstOperands, |
| 53634 | /* 151216 */ // GIR_Coverage, 929, |
| 53635 | /* 151216 */ GIR_EraseRootFromParent_Done, |
| 53636 | /* 151217 */ // Label 3280: @151217 |
| 53637 | /* 151217 */ GIM_Try, /*On fail goto*//*Label 3281*/ GIMT_Encode4(151278), // Rule ID 931 // |
| 53638 | /* 151222 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53639 | /* 151225 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53640 | /* 151229 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53641 | /* 151233 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53642 | /* 151237 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53643 | /* 151244 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53644 | /* 151248 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53645 | /* 151250 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53646 | /* 151257 */ // (fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53647 | /* 151257 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m80), |
| 53648 | /* 151260 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53649 | /* 151262 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53650 | /* 151264 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53651 | /* 151268 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53652 | /* 151271 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53653 | /* 151276 */ GIR_RootConstrainSelectedInstOperands, |
| 53654 | /* 151277 */ // GIR_Coverage, 931, |
| 53655 | /* 151277 */ GIR_EraseRootFromParent_Done, |
| 53656 | /* 151278 */ // Label 3281: @151278 |
| 53657 | /* 151278 */ GIM_Try, /*On fail goto*//*Label 3282*/ GIMT_Encode4(151346), // Rule ID 917 // |
| 53658 | /* 151283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53659 | /* 151286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53660 | /* 151290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53661 | /* 151294 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53662 | /* 151298 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53663 | /* 151301 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53664 | /* 151305 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53665 | /* 151312 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53666 | /* 151316 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53667 | /* 151318 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53668 | /* 151325 */ // (fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (ADD_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53669 | /* 151325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m32), |
| 53670 | /* 151328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53671 | /* 151330 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53672 | /* 151332 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53673 | /* 151336 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53674 | /* 151339 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53675 | /* 151344 */ GIR_RootConstrainSelectedInstOperands, |
| 53676 | /* 151345 */ // GIR_Coverage, 917, |
| 53677 | /* 151345 */ GIR_EraseRootFromParent_Done, |
| 53678 | /* 151346 */ // Label 3282: @151346 |
| 53679 | /* 151346 */ GIM_Try, /*On fail goto*//*Label 3283*/ GIMT_Encode4(151414), // Rule ID 919 // |
| 53680 | /* 151351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53681 | /* 151354 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53682 | /* 151358 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53683 | /* 151362 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53684 | /* 151366 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53685 | /* 151369 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53686 | /* 151373 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 53687 | /* 151380 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53688 | /* 151384 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53689 | /* 151386 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53690 | /* 151393 */ // (fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>) => (ADD_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53691 | /* 151393 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m64), |
| 53692 | /* 151396 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53693 | /* 151398 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53694 | /* 151400 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53695 | /* 151404 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53696 | /* 151407 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53697 | /* 151412 */ GIR_RootConstrainSelectedInstOperands, |
| 53698 | /* 151413 */ // GIR_Coverage, 919, |
| 53699 | /* 151413 */ GIR_EraseRootFromParent_Done, |
| 53700 | /* 151414 */ // Label 3283: @151414 |
| 53701 | /* 151414 */ GIM_Try, /*On fail goto*//*Label 3284*/ GIMT_Encode4(151447), // Rule ID 891 // |
| 53702 | /* 151419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53703 | /* 151422 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53704 | /* 151426 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53705 | /* 151430 */ // (fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (ADD_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 53706 | /* 151430 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80), |
| 53707 | /* 151435 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 53708 | /* 151441 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 53709 | /* 151445 */ GIR_RootConstrainSelectedInstOperands, |
| 53710 | /* 151446 */ // GIR_Coverage, 891, |
| 53711 | /* 151446 */ GIR_Done, |
| 53712 | /* 151447 */ // Label 3284: @151447 |
| 53713 | /* 151447 */ GIM_Reject, |
| 53714 | /* 151448 */ // Label 3275: @151448 |
| 53715 | /* 151448 */ GIM_Reject, |
| 53716 | /* 151449 */ // Label 3213: @151449 |
| 53717 | /* 151449 */ GIM_Try, /*On fail goto*//*Label 3285*/ GIMT_Encode4(151802), |
| 53718 | /* 151454 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 53719 | /* 151457 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 53720 | /* 151460 */ GIM_Try, /*On fail goto*//*Label 3286*/ GIMT_Encode4(151522), // Rule ID 23372 // |
| 53721 | /* 151465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53722 | /* 151468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53723 | /* 151472 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53724 | /* 151476 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53725 | /* 151480 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53726 | /* 151483 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53727 | /* 151487 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53728 | /* 151491 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53729 | /* 151495 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53730 | /* 151497 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53731 | /* 151504 */ // (fadd:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1) => (VADDPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53732 | /* 151504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDrm), |
| 53733 | /* 151507 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53734 | /* 151509 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53735 | /* 151511 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53736 | /* 151515 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53737 | /* 151520 */ GIR_RootConstrainSelectedInstOperands, |
| 53738 | /* 151521 */ // GIR_Coverage, 23372, |
| 53739 | /* 151521 */ GIR_EraseRootFromParent_Done, |
| 53740 | /* 151522 */ // Label 3286: @151522 |
| 53741 | /* 151522 */ GIM_Try, /*On fail goto*//*Label 3287*/ GIMT_Encode4(151584), // Rule ID 24296 // |
| 53742 | /* 151527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53743 | /* 151530 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53744 | /* 151534 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53745 | /* 151538 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53746 | /* 151542 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53747 | /* 151545 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53748 | /* 151549 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53749 | /* 151553 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53750 | /* 151557 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53751 | /* 151559 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53752 | /* 151566 */ // (fadd:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2f64] }:$src1) => (VADDPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53753 | /* 151566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rm), |
| 53754 | /* 151569 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53755 | /* 151571 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53756 | /* 151573 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53757 | /* 151577 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53758 | /* 151582 */ GIR_RootConstrainSelectedInstOperands, |
| 53759 | /* 151583 */ // GIR_Coverage, 24296, |
| 53760 | /* 151583 */ GIR_EraseRootFromParent_Done, |
| 53761 | /* 151584 */ // Label 3287: @151584 |
| 53762 | /* 151584 */ GIM_Try, /*On fail goto*//*Label 3288*/ GIMT_Encode4(151646), // Rule ID 2141 // |
| 53763 | /* 151589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53764 | /* 151592 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53765 | /* 151596 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53766 | /* 151600 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53767 | /* 151604 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53768 | /* 151608 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53769 | /* 151611 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53770 | /* 151615 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53771 | /* 151619 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53772 | /* 151621 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53773 | /* 151628 */ // (fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53774 | /* 151628 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDrm), |
| 53775 | /* 151631 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53776 | /* 151633 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53777 | /* 151635 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53778 | /* 151639 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53779 | /* 151644 */ GIR_RootConstrainSelectedInstOperands, |
| 53780 | /* 151645 */ // GIR_Coverage, 2141, |
| 53781 | /* 151645 */ GIR_EraseRootFromParent_Done, |
| 53782 | /* 151646 */ // Label 3288: @151646 |
| 53783 | /* 151646 */ GIM_Try, /*On fail goto*//*Label 3289*/ GIMT_Encode4(151708), // Rule ID 6309 // |
| 53784 | /* 151651 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53785 | /* 151654 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53786 | /* 151658 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53787 | /* 151662 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53788 | /* 151666 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53789 | /* 151670 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53790 | /* 151673 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53791 | /* 151677 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53792 | /* 151681 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53793 | /* 151683 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53794 | /* 151690 */ // (fadd:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53795 | /* 151690 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rm), |
| 53796 | /* 151693 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53797 | /* 151695 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53798 | /* 151697 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53799 | /* 151701 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53800 | /* 151706 */ GIR_RootConstrainSelectedInstOperands, |
| 53801 | /* 151707 */ // GIR_Coverage, 6309, |
| 53802 | /* 151707 */ GIR_EraseRootFromParent_Done, |
| 53803 | /* 151708 */ // Label 3289: @151708 |
| 53804 | /* 151708 */ GIM_Try, /*On fail goto*//*Label 3290*/ GIMT_Encode4(151739), // Rule ID 2139 // |
| 53805 | /* 151713 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53806 | /* 151716 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53807 | /* 151720 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53808 | /* 151724 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53809 | /* 151728 */ // (fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VADDPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 53810 | /* 151728 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDrr), |
| 53811 | /* 151733 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53812 | /* 151737 */ GIR_RootConstrainSelectedInstOperands, |
| 53813 | /* 151738 */ // GIR_Coverage, 2139, |
| 53814 | /* 151738 */ GIR_Done, |
| 53815 | /* 151739 */ // Label 3290: @151739 |
| 53816 | /* 151739 */ GIM_Try, /*On fail goto*//*Label 3291*/ GIMT_Encode4(151770), // Rule ID 2155 // |
| 53817 | /* 151744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 53818 | /* 151747 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53819 | /* 151751 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53820 | /* 151755 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53821 | /* 151759 */ // (fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (ADDPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 53822 | /* 151759 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDPDrr), |
| 53823 | /* 151764 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53824 | /* 151768 */ GIR_RootConstrainSelectedInstOperands, |
| 53825 | /* 151769 */ // GIR_Coverage, 2155, |
| 53826 | /* 151769 */ GIR_Done, |
| 53827 | /* 151770 */ // Label 3291: @151770 |
| 53828 | /* 151770 */ GIM_Try, /*On fail goto*//*Label 3292*/ GIMT_Encode4(151801), // Rule ID 6305 // |
| 53829 | /* 151775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53830 | /* 151778 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53831 | /* 151782 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53832 | /* 151786 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53833 | /* 151790 */ // (fadd:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VADDPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 53834 | /* 151790 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rr), |
| 53835 | /* 151795 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53836 | /* 151799 */ GIR_RootConstrainSelectedInstOperands, |
| 53837 | /* 151800 */ // GIR_Coverage, 6305, |
| 53838 | /* 151800 */ GIR_Done, |
| 53839 | /* 151801 */ // Label 3292: @151801 |
| 53840 | /* 151801 */ GIM_Reject, |
| 53841 | /* 151802 */ // Label 3285: @151802 |
| 53842 | /* 151802 */ GIM_Reject, |
| 53843 | /* 151803 */ // Label 3214: @151803 |
| 53844 | /* 151803 */ GIM_Try, /*On fail goto*//*Label 3293*/ GIMT_Encode4(152156), |
| 53845 | /* 151808 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 53846 | /* 151811 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 53847 | /* 151814 */ GIM_Try, /*On fail goto*//*Label 3294*/ GIMT_Encode4(151876), // Rule ID 23370 // |
| 53848 | /* 151819 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53849 | /* 151822 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53850 | /* 151826 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53851 | /* 151830 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53852 | /* 151834 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53853 | /* 151837 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53854 | /* 151841 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53855 | /* 151845 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53856 | /* 151849 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53857 | /* 151851 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53858 | /* 151858 */ // (fadd:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1) => (VADDPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53859 | /* 151858 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSrm), |
| 53860 | /* 151861 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53861 | /* 151863 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53862 | /* 151865 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53863 | /* 151869 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53864 | /* 151874 */ GIR_RootConstrainSelectedInstOperands, |
| 53865 | /* 151875 */ // GIR_Coverage, 23370, |
| 53866 | /* 151875 */ GIR_EraseRootFromParent_Done, |
| 53867 | /* 151876 */ // Label 3294: @151876 |
| 53868 | /* 151876 */ GIM_Try, /*On fail goto*//*Label 3295*/ GIMT_Encode4(151938), // Rule ID 24280 // |
| 53869 | /* 151881 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53870 | /* 151884 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53871 | /* 151888 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53872 | /* 151892 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53873 | /* 151896 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53874 | /* 151899 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53875 | /* 151903 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53876 | /* 151907 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53877 | /* 151911 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53878 | /* 151913 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53879 | /* 151920 */ // (fadd:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4f32] }:$src1) => (VADDPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53880 | /* 151920 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rm), |
| 53881 | /* 151923 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53882 | /* 151925 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53883 | /* 151927 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53884 | /* 151931 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53885 | /* 151936 */ GIR_RootConstrainSelectedInstOperands, |
| 53886 | /* 151937 */ // GIR_Coverage, 24280, |
| 53887 | /* 151937 */ GIR_EraseRootFromParent_Done, |
| 53888 | /* 151938 */ // Label 3295: @151938 |
| 53889 | /* 151938 */ GIM_Try, /*On fail goto*//*Label 3296*/ GIMT_Encode4(152000), // Rule ID 2137 // |
| 53890 | /* 151943 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53891 | /* 151946 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53892 | /* 151950 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53893 | /* 151954 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53894 | /* 151958 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53895 | /* 151962 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53896 | /* 151965 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53897 | /* 151969 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53898 | /* 151973 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53899 | /* 151975 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53900 | /* 151982 */ // (fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53901 | /* 151982 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSrm), |
| 53902 | /* 151985 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53903 | /* 151987 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53904 | /* 151989 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53905 | /* 151993 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53906 | /* 151998 */ GIR_RootConstrainSelectedInstOperands, |
| 53907 | /* 151999 */ // GIR_Coverage, 2137, |
| 53908 | /* 151999 */ GIR_EraseRootFromParent_Done, |
| 53909 | /* 152000 */ // Label 3296: @152000 |
| 53910 | /* 152000 */ GIM_Try, /*On fail goto*//*Label 3297*/ GIMT_Encode4(152062), // Rule ID 6285 // |
| 53911 | /* 152005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53912 | /* 152008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53913 | /* 152012 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53914 | /* 152016 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53915 | /* 152020 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53916 | /* 152024 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53917 | /* 152027 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53918 | /* 152031 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53919 | /* 152035 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53920 | /* 152037 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53921 | /* 152044 */ // (fadd:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53922 | /* 152044 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rm), |
| 53923 | /* 152047 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53924 | /* 152049 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53925 | /* 152051 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53926 | /* 152055 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53927 | /* 152060 */ GIR_RootConstrainSelectedInstOperands, |
| 53928 | /* 152061 */ // GIR_Coverage, 6285, |
| 53929 | /* 152061 */ GIR_EraseRootFromParent_Done, |
| 53930 | /* 152062 */ // Label 3297: @152062 |
| 53931 | /* 152062 */ GIM_Try, /*On fail goto*//*Label 3298*/ GIMT_Encode4(152093), // Rule ID 2135 // |
| 53932 | /* 152067 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53933 | /* 152070 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53934 | /* 152074 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53935 | /* 152078 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53936 | /* 152082 */ // (fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VADDPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 53937 | /* 152082 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSrr), |
| 53938 | /* 152087 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53939 | /* 152091 */ GIR_RootConstrainSelectedInstOperands, |
| 53940 | /* 152092 */ // GIR_Coverage, 2135, |
| 53941 | /* 152092 */ GIR_Done, |
| 53942 | /* 152093 */ // Label 3298: @152093 |
| 53943 | /* 152093 */ GIM_Try, /*On fail goto*//*Label 3299*/ GIMT_Encode4(152124), // Rule ID 2151 // |
| 53944 | /* 152098 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 53945 | /* 152101 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53946 | /* 152105 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53947 | /* 152109 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53948 | /* 152113 */ // (fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (ADDPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 53949 | /* 152113 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDPSrr), |
| 53950 | /* 152118 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53951 | /* 152122 */ GIR_RootConstrainSelectedInstOperands, |
| 53952 | /* 152123 */ // GIR_Coverage, 2151, |
| 53953 | /* 152123 */ GIR_Done, |
| 53954 | /* 152124 */ // Label 3299: @152124 |
| 53955 | /* 152124 */ GIM_Try, /*On fail goto*//*Label 3300*/ GIMT_Encode4(152155), // Rule ID 6281 // |
| 53956 | /* 152129 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53957 | /* 152132 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53958 | /* 152136 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53959 | /* 152140 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53960 | /* 152144 */ // (fadd:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VADDPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 53961 | /* 152144 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rr), |
| 53962 | /* 152149 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53963 | /* 152153 */ GIR_RootConstrainSelectedInstOperands, |
| 53964 | /* 152154 */ // GIR_Coverage, 6281, |
| 53965 | /* 152154 */ GIR_Done, |
| 53966 | /* 152155 */ // Label 3300: @152155 |
| 53967 | /* 152155 */ GIM_Reject, |
| 53968 | /* 152156 */ // Label 3293: @152156 |
| 53969 | /* 152156 */ GIM_Reject, |
| 53970 | /* 152157 */ // Label 3215: @152157 |
| 53971 | /* 152157 */ GIM_Try, /*On fail goto*//*Label 3301*/ GIMT_Encode4(152479), |
| 53972 | /* 152162 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 53973 | /* 152165 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 53974 | /* 152168 */ GIM_Try, /*On fail goto*//*Label 3302*/ GIMT_Encode4(152230), // Rule ID 23376 // |
| 53975 | /* 152173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53976 | /* 152176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53977 | /* 152180 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53978 | /* 152184 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53979 | /* 152188 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53980 | /* 152191 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53981 | /* 152195 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53982 | /* 152199 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53983 | /* 152203 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53984 | /* 152205 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53985 | /* 152212 */ // (fadd:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1) => (VADDPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53986 | /* 152212 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDYrm), |
| 53987 | /* 152215 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53988 | /* 152217 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53989 | /* 152219 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53990 | /* 152223 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53991 | /* 152228 */ GIR_RootConstrainSelectedInstOperands, |
| 53992 | /* 152229 */ // GIR_Coverage, 23376, |
| 53993 | /* 152229 */ GIR_EraseRootFromParent_Done, |
| 53994 | /* 152230 */ // Label 3302: @152230 |
| 53995 | /* 152230 */ GIM_Try, /*On fail goto*//*Label 3303*/ GIMT_Encode4(152292), // Rule ID 24304 // |
| 53996 | /* 152235 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53997 | /* 152238 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53998 | /* 152242 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53999 | /* 152246 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54000 | /* 152250 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54001 | /* 152253 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54002 | /* 152257 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54003 | /* 152261 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54004 | /* 152265 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54005 | /* 152267 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54006 | /* 152274 */ // (fadd:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4f64] }:$src1) => (VADDPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54007 | /* 152274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rm), |
| 54008 | /* 152277 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54009 | /* 152279 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54010 | /* 152281 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54011 | /* 152285 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54012 | /* 152290 */ GIR_RootConstrainSelectedInstOperands, |
| 54013 | /* 152291 */ // GIR_Coverage, 24304, |
| 54014 | /* 152291 */ GIR_EraseRootFromParent_Done, |
| 54015 | /* 152292 */ // Label 3303: @152292 |
| 54016 | /* 152292 */ GIM_Try, /*On fail goto*//*Label 3304*/ GIMT_Encode4(152354), // Rule ID 2149 // |
| 54017 | /* 152297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 54018 | /* 152300 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54019 | /* 152304 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54020 | /* 152308 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54021 | /* 152312 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54022 | /* 152316 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54023 | /* 152319 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54024 | /* 152323 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54025 | /* 152327 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54026 | /* 152329 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54027 | /* 152336 */ // (fadd:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54028 | /* 152336 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDYrm), |
| 54029 | /* 152339 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54030 | /* 152341 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54031 | /* 152343 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54032 | /* 152347 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54033 | /* 152352 */ GIR_RootConstrainSelectedInstOperands, |
| 54034 | /* 152353 */ // GIR_Coverage, 2149, |
| 54035 | /* 152353 */ GIR_EraseRootFromParent_Done, |
| 54036 | /* 152354 */ // Label 3304: @152354 |
| 54037 | /* 152354 */ GIM_Try, /*On fail goto*//*Label 3305*/ GIMT_Encode4(152416), // Rule ID 6321 // |
| 54038 | /* 152359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 54039 | /* 152362 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54040 | /* 152366 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54041 | /* 152370 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54042 | /* 152374 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54043 | /* 152378 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54044 | /* 152381 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54045 | /* 152385 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54046 | /* 152389 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54047 | /* 152391 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54048 | /* 152398 */ // (fadd:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54049 | /* 152398 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rm), |
| 54050 | /* 152401 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54051 | /* 152403 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54052 | /* 152405 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54053 | /* 152409 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54054 | /* 152414 */ GIR_RootConstrainSelectedInstOperands, |
| 54055 | /* 152415 */ // GIR_Coverage, 6321, |
| 54056 | /* 152415 */ GIR_EraseRootFromParent_Done, |
| 54057 | /* 152416 */ // Label 3305: @152416 |
| 54058 | /* 152416 */ GIM_Try, /*On fail goto*//*Label 3306*/ GIMT_Encode4(152447), // Rule ID 2147 // |
| 54059 | /* 152421 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 54060 | /* 152424 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54061 | /* 152428 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54062 | /* 152432 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54063 | /* 152436 */ // (fadd:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VADDPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 54064 | /* 152436 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDYrr), |
| 54065 | /* 152441 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54066 | /* 152445 */ GIR_RootConstrainSelectedInstOperands, |
| 54067 | /* 152446 */ // GIR_Coverage, 2147, |
| 54068 | /* 152446 */ GIR_Done, |
| 54069 | /* 152447 */ // Label 3306: @152447 |
| 54070 | /* 152447 */ GIM_Try, /*On fail goto*//*Label 3307*/ GIMT_Encode4(152478), // Rule ID 6317 // |
| 54071 | /* 152452 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 54072 | /* 152455 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54073 | /* 152459 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54074 | /* 152463 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54075 | /* 152467 */ // (fadd:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VADDPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 54076 | /* 152467 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rr), |
| 54077 | /* 152472 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54078 | /* 152476 */ GIR_RootConstrainSelectedInstOperands, |
| 54079 | /* 152477 */ // GIR_Coverage, 6317, |
| 54080 | /* 152477 */ GIR_Done, |
| 54081 | /* 152478 */ // Label 3307: @152478 |
| 54082 | /* 152478 */ GIM_Reject, |
| 54083 | /* 152479 */ // Label 3301: @152479 |
| 54084 | /* 152479 */ GIM_Reject, |
| 54085 | /* 152480 */ // Label 3216: @152480 |
| 54086 | /* 152480 */ GIM_Try, /*On fail goto*//*Label 3308*/ GIMT_Encode4(152639), |
| 54087 | /* 152485 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 54088 | /* 152488 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 54089 | /* 152491 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 54090 | /* 152495 */ GIM_Try, /*On fail goto*//*Label 3309*/ GIMT_Encode4(152553), // Rule ID 24320 // |
| 54091 | /* 152500 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 54092 | /* 152503 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54093 | /* 152507 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54094 | /* 152511 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54095 | /* 152514 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54096 | /* 152518 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54097 | /* 152522 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 54098 | /* 152526 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54099 | /* 152528 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54100 | /* 152535 */ // (fadd:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src1) => (VADDPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54101 | /* 152535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rm), |
| 54102 | /* 152538 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54103 | /* 152540 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54104 | /* 152542 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54105 | /* 152546 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54106 | /* 152551 */ GIR_RootConstrainSelectedInstOperands, |
| 54107 | /* 152552 */ // GIR_Coverage, 24320, |
| 54108 | /* 152552 */ GIR_EraseRootFromParent_Done, |
| 54109 | /* 152553 */ // Label 3309: @152553 |
| 54110 | /* 152553 */ GIM_Try, /*On fail goto*//*Label 3310*/ GIMT_Encode4(152611), // Rule ID 6345 // |
| 54111 | /* 152558 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 54112 | /* 152561 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 54113 | /* 152565 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54114 | /* 152569 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54115 | /* 152573 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54116 | /* 152576 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54117 | /* 152580 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54118 | /* 152584 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54119 | /* 152586 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54120 | /* 152593 */ // (fadd:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54121 | /* 152593 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rm), |
| 54122 | /* 152596 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54123 | /* 152598 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54124 | /* 152600 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54125 | /* 152604 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54126 | /* 152609 */ GIR_RootConstrainSelectedInstOperands, |
| 54127 | /* 152610 */ // GIR_Coverage, 6345, |
| 54128 | /* 152610 */ GIR_EraseRootFromParent_Done, |
| 54129 | /* 152611 */ // Label 3310: @152611 |
| 54130 | /* 152611 */ GIM_Try, /*On fail goto*//*Label 3311*/ GIMT_Encode4(152638), // Rule ID 6341 // |
| 54131 | /* 152616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 54132 | /* 152619 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 54133 | /* 152623 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 54134 | /* 152627 */ // (fadd:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VADDPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 54135 | /* 152627 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rr), |
| 54136 | /* 152632 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54137 | /* 152636 */ GIR_RootConstrainSelectedInstOperands, |
| 54138 | /* 152637 */ // GIR_Coverage, 6341, |
| 54139 | /* 152637 */ GIR_Done, |
| 54140 | /* 152638 */ // Label 3311: @152638 |
| 54141 | /* 152638 */ GIM_Reject, |
| 54142 | /* 152639 */ // Label 3308: @152639 |
| 54143 | /* 152639 */ GIM_Reject, |
| 54144 | /* 152640 */ // Label 3217: @152640 |
| 54145 | /* 152640 */ GIM_Try, /*On fail goto*//*Label 3312*/ GIMT_Encode4(152962), |
| 54146 | /* 152645 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 54147 | /* 152648 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 54148 | /* 152651 */ GIM_Try, /*On fail goto*//*Label 3313*/ GIMT_Encode4(152713), // Rule ID 23374 // |
| 54149 | /* 152656 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 54150 | /* 152659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54151 | /* 152663 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54152 | /* 152667 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54153 | /* 152671 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54154 | /* 152674 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54155 | /* 152678 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54156 | /* 152682 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54157 | /* 152686 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54158 | /* 152688 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54159 | /* 152695 */ // (fadd:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1) => (VADDPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54160 | /* 152695 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSYrm), |
| 54161 | /* 152698 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54162 | /* 152700 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54163 | /* 152702 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54164 | /* 152706 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54165 | /* 152711 */ GIR_RootConstrainSelectedInstOperands, |
| 54166 | /* 152712 */ // GIR_Coverage, 23374, |
| 54167 | /* 152712 */ GIR_EraseRootFromParent_Done, |
| 54168 | /* 152713 */ // Label 3313: @152713 |
| 54169 | /* 152713 */ GIM_Try, /*On fail goto*//*Label 3314*/ GIMT_Encode4(152775), // Rule ID 24288 // |
| 54170 | /* 152718 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 54171 | /* 152721 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54172 | /* 152725 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54173 | /* 152729 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54174 | /* 152733 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54175 | /* 152736 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54176 | /* 152740 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54177 | /* 152744 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54178 | /* 152748 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54179 | /* 152750 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54180 | /* 152757 */ // (fadd:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8f32] }:$src1) => (VADDPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54181 | /* 152757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rm), |
| 54182 | /* 152760 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54183 | /* 152762 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54184 | /* 152764 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54185 | /* 152768 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54186 | /* 152773 */ GIR_RootConstrainSelectedInstOperands, |
| 54187 | /* 152774 */ // GIR_Coverage, 24288, |
| 54188 | /* 152774 */ GIR_EraseRootFromParent_Done, |
| 54189 | /* 152775 */ // Label 3314: @152775 |
| 54190 | /* 152775 */ GIM_Try, /*On fail goto*//*Label 3315*/ GIMT_Encode4(152837), // Rule ID 2145 // |
| 54191 | /* 152780 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 54192 | /* 152783 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54193 | /* 152787 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54194 | /* 152791 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54195 | /* 152795 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54196 | /* 152799 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54197 | /* 152802 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54198 | /* 152806 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54199 | /* 152810 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54200 | /* 152812 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54201 | /* 152819 */ // (fadd:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54202 | /* 152819 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSYrm), |
| 54203 | /* 152822 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54204 | /* 152824 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54205 | /* 152826 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54206 | /* 152830 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54207 | /* 152835 */ GIR_RootConstrainSelectedInstOperands, |
| 54208 | /* 152836 */ // GIR_Coverage, 2145, |
| 54209 | /* 152836 */ GIR_EraseRootFromParent_Done, |
| 54210 | /* 152837 */ // Label 3315: @152837 |
| 54211 | /* 152837 */ GIM_Try, /*On fail goto*//*Label 3316*/ GIMT_Encode4(152899), // Rule ID 6297 // |
| 54212 | /* 152842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 54213 | /* 152845 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54214 | /* 152849 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54215 | /* 152853 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54216 | /* 152857 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54217 | /* 152861 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54218 | /* 152864 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54219 | /* 152868 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54220 | /* 152872 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54221 | /* 152874 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54222 | /* 152881 */ // (fadd:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54223 | /* 152881 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rm), |
| 54224 | /* 152884 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54225 | /* 152886 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54226 | /* 152888 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54227 | /* 152892 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54228 | /* 152897 */ GIR_RootConstrainSelectedInstOperands, |
| 54229 | /* 152898 */ // GIR_Coverage, 6297, |
| 54230 | /* 152898 */ GIR_EraseRootFromParent_Done, |
| 54231 | /* 152899 */ // Label 3316: @152899 |
| 54232 | /* 152899 */ GIM_Try, /*On fail goto*//*Label 3317*/ GIMT_Encode4(152930), // Rule ID 2143 // |
| 54233 | /* 152904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 54234 | /* 152907 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54235 | /* 152911 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54236 | /* 152915 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 54237 | /* 152919 */ // (fadd:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VADDPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 54238 | /* 152919 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSYrr), |
| 54239 | /* 152924 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54240 | /* 152928 */ GIR_RootConstrainSelectedInstOperands, |
| 54241 | /* 152929 */ // GIR_Coverage, 2143, |
| 54242 | /* 152929 */ GIR_Done, |
| 54243 | /* 152930 */ // Label 3317: @152930 |
| 54244 | /* 152930 */ GIM_Try, /*On fail goto*//*Label 3318*/ GIMT_Encode4(152961), // Rule ID 6293 // |
| 54245 | /* 152935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 54246 | /* 152938 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54247 | /* 152942 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54248 | /* 152946 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54249 | /* 152950 */ // (fadd:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VADDPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 54250 | /* 152950 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rr), |
| 54251 | /* 152955 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54252 | /* 152959 */ GIR_RootConstrainSelectedInstOperands, |
| 54253 | /* 152960 */ // GIR_Coverage, 6293, |
| 54254 | /* 152960 */ GIR_Done, |
| 54255 | /* 152961 */ // Label 3318: @152961 |
| 54256 | /* 152961 */ GIM_Reject, |
| 54257 | /* 152962 */ // Label 3312: @152962 |
| 54258 | /* 152962 */ GIM_Reject, |
| 54259 | /* 152963 */ // Label 3218: @152963 |
| 54260 | /* 152963 */ GIM_Try, /*On fail goto*//*Label 3319*/ GIMT_Encode4(153122), |
| 54261 | /* 152968 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 54262 | /* 152971 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 54263 | /* 152974 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54264 | /* 152978 */ GIM_Try, /*On fail goto*//*Label 3320*/ GIMT_Encode4(153036), // Rule ID 24272 // |
| 54265 | /* 152983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54266 | /* 152986 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54267 | /* 152990 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54268 | /* 152994 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54269 | /* 152997 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54270 | /* 153001 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54271 | /* 153005 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54272 | /* 153009 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54273 | /* 153011 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54274 | /* 153018 */ // (fadd:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8f64] }:$src1) => (VADDPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54275 | /* 153018 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZrm), |
| 54276 | /* 153021 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54277 | /* 153023 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54278 | /* 153025 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54279 | /* 153029 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54280 | /* 153034 */ GIR_RootConstrainSelectedInstOperands, |
| 54281 | /* 153035 */ // GIR_Coverage, 24272, |
| 54282 | /* 153035 */ GIR_EraseRootFromParent_Done, |
| 54283 | /* 153036 */ // Label 3320: @153036 |
| 54284 | /* 153036 */ GIM_Try, /*On fail goto*//*Label 3321*/ GIMT_Encode4(153094), // Rule ID 6273 // |
| 54285 | /* 153041 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54286 | /* 153044 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54287 | /* 153048 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54288 | /* 153052 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54289 | /* 153056 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54290 | /* 153059 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54291 | /* 153063 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54292 | /* 153067 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54293 | /* 153069 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54294 | /* 153076 */ // (fadd:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54295 | /* 153076 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZrm), |
| 54296 | /* 153079 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54297 | /* 153081 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54298 | /* 153083 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54299 | /* 153087 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54300 | /* 153092 */ GIR_RootConstrainSelectedInstOperands, |
| 54301 | /* 153093 */ // GIR_Coverage, 6273, |
| 54302 | /* 153093 */ GIR_EraseRootFromParent_Done, |
| 54303 | /* 153094 */ // Label 3321: @153094 |
| 54304 | /* 153094 */ GIM_Try, /*On fail goto*//*Label 3322*/ GIMT_Encode4(153121), // Rule ID 6269 // |
| 54305 | /* 153099 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54306 | /* 153102 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54307 | /* 153106 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54308 | /* 153110 */ // (fadd:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VADDPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 54309 | /* 153110 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZrr), |
| 54310 | /* 153115 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54311 | /* 153119 */ GIR_RootConstrainSelectedInstOperands, |
| 54312 | /* 153120 */ // GIR_Coverage, 6269, |
| 54313 | /* 153120 */ GIR_Done, |
| 54314 | /* 153121 */ // Label 3322: @153121 |
| 54315 | /* 153121 */ GIM_Reject, |
| 54316 | /* 153122 */ // Label 3319: @153122 |
| 54317 | /* 153122 */ GIM_Reject, |
| 54318 | /* 153123 */ // Label 3219: @153123 |
| 54319 | /* 153123 */ GIM_Try, /*On fail goto*//*Label 3323*/ GIMT_Encode4(153282), |
| 54320 | /* 153128 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 54321 | /* 153131 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 54322 | /* 153134 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54323 | /* 153138 */ GIM_Try, /*On fail goto*//*Label 3324*/ GIMT_Encode4(153196), // Rule ID 24328 // |
| 54324 | /* 153143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 54325 | /* 153146 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54326 | /* 153150 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54327 | /* 153154 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54328 | /* 153157 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54329 | /* 153161 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54330 | /* 153165 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54331 | /* 153169 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54332 | /* 153171 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54333 | /* 153178 */ // (fadd:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src1) => (VADDPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54334 | /* 153178 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rm), |
| 54335 | /* 153181 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54336 | /* 153183 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54337 | /* 153185 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54338 | /* 153189 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54339 | /* 153194 */ GIR_RootConstrainSelectedInstOperands, |
| 54340 | /* 153195 */ // GIR_Coverage, 24328, |
| 54341 | /* 153195 */ GIR_EraseRootFromParent_Done, |
| 54342 | /* 153196 */ // Label 3324: @153196 |
| 54343 | /* 153196 */ GIM_Try, /*On fail goto*//*Label 3325*/ GIMT_Encode4(153254), // Rule ID 6357 // |
| 54344 | /* 153201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 54345 | /* 153204 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54346 | /* 153208 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54347 | /* 153212 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54348 | /* 153216 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54349 | /* 153219 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54350 | /* 153223 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54351 | /* 153227 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54352 | /* 153229 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54353 | /* 153236 */ // (fadd:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54354 | /* 153236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rm), |
| 54355 | /* 153239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54356 | /* 153241 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54357 | /* 153243 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54358 | /* 153247 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54359 | /* 153252 */ GIR_RootConstrainSelectedInstOperands, |
| 54360 | /* 153253 */ // GIR_Coverage, 6357, |
| 54361 | /* 153253 */ GIR_EraseRootFromParent_Done, |
| 54362 | /* 153254 */ // Label 3325: @153254 |
| 54363 | /* 153254 */ GIM_Try, /*On fail goto*//*Label 3326*/ GIMT_Encode4(153281), // Rule ID 6353 // |
| 54364 | /* 153259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 54365 | /* 153262 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54366 | /* 153266 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 54367 | /* 153270 */ // (fadd:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VADDPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 54368 | /* 153270 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rr), |
| 54369 | /* 153275 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54370 | /* 153279 */ GIR_RootConstrainSelectedInstOperands, |
| 54371 | /* 153280 */ // GIR_Coverage, 6353, |
| 54372 | /* 153280 */ GIR_Done, |
| 54373 | /* 153281 */ // Label 3326: @153281 |
| 54374 | /* 153281 */ GIM_Reject, |
| 54375 | /* 153282 */ // Label 3323: @153282 |
| 54376 | /* 153282 */ GIM_Reject, |
| 54377 | /* 153283 */ // Label 3220: @153283 |
| 54378 | /* 153283 */ GIM_Try, /*On fail goto*//*Label 3327*/ GIMT_Encode4(153442), |
| 54379 | /* 153288 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 54380 | /* 153291 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 54381 | /* 153294 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54382 | /* 153298 */ GIM_Try, /*On fail goto*//*Label 3328*/ GIMT_Encode4(153356), // Rule ID 24264 // |
| 54383 | /* 153303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54384 | /* 153306 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54385 | /* 153310 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54386 | /* 153314 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54387 | /* 153317 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54388 | /* 153321 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54389 | /* 153325 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54390 | /* 153329 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54391 | /* 153331 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54392 | /* 153338 */ // (fadd:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16f32] }:$src1) => (VADDPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54393 | /* 153338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZrm), |
| 54394 | /* 153341 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54395 | /* 153343 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54396 | /* 153345 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54397 | /* 153349 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54398 | /* 153354 */ GIR_RootConstrainSelectedInstOperands, |
| 54399 | /* 153355 */ // GIR_Coverage, 24264, |
| 54400 | /* 153355 */ GIR_EraseRootFromParent_Done, |
| 54401 | /* 153356 */ // Label 3328: @153356 |
| 54402 | /* 153356 */ GIM_Try, /*On fail goto*//*Label 3329*/ GIMT_Encode4(153414), // Rule ID 6261 // |
| 54403 | /* 153361 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54404 | /* 153364 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54405 | /* 153368 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54406 | /* 153372 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54407 | /* 153376 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54408 | /* 153379 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54409 | /* 153383 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54410 | /* 153387 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54411 | /* 153389 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54412 | /* 153396 */ // (fadd:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54413 | /* 153396 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZrm), |
| 54414 | /* 153399 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54415 | /* 153401 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54416 | /* 153403 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54417 | /* 153407 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54418 | /* 153412 */ GIR_RootConstrainSelectedInstOperands, |
| 54419 | /* 153413 */ // GIR_Coverage, 6261, |
| 54420 | /* 153413 */ GIR_EraseRootFromParent_Done, |
| 54421 | /* 153414 */ // Label 3329: @153414 |
| 54422 | /* 153414 */ GIM_Try, /*On fail goto*//*Label 3330*/ GIMT_Encode4(153441), // Rule ID 6257 // |
| 54423 | /* 153419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54424 | /* 153422 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54425 | /* 153426 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54426 | /* 153430 */ // (fadd:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VADDPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 54427 | /* 153430 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZrr), |
| 54428 | /* 153435 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54429 | /* 153439 */ GIR_RootConstrainSelectedInstOperands, |
| 54430 | /* 153440 */ // GIR_Coverage, 6257, |
| 54431 | /* 153440 */ GIR_Done, |
| 54432 | /* 153441 */ // Label 3330: @153441 |
| 54433 | /* 153441 */ GIM_Reject, |
| 54434 | /* 153442 */ // Label 3327: @153442 |
| 54435 | /* 153442 */ GIM_Reject, |
| 54436 | /* 153443 */ // Label 3221: @153443 |
| 54437 | /* 153443 */ GIM_Try, /*On fail goto*//*Label 3331*/ GIMT_Encode4(153602), |
| 54438 | /* 153448 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 54439 | /* 153451 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 54440 | /* 153454 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54441 | /* 153458 */ GIM_Try, /*On fail goto*//*Label 3332*/ GIMT_Encode4(153516), // Rule ID 24312 // |
| 54442 | /* 153463 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 54443 | /* 153466 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54444 | /* 153470 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54445 | /* 153474 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54446 | /* 153477 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54447 | /* 153481 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54448 | /* 153485 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54449 | /* 153489 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54450 | /* 153491 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54451 | /* 153498 */ // (fadd:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src1) => (VADDPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54452 | /* 153498 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZrm), |
| 54453 | /* 153501 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54454 | /* 153503 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54455 | /* 153505 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54456 | /* 153509 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54457 | /* 153514 */ GIR_RootConstrainSelectedInstOperands, |
| 54458 | /* 153515 */ // GIR_Coverage, 24312, |
| 54459 | /* 153515 */ GIR_EraseRootFromParent_Done, |
| 54460 | /* 153516 */ // Label 3332: @153516 |
| 54461 | /* 153516 */ GIM_Try, /*On fail goto*//*Label 3333*/ GIMT_Encode4(153574), // Rule ID 6333 // |
| 54462 | /* 153521 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 54463 | /* 153524 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54464 | /* 153528 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54465 | /* 153532 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54466 | /* 153536 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54467 | /* 153539 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54468 | /* 153543 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54469 | /* 153547 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54470 | /* 153549 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54471 | /* 153556 */ // (fadd:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54472 | /* 153556 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZrm), |
| 54473 | /* 153559 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54474 | /* 153561 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54475 | /* 153563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54476 | /* 153567 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54477 | /* 153572 */ GIR_RootConstrainSelectedInstOperands, |
| 54478 | /* 153573 */ // GIR_Coverage, 6333, |
| 54479 | /* 153573 */ GIR_EraseRootFromParent_Done, |
| 54480 | /* 153574 */ // Label 3333: @153574 |
| 54481 | /* 153574 */ GIM_Try, /*On fail goto*//*Label 3334*/ GIMT_Encode4(153601), // Rule ID 6329 // |
| 54482 | /* 153579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 54483 | /* 153582 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54484 | /* 153586 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54485 | /* 153590 */ // (fadd:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VADDPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 54486 | /* 153590 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZrr), |
| 54487 | /* 153595 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54488 | /* 153599 */ GIR_RootConstrainSelectedInstOperands, |
| 54489 | /* 153600 */ // GIR_Coverage, 6329, |
| 54490 | /* 153600 */ GIR_Done, |
| 54491 | /* 153601 */ // Label 3334: @153601 |
| 54492 | /* 153601 */ GIM_Reject, |
| 54493 | /* 153602 */ // Label 3331: @153602 |
| 54494 | /* 153602 */ GIM_Reject, |
| 54495 | /* 153603 */ // Label 3222: @153603 |
| 54496 | /* 153603 */ GIM_Reject, |
| 54497 | /* 153604 */ // Label 42: @153604 |
| 54498 | /* 153604 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3348*/ GIMT_Encode4(157785), |
| 54499 | /* 153615 */ /*GILLT_s16*//*Label 3335*/ GIMT_Encode4(153699), |
| 54500 | /* 153619 */ /*GILLT_s32*//*Label 3336*/ GIMT_Encode4(153797), |
| 54501 | /* 153623 */ /*GILLT_s64*//*Label 3337*/ GIMT_Encode4(154762), |
| 54502 | /* 153627 */ /*GILLT_s80*//*Label 3338*/ GIMT_Encode4(155871), GIMT_Encode4(0), GIMT_Encode4(0), |
| 54503 | /* 153639 */ /*GILLT_v2s64*//*Label 3339*/ GIMT_Encode4(156437), GIMT_Encode4(0), |
| 54504 | /* 153647 */ /*GILLT_v4s32*//*Label 3340*/ GIMT_Encode4(156667), |
| 54505 | /* 153651 */ /*GILLT_v4s64*//*Label 3341*/ GIMT_Encode4(156897), GIMT_Encode4(0), |
| 54506 | /* 153659 */ /*GILLT_v8s16*//*Label 3342*/ GIMT_Encode4(157096), |
| 54507 | /* 153663 */ /*GILLT_v8s32*//*Label 3343*/ GIMT_Encode4(157194), |
| 54508 | /* 153667 */ /*GILLT_v8s64*//*Label 3344*/ GIMT_Encode4(157393), GIMT_Encode4(0), GIMT_Encode4(0), |
| 54509 | /* 153679 */ /*GILLT_v16s16*//*Label 3345*/ GIMT_Encode4(157491), |
| 54510 | /* 153683 */ /*GILLT_v16s32*//*Label 3346*/ GIMT_Encode4(157589), GIMT_Encode4(0), GIMT_Encode4(0), |
| 54511 | /* 153695 */ /*GILLT_v32s16*//*Label 3347*/ GIMT_Encode4(157687), |
| 54512 | /* 153699 */ // Label 3335: @153699 |
| 54513 | /* 153699 */ GIM_Try, /*On fail goto*//*Label 3349*/ GIMT_Encode4(153796), |
| 54514 | /* 153704 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 54515 | /* 153707 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 54516 | /* 153710 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 54517 | /* 153714 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 54518 | /* 153718 */ GIM_Try, /*On fail goto*//*Label 3350*/ GIMT_Encode4(153772), // Rule ID 6069 // |
| 54519 | /* 153723 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 54520 | /* 153726 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54521 | /* 153730 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54522 | /* 153734 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54523 | /* 153737 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54524 | /* 153741 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54525 | /* 153745 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54526 | /* 153747 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54527 | /* 153754 */ // (fsub:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54528 | /* 153754 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSHZrm), |
| 54529 | /* 153757 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54530 | /* 153759 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54531 | /* 153761 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54532 | /* 153765 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54533 | /* 153770 */ GIR_RootConstrainSelectedInstOperands, |
| 54534 | /* 153771 */ // GIR_Coverage, 6069, |
| 54535 | /* 153771 */ GIR_EraseRootFromParent_Done, |
| 54536 | /* 153772 */ // Label 3350: @153772 |
| 54537 | /* 153772 */ GIM_Try, /*On fail goto*//*Label 3351*/ GIMT_Encode4(153795), // Rule ID 6067 // |
| 54538 | /* 153777 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 54539 | /* 153780 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 54540 | /* 153784 */ // (fsub:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VSUBSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 54541 | /* 153784 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSHZrr), |
| 54542 | /* 153789 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54543 | /* 153793 */ GIR_RootConstrainSelectedInstOperands, |
| 54544 | /* 153794 */ // GIR_Coverage, 6067, |
| 54545 | /* 153794 */ GIR_Done, |
| 54546 | /* 153795 */ // Label 3351: @153795 |
| 54547 | /* 153795 */ GIM_Reject, |
| 54548 | /* 153796 */ // Label 3349: @153796 |
| 54549 | /* 153796 */ GIM_Reject, |
| 54550 | /* 153797 */ // Label 3336: @153797 |
| 54551 | /* 153797 */ GIM_Try, /*On fail goto*//*Label 3352*/ GIMT_Encode4(154761), |
| 54552 | /* 153802 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 54553 | /* 153805 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 54554 | /* 153808 */ GIM_Try, /*On fail goto*//*Label 3353*/ GIMT_Encode4(153890), // Rule ID 22473 // |
| 54555 | /* 153813 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 54556 | /* 153816 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54557 | /* 153820 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54558 | /* 153824 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54559 | /* 153828 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54560 | /* 153832 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 54561 | /* 153836 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54562 | /* 153840 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54563 | /* 153844 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54564 | /* 153847 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54565 | /* 153851 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54566 | /* 153858 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54567 | /* 153862 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54568 | /* 153864 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54569 | /* 153871 */ // (fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (SUBSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54570 | /* 153871 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSSrm), |
| 54571 | /* 153874 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54572 | /* 153876 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54573 | /* 153878 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54574 | /* 153882 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54575 | /* 153888 */ GIR_RootConstrainSelectedInstOperands, |
| 54576 | /* 153889 */ // GIR_Coverage, 22473, |
| 54577 | /* 153889 */ GIR_EraseRootFromParent_Done, |
| 54578 | /* 153890 */ // Label 3353: @153890 |
| 54579 | /* 153890 */ GIM_Try, /*On fail goto*//*Label 3354*/ GIMT_Encode4(153972), // Rule ID 22474 // |
| 54580 | /* 153895 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 54581 | /* 153898 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54582 | /* 153902 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54583 | /* 153906 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54584 | /* 153910 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54585 | /* 153914 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 54586 | /* 153918 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54587 | /* 153922 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54588 | /* 153926 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54589 | /* 153929 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54590 | /* 153933 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54591 | /* 153940 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54592 | /* 153944 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54593 | /* 153946 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54594 | /* 153953 */ // (fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (VSUBSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54595 | /* 153953 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSrm), |
| 54596 | /* 153956 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54597 | /* 153958 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54598 | /* 153960 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54599 | /* 153964 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54600 | /* 153970 */ GIR_RootConstrainSelectedInstOperands, |
| 54601 | /* 153971 */ // GIR_Coverage, 22474, |
| 54602 | /* 153971 */ GIR_EraseRootFromParent_Done, |
| 54603 | /* 153972 */ // Label 3354: @153972 |
| 54604 | /* 153972 */ GIM_Try, /*On fail goto*//*Label 3355*/ GIMT_Encode4(154054), // Rule ID 22475 // |
| 54605 | /* 153977 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54606 | /* 153980 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54607 | /* 153984 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54608 | /* 153988 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54609 | /* 153992 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54610 | /* 153996 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 54611 | /* 154000 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54612 | /* 154004 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54613 | /* 154008 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54614 | /* 154011 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54615 | /* 154015 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54616 | /* 154022 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54617 | /* 154026 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54618 | /* 154028 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54619 | /* 154035 */ // (fsub:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (VSUBSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54620 | /* 154035 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSZrm), |
| 54621 | /* 154038 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54622 | /* 154040 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54623 | /* 154042 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54624 | /* 154046 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54625 | /* 154052 */ GIR_RootConstrainSelectedInstOperands, |
| 54626 | /* 154053 */ // GIR_Coverage, 22475, |
| 54627 | /* 154053 */ GIR_EraseRootFromParent_Done, |
| 54628 | /* 154054 */ // Label 3355: @154054 |
| 54629 | /* 154054 */ GIM_Try, /*On fail goto*//*Label 3356*/ GIMT_Encode4(154119), // Rule ID 965 // |
| 54630 | /* 154059 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54631 | /* 154062 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54632 | /* 154066 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54633 | /* 154070 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54634 | /* 154074 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 54635 | /* 154081 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54636 | /* 154085 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54637 | /* 154089 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54638 | /* 154091 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54639 | /* 154098 */ // (fsub:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (SUBR_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54640 | /* 154098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m32), |
| 54641 | /* 154101 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54642 | /* 154103 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54643 | /* 154105 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54644 | /* 154109 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54645 | /* 154112 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54646 | /* 154117 */ GIR_RootConstrainSelectedInstOperands, |
| 54647 | /* 154118 */ // GIR_Coverage, 965, |
| 54648 | /* 154118 */ GIR_EraseRootFromParent_Done, |
| 54649 | /* 154119 */ // Label 3356: @154119 |
| 54650 | /* 154119 */ GIM_Try, /*On fail goto*//*Label 3357*/ GIMT_Encode4(154184), // Rule ID 967 // |
| 54651 | /* 154124 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54652 | /* 154127 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54653 | /* 154131 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54654 | /* 154135 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54655 | /* 154139 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54656 | /* 154146 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54657 | /* 154150 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54658 | /* 154154 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54659 | /* 154156 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54660 | /* 154163 */ // (fsub:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (SUBR_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54661 | /* 154163 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m32), |
| 54662 | /* 154166 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54663 | /* 154168 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54664 | /* 154170 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54665 | /* 154174 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54666 | /* 154177 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54667 | /* 154182 */ GIR_RootConstrainSelectedInstOperands, |
| 54668 | /* 154183 */ // GIR_Coverage, 967, |
| 54669 | /* 154183 */ GIR_EraseRootFromParent_Done, |
| 54670 | /* 154184 */ // Label 3357: @154184 |
| 54671 | /* 154184 */ GIM_Try, /*On fail goto*//*Label 3358*/ GIMT_Encode4(154249), // Rule ID 955 // |
| 54672 | /* 154189 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54673 | /* 154192 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54674 | /* 154196 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54675 | /* 154200 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54676 | /* 154204 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54677 | /* 154207 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54678 | /* 154211 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54679 | /* 154215 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54680 | /* 154219 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54681 | /* 154221 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54682 | /* 154228 */ // (fsub:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP32:{ *:[f32] }:$src1) => (SUBR_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54683 | /* 154228 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp32m), |
| 54684 | /* 154231 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54685 | /* 154233 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54686 | /* 154235 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54687 | /* 154239 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54688 | /* 154242 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54689 | /* 154247 */ GIR_RootConstrainSelectedInstOperands, |
| 54690 | /* 154248 */ // GIR_Coverage, 955, |
| 54691 | /* 154248 */ GIR_EraseRootFromParent_Done, |
| 54692 | /* 154249 */ // Label 3358: @154249 |
| 54693 | /* 154249 */ GIM_Try, /*On fail goto*//*Label 3359*/ GIMT_Encode4(154314), // Rule ID 943 // |
| 54694 | /* 154254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54695 | /* 154257 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54696 | /* 154261 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54697 | /* 154265 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54698 | /* 154269 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54699 | /* 154273 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 54700 | /* 154280 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54701 | /* 154284 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54702 | /* 154286 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54703 | /* 154293 */ // (fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54704 | /* 154293 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m32), |
| 54705 | /* 154296 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54706 | /* 154298 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54707 | /* 154300 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54708 | /* 154304 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54709 | /* 154307 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54710 | /* 154312 */ GIR_RootConstrainSelectedInstOperands, |
| 54711 | /* 154313 */ // GIR_Coverage, 943, |
| 54712 | /* 154313 */ GIR_EraseRootFromParent_Done, |
| 54713 | /* 154314 */ // Label 3359: @154314 |
| 54714 | /* 154314 */ GIM_Try, /*On fail goto*//*Label 3360*/ GIMT_Encode4(154379), // Rule ID 945 // |
| 54715 | /* 154319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54716 | /* 154322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54717 | /* 154326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54718 | /* 154330 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54719 | /* 154334 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54720 | /* 154338 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54721 | /* 154345 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54722 | /* 154349 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54723 | /* 154351 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54724 | /* 154358 */ // (fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54725 | /* 154358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m32), |
| 54726 | /* 154361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54727 | /* 154363 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54728 | /* 154365 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54729 | /* 154369 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54730 | /* 154372 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54731 | /* 154377 */ GIR_RootConstrainSelectedInstOperands, |
| 54732 | /* 154378 */ // GIR_Coverage, 945, |
| 54733 | /* 154378 */ GIR_EraseRootFromParent_Done, |
| 54734 | /* 154379 */ // Label 3360: @154379 |
| 54735 | /* 154379 */ GIM_Try, /*On fail goto*//*Label 3361*/ GIMT_Encode4(154444), // Rule ID 933 // |
| 54736 | /* 154384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54737 | /* 154387 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54738 | /* 154391 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54739 | /* 154395 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54740 | /* 154399 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54741 | /* 154403 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54742 | /* 154406 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54743 | /* 154410 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54744 | /* 154414 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54745 | /* 154416 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54746 | /* 154423 */ // (fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUB_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54747 | /* 154423 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp32m), |
| 54748 | /* 154426 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54749 | /* 154428 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54750 | /* 154430 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54751 | /* 154434 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54752 | /* 154437 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54753 | /* 154442 */ GIR_RootConstrainSelectedInstOperands, |
| 54754 | /* 154443 */ // GIR_Coverage, 933, |
| 54755 | /* 154443 */ GIR_EraseRootFromParent_Done, |
| 54756 | /* 154444 */ // Label 3361: @154444 |
| 54757 | /* 154444 */ GIM_Try, /*On fail goto*//*Label 3362*/ GIMT_Encode4(154506), // Rule ID 2241 // |
| 54758 | /* 154449 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 54759 | /* 154452 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54760 | /* 154456 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54761 | /* 154460 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54762 | /* 154464 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54763 | /* 154468 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54764 | /* 154471 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54765 | /* 154475 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54766 | /* 154479 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54767 | /* 154481 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54768 | /* 154488 */ // (fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54769 | /* 154488 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSrm), |
| 54770 | /* 154491 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54771 | /* 154493 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54772 | /* 154495 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54773 | /* 154499 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54774 | /* 154504 */ GIR_RootConstrainSelectedInstOperands, |
| 54775 | /* 154505 */ // GIR_Coverage, 2241, |
| 54776 | /* 154505 */ GIR_EraseRootFromParent_Done, |
| 54777 | /* 154506 */ // Label 3362: @154506 |
| 54778 | /* 154506 */ GIM_Try, /*On fail goto*//*Label 3363*/ GIMT_Encode4(154568), // Rule ID 2249 // |
| 54779 | /* 154511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 54780 | /* 154514 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54781 | /* 154518 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54782 | /* 154522 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54783 | /* 154526 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54784 | /* 154530 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54785 | /* 154533 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54786 | /* 154537 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54787 | /* 154541 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54788 | /* 154543 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54789 | /* 154550 */ // (fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUBSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54790 | /* 154550 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSSrm), |
| 54791 | /* 154553 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54792 | /* 154555 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54793 | /* 154557 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54794 | /* 154561 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54795 | /* 154566 */ GIR_RootConstrainSelectedInstOperands, |
| 54796 | /* 154567 */ // GIR_Coverage, 2249, |
| 54797 | /* 154567 */ GIR_EraseRootFromParent_Done, |
| 54798 | /* 154568 */ // Label 3363: @154568 |
| 54799 | /* 154568 */ GIM_Try, /*On fail goto*//*Label 3364*/ GIMT_Encode4(154630), // Rule ID 6031 // |
| 54800 | /* 154573 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54801 | /* 154576 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54802 | /* 154580 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54803 | /* 154584 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54804 | /* 154588 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54805 | /* 154592 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54806 | /* 154595 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54807 | /* 154599 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54808 | /* 154603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54809 | /* 154605 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54810 | /* 154612 */ // (fsub:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54811 | /* 154612 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSZrm), |
| 54812 | /* 154615 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54813 | /* 154617 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54814 | /* 154619 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54815 | /* 154623 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54816 | /* 154628 */ GIR_RootConstrainSelectedInstOperands, |
| 54817 | /* 154629 */ // GIR_Coverage, 6031, |
| 54818 | /* 154629 */ GIR_EraseRootFromParent_Done, |
| 54819 | /* 154630 */ // Label 3364: @154630 |
| 54820 | /* 154630 */ GIM_Try, /*On fail goto*//*Label 3365*/ GIMT_Encode4(154667), // Rule ID 893 // |
| 54821 | /* 154635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54822 | /* 154638 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54823 | /* 154642 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54824 | /* 154646 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54825 | /* 154650 */ // (fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (SUB_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 54826 | /* 154650 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp32), |
| 54827 | /* 154655 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 54828 | /* 154661 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 54829 | /* 154665 */ GIR_RootConstrainSelectedInstOperands, |
| 54830 | /* 154666 */ // GIR_Coverage, 893, |
| 54831 | /* 154666 */ GIR_Done, |
| 54832 | /* 154667 */ // Label 3365: @154667 |
| 54833 | /* 154667 */ GIM_Try, /*On fail goto*//*Label 3366*/ GIMT_Encode4(154698), // Rule ID 2239 // |
| 54834 | /* 154672 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 54835 | /* 154675 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54836 | /* 154679 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54837 | /* 154683 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54838 | /* 154687 */ // (fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VSUBSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 54839 | /* 154687 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSSrr), |
| 54840 | /* 154692 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54841 | /* 154696 */ GIR_RootConstrainSelectedInstOperands, |
| 54842 | /* 154697 */ // GIR_Coverage, 2239, |
| 54843 | /* 154697 */ GIR_Done, |
| 54844 | /* 154698 */ // Label 3366: @154698 |
| 54845 | /* 154698 */ GIM_Try, /*On fail goto*//*Label 3367*/ GIMT_Encode4(154729), // Rule ID 2247 // |
| 54846 | /* 154703 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 54847 | /* 154706 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54848 | /* 154710 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54849 | /* 154714 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54850 | /* 154718 */ // (fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (SUBSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 54851 | /* 154718 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBSSrr), |
| 54852 | /* 154723 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54853 | /* 154727 */ GIR_RootConstrainSelectedInstOperands, |
| 54854 | /* 154728 */ // GIR_Coverage, 2247, |
| 54855 | /* 154728 */ GIR_Done, |
| 54856 | /* 154729 */ // Label 3367: @154729 |
| 54857 | /* 154729 */ GIM_Try, /*On fail goto*//*Label 3368*/ GIMT_Encode4(154760), // Rule ID 6029 // |
| 54858 | /* 154734 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54859 | /* 154737 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54860 | /* 154741 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54861 | /* 154745 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54862 | /* 154749 */ // (fsub:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VSUBSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 54863 | /* 154749 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSSZrr), |
| 54864 | /* 154754 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54865 | /* 154758 */ GIR_RootConstrainSelectedInstOperands, |
| 54866 | /* 154759 */ // GIR_Coverage, 6029, |
| 54867 | /* 154759 */ GIR_Done, |
| 54868 | /* 154760 */ // Label 3368: @154760 |
| 54869 | /* 154760 */ GIM_Reject, |
| 54870 | /* 154761 */ // Label 3352: @154761 |
| 54871 | /* 154761 */ GIM_Reject, |
| 54872 | /* 154762 */ // Label 3337: @154762 |
| 54873 | /* 154762 */ GIM_Try, /*On fail goto*//*Label 3369*/ GIMT_Encode4(155870), |
| 54874 | /* 154767 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 54875 | /* 154770 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 54876 | /* 154773 */ GIM_Try, /*On fail goto*//*Label 3370*/ GIMT_Encode4(154855), // Rule ID 22476 // |
| 54877 | /* 154778 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 54878 | /* 154781 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54879 | /* 154785 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54880 | /* 154789 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54881 | /* 154793 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54882 | /* 154797 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 54883 | /* 154801 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54884 | /* 154805 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54885 | /* 154809 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54886 | /* 154812 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54887 | /* 154816 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 54888 | /* 154823 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54889 | /* 154827 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54890 | /* 154829 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54891 | /* 154836 */ // (fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (SUBSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54892 | /* 154836 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSDrm), |
| 54893 | /* 154839 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54894 | /* 154841 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54895 | /* 154843 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54896 | /* 154847 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54897 | /* 154853 */ GIR_RootConstrainSelectedInstOperands, |
| 54898 | /* 154854 */ // GIR_Coverage, 22476, |
| 54899 | /* 154854 */ GIR_EraseRootFromParent_Done, |
| 54900 | /* 154855 */ // Label 3370: @154855 |
| 54901 | /* 154855 */ GIM_Try, /*On fail goto*//*Label 3371*/ GIMT_Encode4(154937), // Rule ID 22477 // |
| 54902 | /* 154860 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 54903 | /* 154863 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54904 | /* 154867 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54905 | /* 154871 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54906 | /* 154875 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54907 | /* 154879 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 54908 | /* 154883 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54909 | /* 154887 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54910 | /* 154891 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54911 | /* 154894 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54912 | /* 154898 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 54913 | /* 154905 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54914 | /* 154909 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54915 | /* 154911 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54916 | /* 154918 */ // (fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (VSUBSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54917 | /* 154918 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDrm), |
| 54918 | /* 154921 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54919 | /* 154923 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54920 | /* 154925 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54921 | /* 154929 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54922 | /* 154935 */ GIR_RootConstrainSelectedInstOperands, |
| 54923 | /* 154936 */ // GIR_Coverage, 22477, |
| 54924 | /* 154936 */ GIR_EraseRootFromParent_Done, |
| 54925 | /* 154937 */ // Label 3371: @154937 |
| 54926 | /* 154937 */ GIM_Try, /*On fail goto*//*Label 3372*/ GIMT_Encode4(155019), // Rule ID 22478 // |
| 54927 | /* 154942 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54928 | /* 154945 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 54929 | /* 154949 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 54930 | /* 154953 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54931 | /* 154957 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54932 | /* 154961 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 54933 | /* 154965 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54934 | /* 154969 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54935 | /* 154973 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54936 | /* 154976 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54937 | /* 154980 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 54938 | /* 154987 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54939 | /* 154991 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54940 | /* 154993 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54941 | /* 155000 */ // (fsub:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (VSUBSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54942 | /* 155000 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDZrm), |
| 54943 | /* 155003 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54944 | /* 155005 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54945 | /* 155007 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54946 | /* 155011 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54947 | /* 155017 */ GIR_RootConstrainSelectedInstOperands, |
| 54948 | /* 155018 */ // GIR_Coverage, 22478, |
| 54949 | /* 155018 */ GIR_EraseRootFromParent_Done, |
| 54950 | /* 155019 */ // Label 3372: @155019 |
| 54951 | /* 155019 */ GIM_Try, /*On fail goto*//*Label 3373*/ GIMT_Encode4(155084), // Rule ID 969 // |
| 54952 | /* 155024 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54953 | /* 155027 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54954 | /* 155031 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54955 | /* 155035 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54956 | /* 155039 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 54957 | /* 155046 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54958 | /* 155050 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54959 | /* 155054 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54960 | /* 155056 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54961 | /* 155063 */ // (fsub:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (SUBR_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54962 | /* 155063 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m64), |
| 54963 | /* 155066 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54964 | /* 155068 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54965 | /* 155070 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54966 | /* 155074 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54967 | /* 155077 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54968 | /* 155082 */ GIR_RootConstrainSelectedInstOperands, |
| 54969 | /* 155083 */ // GIR_Coverage, 969, |
| 54970 | /* 155083 */ GIR_EraseRootFromParent_Done, |
| 54971 | /* 155084 */ // Label 3373: @155084 |
| 54972 | /* 155084 */ GIM_Try, /*On fail goto*//*Label 3374*/ GIMT_Encode4(155149), // Rule ID 971 // |
| 54973 | /* 155089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54974 | /* 155092 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54975 | /* 155096 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54976 | /* 155100 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54977 | /* 155104 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54978 | /* 155111 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54979 | /* 155115 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54980 | /* 155119 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54981 | /* 155121 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54982 | /* 155128 */ // (fsub:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (SUBR_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54983 | /* 155128 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m64), |
| 54984 | /* 155131 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54985 | /* 155133 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54986 | /* 155135 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54987 | /* 155139 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54988 | /* 155142 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54989 | /* 155147 */ GIR_RootConstrainSelectedInstOperands, |
| 54990 | /* 155148 */ // GIR_Coverage, 971, |
| 54991 | /* 155148 */ GIR_EraseRootFromParent_Done, |
| 54992 | /* 155149 */ // Label 3374: @155149 |
| 54993 | /* 155149 */ GIM_Try, /*On fail goto*//*Label 3375*/ GIMT_Encode4(155214), // Rule ID 957 // |
| 54994 | /* 155154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54995 | /* 155157 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54996 | /* 155161 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54997 | /* 155165 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54998 | /* 155169 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54999 | /* 155172 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55000 | /* 155176 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55001 | /* 155180 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55002 | /* 155184 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55003 | /* 155186 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55004 | /* 155193 */ // (fsub:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP64:{ *:[f64] }:$src1) => (SUBR_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55005 | /* 155193 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp64m), |
| 55006 | /* 155196 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55007 | /* 155198 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55008 | /* 155200 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55009 | /* 155204 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55010 | /* 155207 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55011 | /* 155212 */ GIR_RootConstrainSelectedInstOperands, |
| 55012 | /* 155213 */ // GIR_Coverage, 957, |
| 55013 | /* 155213 */ GIR_EraseRootFromParent_Done, |
| 55014 | /* 155214 */ // Label 3375: @155214 |
| 55015 | /* 155214 */ GIM_Try, /*On fail goto*//*Label 3376*/ GIMT_Encode4(155286), // Rule ID 959 // |
| 55016 | /* 155219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 55017 | /* 155222 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55018 | /* 155226 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55019 | /* 155230 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55020 | /* 155234 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55021 | /* 155237 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55022 | /* 155241 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55023 | /* 155248 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55024 | /* 155252 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55025 | /* 155256 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55026 | /* 155258 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55027 | /* 155265 */ // (fsub:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP64:{ *:[f64] }:$src1) => (SUBR_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55028 | /* 155265 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp64m32), |
| 55029 | /* 155268 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55030 | /* 155270 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55031 | /* 155272 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55032 | /* 155276 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55033 | /* 155279 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55034 | /* 155284 */ GIR_RootConstrainSelectedInstOperands, |
| 55035 | /* 155285 */ // GIR_Coverage, 959, |
| 55036 | /* 155285 */ GIR_EraseRootFromParent_Done, |
| 55037 | /* 155286 */ // Label 3376: @155286 |
| 55038 | /* 155286 */ GIM_Try, /*On fail goto*//*Label 3377*/ GIMT_Encode4(155351), // Rule ID 947 // |
| 55039 | /* 155291 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 55040 | /* 155294 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55041 | /* 155298 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55042 | /* 155302 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55043 | /* 155306 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 55044 | /* 155310 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 55045 | /* 155317 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55046 | /* 155321 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55047 | /* 155323 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55048 | /* 155330 */ // (fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55049 | /* 155330 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m64), |
| 55050 | /* 155333 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55051 | /* 155335 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55052 | /* 155337 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55053 | /* 155341 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55054 | /* 155344 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55055 | /* 155349 */ GIR_RootConstrainSelectedInstOperands, |
| 55056 | /* 155350 */ // GIR_Coverage, 947, |
| 55057 | /* 155350 */ GIR_EraseRootFromParent_Done, |
| 55058 | /* 155351 */ // Label 3377: @155351 |
| 55059 | /* 155351 */ GIM_Try, /*On fail goto*//*Label 3378*/ GIMT_Encode4(155416), // Rule ID 949 // |
| 55060 | /* 155356 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 55061 | /* 155359 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55062 | /* 155363 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55063 | /* 155367 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55064 | /* 155371 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 55065 | /* 155375 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55066 | /* 155382 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55067 | /* 155386 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55068 | /* 155388 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55069 | /* 155395 */ // (fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55070 | /* 155395 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m64), |
| 55071 | /* 155398 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55072 | /* 155400 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55073 | /* 155402 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55074 | /* 155406 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55075 | /* 155409 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55076 | /* 155414 */ GIR_RootConstrainSelectedInstOperands, |
| 55077 | /* 155415 */ // GIR_Coverage, 949, |
| 55078 | /* 155415 */ GIR_EraseRootFromParent_Done, |
| 55079 | /* 155416 */ // Label 3378: @155416 |
| 55080 | /* 155416 */ GIM_Try, /*On fail goto*//*Label 3379*/ GIMT_Encode4(155481), // Rule ID 935 // |
| 55081 | /* 155421 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 55082 | /* 155424 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55083 | /* 155428 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55084 | /* 155432 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55085 | /* 155436 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55086 | /* 155440 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55087 | /* 155443 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55088 | /* 155447 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55089 | /* 155451 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55090 | /* 155453 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55091 | /* 155460 */ // (fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUB_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55092 | /* 155460 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64m), |
| 55093 | /* 155463 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55094 | /* 155465 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55095 | /* 155467 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55096 | /* 155471 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55097 | /* 155474 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55098 | /* 155479 */ GIR_RootConstrainSelectedInstOperands, |
| 55099 | /* 155480 */ // GIR_Coverage, 935, |
| 55100 | /* 155480 */ GIR_EraseRootFromParent_Done, |
| 55101 | /* 155481 */ // Label 3379: @155481 |
| 55102 | /* 155481 */ GIM_Try, /*On fail goto*//*Label 3380*/ GIMT_Encode4(155553), // Rule ID 937 // |
| 55103 | /* 155486 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 55104 | /* 155489 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55105 | /* 155493 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55106 | /* 155497 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55107 | /* 155501 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55108 | /* 155505 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55109 | /* 155508 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55110 | /* 155512 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55111 | /* 155519 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55112 | /* 155523 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55113 | /* 155525 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55114 | /* 155532 */ // (fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (SUB_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55115 | /* 155532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64m32), |
| 55116 | /* 155535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55117 | /* 155537 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55118 | /* 155539 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55119 | /* 155543 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55120 | /* 155546 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55121 | /* 155551 */ GIR_RootConstrainSelectedInstOperands, |
| 55122 | /* 155552 */ // GIR_Coverage, 937, |
| 55123 | /* 155552 */ GIR_EraseRootFromParent_Done, |
| 55124 | /* 155553 */ // Label 3380: @155553 |
| 55125 | /* 155553 */ GIM_Try, /*On fail goto*//*Label 3381*/ GIMT_Encode4(155615), // Rule ID 2245 // |
| 55126 | /* 155558 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 55127 | /* 155561 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 55128 | /* 155565 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 55129 | /* 155569 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55130 | /* 155573 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55131 | /* 155577 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55132 | /* 155580 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55133 | /* 155584 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55134 | /* 155588 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55135 | /* 155590 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55136 | /* 155597 */ // (fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55137 | /* 155597 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDrm), |
| 55138 | /* 155600 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55139 | /* 155602 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55140 | /* 155604 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55141 | /* 155608 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55142 | /* 155613 */ GIR_RootConstrainSelectedInstOperands, |
| 55143 | /* 155614 */ // GIR_Coverage, 2245, |
| 55144 | /* 155614 */ GIR_EraseRootFromParent_Done, |
| 55145 | /* 155615 */ // Label 3381: @155615 |
| 55146 | /* 155615 */ GIM_Try, /*On fail goto*//*Label 3382*/ GIMT_Encode4(155677), // Rule ID 2253 // |
| 55147 | /* 155620 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 55148 | /* 155623 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 55149 | /* 155627 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 55150 | /* 155631 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55151 | /* 155635 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55152 | /* 155639 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55153 | /* 155642 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55154 | /* 155646 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55155 | /* 155650 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55156 | /* 155652 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55157 | /* 155659 */ // (fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUBSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55158 | /* 155659 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSDrm), |
| 55159 | /* 155662 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55160 | /* 155664 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55161 | /* 155666 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55162 | /* 155670 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55163 | /* 155675 */ GIR_RootConstrainSelectedInstOperands, |
| 55164 | /* 155676 */ // GIR_Coverage, 2253, |
| 55165 | /* 155676 */ GIR_EraseRootFromParent_Done, |
| 55166 | /* 155677 */ // Label 3382: @155677 |
| 55167 | /* 155677 */ GIM_Try, /*On fail goto*//*Label 3383*/ GIMT_Encode4(155739), // Rule ID 6050 // |
| 55168 | /* 155682 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55169 | /* 155685 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 55170 | /* 155689 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 55171 | /* 155693 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55172 | /* 155697 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55173 | /* 155701 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55174 | /* 155704 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55175 | /* 155708 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55176 | /* 155712 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55177 | /* 155714 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55178 | /* 155721 */ // (fsub:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55179 | /* 155721 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDZrm), |
| 55180 | /* 155724 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55181 | /* 155726 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55182 | /* 155728 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55183 | /* 155732 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55184 | /* 155737 */ GIR_RootConstrainSelectedInstOperands, |
| 55185 | /* 155738 */ // GIR_Coverage, 6050, |
| 55186 | /* 155738 */ GIR_EraseRootFromParent_Done, |
| 55187 | /* 155739 */ // Label 3383: @155739 |
| 55188 | /* 155739 */ GIM_Try, /*On fail goto*//*Label 3384*/ GIMT_Encode4(155776), // Rule ID 895 // |
| 55189 | /* 155744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 55190 | /* 155747 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55191 | /* 155751 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55192 | /* 155755 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 55193 | /* 155759 */ // (fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (SUB_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 55194 | /* 155759 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64), |
| 55195 | /* 155764 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 55196 | /* 155770 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 55197 | /* 155774 */ GIR_RootConstrainSelectedInstOperands, |
| 55198 | /* 155775 */ // GIR_Coverage, 895, |
| 55199 | /* 155775 */ GIR_Done, |
| 55200 | /* 155776 */ // Label 3384: @155776 |
| 55201 | /* 155776 */ GIM_Try, /*On fail goto*//*Label 3385*/ GIMT_Encode4(155807), // Rule ID 2243 // |
| 55202 | /* 155781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 55203 | /* 155784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 55204 | /* 155788 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 55205 | /* 155792 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 55206 | /* 155796 */ // (fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VSUBSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 55207 | /* 155796 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSDrr), |
| 55208 | /* 155801 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55209 | /* 155805 */ GIR_RootConstrainSelectedInstOperands, |
| 55210 | /* 155806 */ // GIR_Coverage, 2243, |
| 55211 | /* 155806 */ GIR_Done, |
| 55212 | /* 155807 */ // Label 3385: @155807 |
| 55213 | /* 155807 */ GIM_Try, /*On fail goto*//*Label 3386*/ GIMT_Encode4(155838), // Rule ID 2251 // |
| 55214 | /* 155812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 55215 | /* 155815 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 55216 | /* 155819 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 55217 | /* 155823 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 55218 | /* 155827 */ // (fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (SUBSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 55219 | /* 155827 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBSDrr), |
| 55220 | /* 155832 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55221 | /* 155836 */ GIR_RootConstrainSelectedInstOperands, |
| 55222 | /* 155837 */ // GIR_Coverage, 2251, |
| 55223 | /* 155837 */ GIR_Done, |
| 55224 | /* 155838 */ // Label 3386: @155838 |
| 55225 | /* 155838 */ GIM_Try, /*On fail goto*//*Label 3387*/ GIMT_Encode4(155869), // Rule ID 6048 // |
| 55226 | /* 155843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55227 | /* 155846 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 55228 | /* 155850 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 55229 | /* 155854 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 55230 | /* 155858 */ // (fsub:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VSUBSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 55231 | /* 155858 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSDZrr), |
| 55232 | /* 155863 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55233 | /* 155867 */ GIR_RootConstrainSelectedInstOperands, |
| 55234 | /* 155868 */ // GIR_Coverage, 6048, |
| 55235 | /* 155868 */ GIR_Done, |
| 55236 | /* 155869 */ // Label 3387: @155869 |
| 55237 | /* 155869 */ GIM_Reject, |
| 55238 | /* 155870 */ // Label 3369: @155870 |
| 55239 | /* 155870 */ GIM_Reject, |
| 55240 | /* 155871 */ // Label 3338: @155871 |
| 55241 | /* 155871 */ GIM_Try, /*On fail goto*//*Label 3388*/ GIMT_Encode4(156436), |
| 55242 | /* 155876 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 55243 | /* 155879 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 55244 | /* 155882 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55245 | /* 155886 */ GIM_Try, /*On fail goto*//*Label 3389*/ GIMT_Encode4(155947), // Rule ID 973 // |
| 55246 | /* 155891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 55247 | /* 155894 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55248 | /* 155898 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 55249 | /* 155902 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 55250 | /* 155909 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55251 | /* 155913 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55252 | /* 155917 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55253 | /* 155919 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55254 | /* 155926 */ // (fsub:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (SUBR_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55255 | /* 155926 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m80), |
| 55256 | /* 155929 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55257 | /* 155931 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55258 | /* 155933 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55259 | /* 155937 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55260 | /* 155940 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55261 | /* 155945 */ GIR_RootConstrainSelectedInstOperands, |
| 55262 | /* 155946 */ // GIR_Coverage, 973, |
| 55263 | /* 155946 */ GIR_EraseRootFromParent_Done, |
| 55264 | /* 155947 */ // Label 3389: @155947 |
| 55265 | /* 155947 */ GIM_Try, /*On fail goto*//*Label 3390*/ GIMT_Encode4(156008), // Rule ID 975 // |
| 55266 | /* 155952 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 55267 | /* 155955 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55268 | /* 155959 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 55269 | /* 155963 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55270 | /* 155970 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55271 | /* 155974 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55272 | /* 155978 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55273 | /* 155980 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55274 | /* 155987 */ // (fsub:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (SUBR_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55275 | /* 155987 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m80), |
| 55276 | /* 155990 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55277 | /* 155992 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55278 | /* 155994 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55279 | /* 155998 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55280 | /* 156001 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55281 | /* 156006 */ GIR_RootConstrainSelectedInstOperands, |
| 55282 | /* 156007 */ // GIR_Coverage, 975, |
| 55283 | /* 156007 */ GIR_EraseRootFromParent_Done, |
| 55284 | /* 156008 */ // Label 3390: @156008 |
| 55285 | /* 156008 */ GIM_Try, /*On fail goto*//*Label 3391*/ GIMT_Encode4(156076), // Rule ID 961 // |
| 55286 | /* 156013 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 55287 | /* 156016 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55288 | /* 156020 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55289 | /* 156024 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55290 | /* 156027 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55291 | /* 156031 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55292 | /* 156038 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55293 | /* 156042 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55294 | /* 156046 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55295 | /* 156048 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55296 | /* 156055 */ // (fsub:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP80:{ *:[f80] }:$src1) => (SUBR_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55297 | /* 156055 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp80m32), |
| 55298 | /* 156058 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55299 | /* 156060 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55300 | /* 156062 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55301 | /* 156066 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55302 | /* 156069 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55303 | /* 156074 */ GIR_RootConstrainSelectedInstOperands, |
| 55304 | /* 156075 */ // GIR_Coverage, 961, |
| 55305 | /* 156075 */ GIR_EraseRootFromParent_Done, |
| 55306 | /* 156076 */ // Label 3391: @156076 |
| 55307 | /* 156076 */ GIM_Try, /*On fail goto*//*Label 3392*/ GIMT_Encode4(156144), // Rule ID 963 // |
| 55308 | /* 156081 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 55309 | /* 156084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55310 | /* 156088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55311 | /* 156092 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55312 | /* 156095 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55313 | /* 156099 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 55314 | /* 156106 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55315 | /* 156110 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55316 | /* 156114 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55317 | /* 156116 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55318 | /* 156123 */ // (fsub:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>, RFP80:{ *:[f80] }:$src1) => (SUBR_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55319 | /* 156123 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp80m64), |
| 55320 | /* 156126 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55321 | /* 156128 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55322 | /* 156130 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55323 | /* 156134 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55324 | /* 156137 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55325 | /* 156142 */ GIR_RootConstrainSelectedInstOperands, |
| 55326 | /* 156143 */ // GIR_Coverage, 963, |
| 55327 | /* 156143 */ GIR_EraseRootFromParent_Done, |
| 55328 | /* 156144 */ // Label 3392: @156144 |
| 55329 | /* 156144 */ GIM_Try, /*On fail goto*//*Label 3393*/ GIMT_Encode4(156205), // Rule ID 951 // |
| 55330 | /* 156149 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 55331 | /* 156152 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55332 | /* 156156 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55333 | /* 156160 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 55334 | /* 156164 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 55335 | /* 156171 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55336 | /* 156175 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55337 | /* 156177 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55338 | /* 156184 */ // (fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55339 | /* 156184 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m80), |
| 55340 | /* 156187 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55341 | /* 156189 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55342 | /* 156191 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55343 | /* 156195 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55344 | /* 156198 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55345 | /* 156203 */ GIR_RootConstrainSelectedInstOperands, |
| 55346 | /* 156204 */ // GIR_Coverage, 951, |
| 55347 | /* 156204 */ GIR_EraseRootFromParent_Done, |
| 55348 | /* 156205 */ // Label 3393: @156205 |
| 55349 | /* 156205 */ GIM_Try, /*On fail goto*//*Label 3394*/ GIMT_Encode4(156266), // Rule ID 953 // |
| 55350 | /* 156210 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 55351 | /* 156213 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55352 | /* 156217 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55353 | /* 156221 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 55354 | /* 156225 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55355 | /* 156232 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55356 | /* 156236 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55357 | /* 156238 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55358 | /* 156245 */ // (fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55359 | /* 156245 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m80), |
| 55360 | /* 156248 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55361 | /* 156250 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55362 | /* 156252 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55363 | /* 156256 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55364 | /* 156259 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55365 | /* 156264 */ GIR_RootConstrainSelectedInstOperands, |
| 55366 | /* 156265 */ // GIR_Coverage, 953, |
| 55367 | /* 156265 */ GIR_EraseRootFromParent_Done, |
| 55368 | /* 156266 */ // Label 3394: @156266 |
| 55369 | /* 156266 */ GIM_Try, /*On fail goto*//*Label 3395*/ GIMT_Encode4(156334), // Rule ID 939 // |
| 55370 | /* 156271 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 55371 | /* 156274 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55372 | /* 156278 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55373 | /* 156282 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55374 | /* 156286 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55375 | /* 156289 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55376 | /* 156293 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55377 | /* 156300 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55378 | /* 156304 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55379 | /* 156306 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55380 | /* 156313 */ // (fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (SUB_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55381 | /* 156313 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80m32), |
| 55382 | /* 156316 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55383 | /* 156318 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55384 | /* 156320 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55385 | /* 156324 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55386 | /* 156327 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55387 | /* 156332 */ GIR_RootConstrainSelectedInstOperands, |
| 55388 | /* 156333 */ // GIR_Coverage, 939, |
| 55389 | /* 156333 */ GIR_EraseRootFromParent_Done, |
| 55390 | /* 156334 */ // Label 3395: @156334 |
| 55391 | /* 156334 */ GIM_Try, /*On fail goto*//*Label 3396*/ GIMT_Encode4(156402), // Rule ID 941 // |
| 55392 | /* 156339 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 55393 | /* 156342 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55394 | /* 156346 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55395 | /* 156350 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55396 | /* 156354 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55397 | /* 156357 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55398 | /* 156361 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 55399 | /* 156368 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55400 | /* 156372 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55401 | /* 156374 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55402 | /* 156381 */ // (fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>) => (SUB_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55403 | /* 156381 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80m64), |
| 55404 | /* 156384 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55405 | /* 156386 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55406 | /* 156388 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55407 | /* 156392 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55408 | /* 156395 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55409 | /* 156400 */ GIR_RootConstrainSelectedInstOperands, |
| 55410 | /* 156401 */ // GIR_Coverage, 941, |
| 55411 | /* 156401 */ GIR_EraseRootFromParent_Done, |
| 55412 | /* 156402 */ // Label 3396: @156402 |
| 55413 | /* 156402 */ GIM_Try, /*On fail goto*//*Label 3397*/ GIMT_Encode4(156435), // Rule ID 897 // |
| 55414 | /* 156407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 55415 | /* 156410 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55416 | /* 156414 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 55417 | /* 156418 */ // (fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (SUB_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 55418 | /* 156418 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80), |
| 55419 | /* 156423 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 55420 | /* 156429 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 55421 | /* 156433 */ GIR_RootConstrainSelectedInstOperands, |
| 55422 | /* 156434 */ // GIR_Coverage, 897, |
| 55423 | /* 156434 */ GIR_Done, |
| 55424 | /* 156435 */ // Label 3397: @156435 |
| 55425 | /* 156435 */ GIM_Reject, |
| 55426 | /* 156436 */ // Label 3388: @156436 |
| 55427 | /* 156436 */ GIM_Reject, |
| 55428 | /* 156437 */ // Label 3339: @156437 |
| 55429 | /* 156437 */ GIM_Try, /*On fail goto*//*Label 3398*/ GIMT_Encode4(156666), |
| 55430 | /* 156442 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 55431 | /* 156445 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 55432 | /* 156448 */ GIM_Try, /*On fail goto*//*Label 3399*/ GIMT_Encode4(156510), // Rule ID 2221 // |
| 55433 | /* 156453 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55434 | /* 156456 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55435 | /* 156460 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55436 | /* 156464 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55437 | /* 156468 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55438 | /* 156472 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55439 | /* 156475 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55440 | /* 156479 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55441 | /* 156483 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55442 | /* 156485 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55443 | /* 156492 */ // (fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55444 | /* 156492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDrm), |
| 55445 | /* 156495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55446 | /* 156497 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55447 | /* 156499 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55448 | /* 156503 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55449 | /* 156508 */ GIR_RootConstrainSelectedInstOperands, |
| 55450 | /* 156509 */ // GIR_Coverage, 2221, |
| 55451 | /* 156509 */ GIR_EraseRootFromParent_Done, |
| 55452 | /* 156510 */ // Label 3399: @156510 |
| 55453 | /* 156510 */ GIM_Try, /*On fail goto*//*Label 3400*/ GIMT_Encode4(156572), // Rule ID 6543 // |
| 55454 | /* 156515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55455 | /* 156518 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55456 | /* 156522 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55457 | /* 156526 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55458 | /* 156530 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55459 | /* 156534 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55460 | /* 156537 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55461 | /* 156541 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55462 | /* 156545 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55463 | /* 156547 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55464 | /* 156554 */ // (fsub:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55465 | /* 156554 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ128rm), |
| 55466 | /* 156557 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55467 | /* 156559 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55468 | /* 156561 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55469 | /* 156565 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55470 | /* 156570 */ GIR_RootConstrainSelectedInstOperands, |
| 55471 | /* 156571 */ // GIR_Coverage, 6543, |
| 55472 | /* 156571 */ GIR_EraseRootFromParent_Done, |
| 55473 | /* 156572 */ // Label 3400: @156572 |
| 55474 | /* 156572 */ GIM_Try, /*On fail goto*//*Label 3401*/ GIMT_Encode4(156603), // Rule ID 2219 // |
| 55475 | /* 156577 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55476 | /* 156580 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55477 | /* 156584 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55478 | /* 156588 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55479 | /* 156592 */ // (fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VSUBPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 55480 | /* 156592 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDrr), |
| 55481 | /* 156597 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55482 | /* 156601 */ GIR_RootConstrainSelectedInstOperands, |
| 55483 | /* 156602 */ // GIR_Coverage, 2219, |
| 55484 | /* 156602 */ GIR_Done, |
| 55485 | /* 156603 */ // Label 3401: @156603 |
| 55486 | /* 156603 */ GIM_Try, /*On fail goto*//*Label 3402*/ GIMT_Encode4(156634), // Rule ID 2235 // |
| 55487 | /* 156608 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 55488 | /* 156611 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55489 | /* 156615 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55490 | /* 156619 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55491 | /* 156623 */ // (fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (SUBPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 55492 | /* 156623 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBPDrr), |
| 55493 | /* 156628 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55494 | /* 156632 */ GIR_RootConstrainSelectedInstOperands, |
| 55495 | /* 156633 */ // GIR_Coverage, 2235, |
| 55496 | /* 156633 */ GIR_Done, |
| 55497 | /* 156634 */ // Label 3402: @156634 |
| 55498 | /* 156634 */ GIM_Try, /*On fail goto*//*Label 3403*/ GIMT_Encode4(156665), // Rule ID 6539 // |
| 55499 | /* 156639 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55500 | /* 156642 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55501 | /* 156646 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55502 | /* 156650 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55503 | /* 156654 */ // (fsub:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VSUBPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 55504 | /* 156654 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ128rr), |
| 55505 | /* 156659 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55506 | /* 156663 */ GIR_RootConstrainSelectedInstOperands, |
| 55507 | /* 156664 */ // GIR_Coverage, 6539, |
| 55508 | /* 156664 */ GIR_Done, |
| 55509 | /* 156665 */ // Label 3403: @156665 |
| 55510 | /* 156665 */ GIM_Reject, |
| 55511 | /* 156666 */ // Label 3398: @156666 |
| 55512 | /* 156666 */ GIM_Reject, |
| 55513 | /* 156667 */ // Label 3340: @156667 |
| 55514 | /* 156667 */ GIM_Try, /*On fail goto*//*Label 3404*/ GIMT_Encode4(156896), |
| 55515 | /* 156672 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 55516 | /* 156675 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 55517 | /* 156678 */ GIM_Try, /*On fail goto*//*Label 3405*/ GIMT_Encode4(156740), // Rule ID 2217 // |
| 55518 | /* 156683 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55519 | /* 156686 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55520 | /* 156690 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55521 | /* 156694 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55522 | /* 156698 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55523 | /* 156702 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55524 | /* 156705 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55525 | /* 156709 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55526 | /* 156713 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55527 | /* 156715 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55528 | /* 156722 */ // (fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55529 | /* 156722 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSrm), |
| 55530 | /* 156725 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55531 | /* 156727 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55532 | /* 156729 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55533 | /* 156733 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55534 | /* 156738 */ GIR_RootConstrainSelectedInstOperands, |
| 55535 | /* 156739 */ // GIR_Coverage, 2217, |
| 55536 | /* 156739 */ GIR_EraseRootFromParent_Done, |
| 55537 | /* 156740 */ // Label 3405: @156740 |
| 55538 | /* 156740 */ GIM_Try, /*On fail goto*//*Label 3406*/ GIMT_Encode4(156802), // Rule ID 6519 // |
| 55539 | /* 156745 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55540 | /* 156748 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55541 | /* 156752 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55542 | /* 156756 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55543 | /* 156760 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55544 | /* 156764 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55545 | /* 156767 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55546 | /* 156771 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55547 | /* 156775 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55548 | /* 156777 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55549 | /* 156784 */ // (fsub:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55550 | /* 156784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ128rm), |
| 55551 | /* 156787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55552 | /* 156789 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55553 | /* 156791 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55554 | /* 156795 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55555 | /* 156800 */ GIR_RootConstrainSelectedInstOperands, |
| 55556 | /* 156801 */ // GIR_Coverage, 6519, |
| 55557 | /* 156801 */ GIR_EraseRootFromParent_Done, |
| 55558 | /* 156802 */ // Label 3406: @156802 |
| 55559 | /* 156802 */ GIM_Try, /*On fail goto*//*Label 3407*/ GIMT_Encode4(156833), // Rule ID 2215 // |
| 55560 | /* 156807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55561 | /* 156810 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55562 | /* 156814 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55563 | /* 156818 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55564 | /* 156822 */ // (fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VSUBPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 55565 | /* 156822 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSrr), |
| 55566 | /* 156827 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55567 | /* 156831 */ GIR_RootConstrainSelectedInstOperands, |
| 55568 | /* 156832 */ // GIR_Coverage, 2215, |
| 55569 | /* 156832 */ GIR_Done, |
| 55570 | /* 156833 */ // Label 3407: @156833 |
| 55571 | /* 156833 */ GIM_Try, /*On fail goto*//*Label 3408*/ GIMT_Encode4(156864), // Rule ID 2231 // |
| 55572 | /* 156838 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 55573 | /* 156841 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55574 | /* 156845 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55575 | /* 156849 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55576 | /* 156853 */ // (fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (SUBPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 55577 | /* 156853 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBPSrr), |
| 55578 | /* 156858 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55579 | /* 156862 */ GIR_RootConstrainSelectedInstOperands, |
| 55580 | /* 156863 */ // GIR_Coverage, 2231, |
| 55581 | /* 156863 */ GIR_Done, |
| 55582 | /* 156864 */ // Label 3408: @156864 |
| 55583 | /* 156864 */ GIM_Try, /*On fail goto*//*Label 3409*/ GIMT_Encode4(156895), // Rule ID 6515 // |
| 55584 | /* 156869 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55585 | /* 156872 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55586 | /* 156876 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55587 | /* 156880 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55588 | /* 156884 */ // (fsub:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VSUBPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 55589 | /* 156884 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ128rr), |
| 55590 | /* 156889 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55591 | /* 156893 */ GIR_RootConstrainSelectedInstOperands, |
| 55592 | /* 156894 */ // GIR_Coverage, 6515, |
| 55593 | /* 156894 */ GIR_Done, |
| 55594 | /* 156895 */ // Label 3409: @156895 |
| 55595 | /* 156895 */ GIM_Reject, |
| 55596 | /* 156896 */ // Label 3404: @156896 |
| 55597 | /* 156896 */ GIM_Reject, |
| 55598 | /* 156897 */ // Label 3341: @156897 |
| 55599 | /* 156897 */ GIM_Try, /*On fail goto*//*Label 3410*/ GIMT_Encode4(157095), |
| 55600 | /* 156902 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 55601 | /* 156905 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 55602 | /* 156908 */ GIM_Try, /*On fail goto*//*Label 3411*/ GIMT_Encode4(156970), // Rule ID 2229 // |
| 55603 | /* 156913 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55604 | /* 156916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55605 | /* 156920 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55606 | /* 156924 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55607 | /* 156928 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55608 | /* 156932 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55609 | /* 156935 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55610 | /* 156939 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55611 | /* 156943 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55612 | /* 156945 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55613 | /* 156952 */ // (fsub:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55614 | /* 156952 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDYrm), |
| 55615 | /* 156955 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55616 | /* 156957 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55617 | /* 156959 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55618 | /* 156963 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55619 | /* 156968 */ GIR_RootConstrainSelectedInstOperands, |
| 55620 | /* 156969 */ // GIR_Coverage, 2229, |
| 55621 | /* 156969 */ GIR_EraseRootFromParent_Done, |
| 55622 | /* 156970 */ // Label 3411: @156970 |
| 55623 | /* 156970 */ GIM_Try, /*On fail goto*//*Label 3412*/ GIMT_Encode4(157032), // Rule ID 6555 // |
| 55624 | /* 156975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55625 | /* 156978 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55626 | /* 156982 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55627 | /* 156986 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55628 | /* 156990 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55629 | /* 156994 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55630 | /* 156997 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55631 | /* 157001 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55632 | /* 157005 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55633 | /* 157007 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55634 | /* 157014 */ // (fsub:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55635 | /* 157014 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ256rm), |
| 55636 | /* 157017 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55637 | /* 157019 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55638 | /* 157021 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55639 | /* 157025 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55640 | /* 157030 */ GIR_RootConstrainSelectedInstOperands, |
| 55641 | /* 157031 */ // GIR_Coverage, 6555, |
| 55642 | /* 157031 */ GIR_EraseRootFromParent_Done, |
| 55643 | /* 157032 */ // Label 3412: @157032 |
| 55644 | /* 157032 */ GIM_Try, /*On fail goto*//*Label 3413*/ GIMT_Encode4(157063), // Rule ID 2227 // |
| 55645 | /* 157037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55646 | /* 157040 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55647 | /* 157044 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55648 | /* 157048 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55649 | /* 157052 */ // (fsub:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VSUBPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 55650 | /* 157052 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDYrr), |
| 55651 | /* 157057 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55652 | /* 157061 */ GIR_RootConstrainSelectedInstOperands, |
| 55653 | /* 157062 */ // GIR_Coverage, 2227, |
| 55654 | /* 157062 */ GIR_Done, |
| 55655 | /* 157063 */ // Label 3413: @157063 |
| 55656 | /* 157063 */ GIM_Try, /*On fail goto*//*Label 3414*/ GIMT_Encode4(157094), // Rule ID 6551 // |
| 55657 | /* 157068 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55658 | /* 157071 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55659 | /* 157075 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55660 | /* 157079 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55661 | /* 157083 */ // (fsub:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VSUBPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 55662 | /* 157083 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ256rr), |
| 55663 | /* 157088 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55664 | /* 157092 */ GIR_RootConstrainSelectedInstOperands, |
| 55665 | /* 157093 */ // GIR_Coverage, 6551, |
| 55666 | /* 157093 */ GIR_Done, |
| 55667 | /* 157094 */ // Label 3414: @157094 |
| 55668 | /* 157094 */ GIM_Reject, |
| 55669 | /* 157095 */ // Label 3410: @157095 |
| 55670 | /* 157095 */ GIM_Reject, |
| 55671 | /* 157096 */ // Label 3342: @157096 |
| 55672 | /* 157096 */ GIM_Try, /*On fail goto*//*Label 3415*/ GIMT_Encode4(157193), |
| 55673 | /* 157101 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 55674 | /* 157104 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 55675 | /* 157107 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55676 | /* 157111 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55677 | /* 157115 */ GIM_Try, /*On fail goto*//*Label 3416*/ GIMT_Encode4(157169), // Rule ID 6579 // |
| 55678 | /* 157120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 55679 | /* 157123 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55680 | /* 157127 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55681 | /* 157131 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55682 | /* 157134 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55683 | /* 157138 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55684 | /* 157142 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55685 | /* 157144 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55686 | /* 157151 */ // (fsub:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55687 | /* 157151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ128rm), |
| 55688 | /* 157154 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55689 | /* 157156 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55690 | /* 157158 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55691 | /* 157162 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55692 | /* 157167 */ GIR_RootConstrainSelectedInstOperands, |
| 55693 | /* 157168 */ // GIR_Coverage, 6579, |
| 55694 | /* 157168 */ GIR_EraseRootFromParent_Done, |
| 55695 | /* 157169 */ // Label 3416: @157169 |
| 55696 | /* 157169 */ GIM_Try, /*On fail goto*//*Label 3417*/ GIMT_Encode4(157192), // Rule ID 6575 // |
| 55697 | /* 157174 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 55698 | /* 157177 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55699 | /* 157181 */ // (fsub:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VSUBPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 55700 | /* 157181 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ128rr), |
| 55701 | /* 157186 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55702 | /* 157190 */ GIR_RootConstrainSelectedInstOperands, |
| 55703 | /* 157191 */ // GIR_Coverage, 6575, |
| 55704 | /* 157191 */ GIR_Done, |
| 55705 | /* 157192 */ // Label 3417: @157192 |
| 55706 | /* 157192 */ GIM_Reject, |
| 55707 | /* 157193 */ // Label 3415: @157193 |
| 55708 | /* 157193 */ GIM_Reject, |
| 55709 | /* 157194 */ // Label 3343: @157194 |
| 55710 | /* 157194 */ GIM_Try, /*On fail goto*//*Label 3418*/ GIMT_Encode4(157392), |
| 55711 | /* 157199 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 55712 | /* 157202 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 55713 | /* 157205 */ GIM_Try, /*On fail goto*//*Label 3419*/ GIMT_Encode4(157267), // Rule ID 2225 // |
| 55714 | /* 157210 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55715 | /* 157213 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55716 | /* 157217 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55717 | /* 157221 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55718 | /* 157225 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55719 | /* 157229 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55720 | /* 157232 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55721 | /* 157236 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55722 | /* 157240 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55723 | /* 157242 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55724 | /* 157249 */ // (fsub:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55725 | /* 157249 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSYrm), |
| 55726 | /* 157252 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55727 | /* 157254 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55728 | /* 157256 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55729 | /* 157260 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55730 | /* 157265 */ GIR_RootConstrainSelectedInstOperands, |
| 55731 | /* 157266 */ // GIR_Coverage, 2225, |
| 55732 | /* 157266 */ GIR_EraseRootFromParent_Done, |
| 55733 | /* 157267 */ // Label 3419: @157267 |
| 55734 | /* 157267 */ GIM_Try, /*On fail goto*//*Label 3420*/ GIMT_Encode4(157329), // Rule ID 6531 // |
| 55735 | /* 157272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55736 | /* 157275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55737 | /* 157279 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55738 | /* 157283 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55739 | /* 157287 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55740 | /* 157291 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55741 | /* 157294 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55742 | /* 157298 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55743 | /* 157302 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55744 | /* 157304 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55745 | /* 157311 */ // (fsub:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55746 | /* 157311 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ256rm), |
| 55747 | /* 157314 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55748 | /* 157316 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55749 | /* 157318 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55750 | /* 157322 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55751 | /* 157327 */ GIR_RootConstrainSelectedInstOperands, |
| 55752 | /* 157328 */ // GIR_Coverage, 6531, |
| 55753 | /* 157328 */ GIR_EraseRootFromParent_Done, |
| 55754 | /* 157329 */ // Label 3420: @157329 |
| 55755 | /* 157329 */ GIM_Try, /*On fail goto*//*Label 3421*/ GIMT_Encode4(157360), // Rule ID 2223 // |
| 55756 | /* 157334 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55757 | /* 157337 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55758 | /* 157341 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55759 | /* 157345 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55760 | /* 157349 */ // (fsub:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VSUBPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 55761 | /* 157349 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSYrr), |
| 55762 | /* 157354 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55763 | /* 157358 */ GIR_RootConstrainSelectedInstOperands, |
| 55764 | /* 157359 */ // GIR_Coverage, 2223, |
| 55765 | /* 157359 */ GIR_Done, |
| 55766 | /* 157360 */ // Label 3421: @157360 |
| 55767 | /* 157360 */ GIM_Try, /*On fail goto*//*Label 3422*/ GIMT_Encode4(157391), // Rule ID 6527 // |
| 55768 | /* 157365 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55769 | /* 157368 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55770 | /* 157372 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55771 | /* 157376 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55772 | /* 157380 */ // (fsub:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VSUBPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 55773 | /* 157380 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ256rr), |
| 55774 | /* 157385 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55775 | /* 157389 */ GIR_RootConstrainSelectedInstOperands, |
| 55776 | /* 157390 */ // GIR_Coverage, 6527, |
| 55777 | /* 157390 */ GIR_Done, |
| 55778 | /* 157391 */ // Label 3422: @157391 |
| 55779 | /* 157391 */ GIM_Reject, |
| 55780 | /* 157392 */ // Label 3418: @157392 |
| 55781 | /* 157392 */ GIM_Reject, |
| 55782 | /* 157393 */ // Label 3344: @157393 |
| 55783 | /* 157393 */ GIM_Try, /*On fail goto*//*Label 3423*/ GIMT_Encode4(157490), |
| 55784 | /* 157398 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 55785 | /* 157401 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 55786 | /* 157404 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55787 | /* 157408 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55788 | /* 157412 */ GIM_Try, /*On fail goto*//*Label 3424*/ GIMT_Encode4(157466), // Rule ID 6507 // |
| 55789 | /* 157417 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55790 | /* 157420 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55791 | /* 157424 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55792 | /* 157428 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55793 | /* 157431 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55794 | /* 157435 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55795 | /* 157439 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55796 | /* 157441 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55797 | /* 157448 */ // (fsub:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55798 | /* 157448 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZrm), |
| 55799 | /* 157451 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55800 | /* 157453 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55801 | /* 157455 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55802 | /* 157459 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55803 | /* 157464 */ GIR_RootConstrainSelectedInstOperands, |
| 55804 | /* 157465 */ // GIR_Coverage, 6507, |
| 55805 | /* 157465 */ GIR_EraseRootFromParent_Done, |
| 55806 | /* 157466 */ // Label 3424: @157466 |
| 55807 | /* 157466 */ GIM_Try, /*On fail goto*//*Label 3425*/ GIMT_Encode4(157489), // Rule ID 6503 // |
| 55808 | /* 157471 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55809 | /* 157474 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55810 | /* 157478 */ // (fsub:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VSUBPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 55811 | /* 157478 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZrr), |
| 55812 | /* 157483 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55813 | /* 157487 */ GIR_RootConstrainSelectedInstOperands, |
| 55814 | /* 157488 */ // GIR_Coverage, 6503, |
| 55815 | /* 157488 */ GIR_Done, |
| 55816 | /* 157489 */ // Label 3425: @157489 |
| 55817 | /* 157489 */ GIM_Reject, |
| 55818 | /* 157490 */ // Label 3423: @157490 |
| 55819 | /* 157490 */ GIM_Reject, |
| 55820 | /* 157491 */ // Label 3345: @157491 |
| 55821 | /* 157491 */ GIM_Try, /*On fail goto*//*Label 3426*/ GIMT_Encode4(157588), |
| 55822 | /* 157496 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 55823 | /* 157499 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 55824 | /* 157502 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55825 | /* 157506 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55826 | /* 157510 */ GIM_Try, /*On fail goto*//*Label 3427*/ GIMT_Encode4(157564), // Rule ID 6591 // |
| 55827 | /* 157515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 55828 | /* 157518 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55829 | /* 157522 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55830 | /* 157526 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55831 | /* 157529 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55832 | /* 157533 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55833 | /* 157537 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55834 | /* 157539 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55835 | /* 157546 */ // (fsub:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55836 | /* 157546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ256rm), |
| 55837 | /* 157549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55838 | /* 157551 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55839 | /* 157553 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55840 | /* 157557 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55841 | /* 157562 */ GIR_RootConstrainSelectedInstOperands, |
| 55842 | /* 157563 */ // GIR_Coverage, 6591, |
| 55843 | /* 157563 */ GIR_EraseRootFromParent_Done, |
| 55844 | /* 157564 */ // Label 3427: @157564 |
| 55845 | /* 157564 */ GIM_Try, /*On fail goto*//*Label 3428*/ GIMT_Encode4(157587), // Rule ID 6587 // |
| 55846 | /* 157569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 55847 | /* 157572 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55848 | /* 157576 */ // (fsub:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VSUBPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 55849 | /* 157576 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ256rr), |
| 55850 | /* 157581 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55851 | /* 157585 */ GIR_RootConstrainSelectedInstOperands, |
| 55852 | /* 157586 */ // GIR_Coverage, 6587, |
| 55853 | /* 157586 */ GIR_Done, |
| 55854 | /* 157587 */ // Label 3428: @157587 |
| 55855 | /* 157587 */ GIM_Reject, |
| 55856 | /* 157588 */ // Label 3426: @157588 |
| 55857 | /* 157588 */ GIM_Reject, |
| 55858 | /* 157589 */ // Label 3346: @157589 |
| 55859 | /* 157589 */ GIM_Try, /*On fail goto*//*Label 3429*/ GIMT_Encode4(157686), |
| 55860 | /* 157594 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 55861 | /* 157597 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 55862 | /* 157600 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55863 | /* 157604 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55864 | /* 157608 */ GIM_Try, /*On fail goto*//*Label 3430*/ GIMT_Encode4(157662), // Rule ID 6495 // |
| 55865 | /* 157613 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55866 | /* 157616 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55867 | /* 157620 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55868 | /* 157624 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55869 | /* 157627 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55870 | /* 157631 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55871 | /* 157635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55872 | /* 157637 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55873 | /* 157644 */ // (fsub:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55874 | /* 157644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZrm), |
| 55875 | /* 157647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55876 | /* 157649 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55877 | /* 157651 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55878 | /* 157655 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55879 | /* 157660 */ GIR_RootConstrainSelectedInstOperands, |
| 55880 | /* 157661 */ // GIR_Coverage, 6495, |
| 55881 | /* 157661 */ GIR_EraseRootFromParent_Done, |
| 55882 | /* 157662 */ // Label 3430: @157662 |
| 55883 | /* 157662 */ GIM_Try, /*On fail goto*//*Label 3431*/ GIMT_Encode4(157685), // Rule ID 6491 // |
| 55884 | /* 157667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55885 | /* 157670 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55886 | /* 157674 */ // (fsub:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VSUBPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 55887 | /* 157674 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZrr), |
| 55888 | /* 157679 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55889 | /* 157683 */ GIR_RootConstrainSelectedInstOperands, |
| 55890 | /* 157684 */ // GIR_Coverage, 6491, |
| 55891 | /* 157684 */ GIR_Done, |
| 55892 | /* 157685 */ // Label 3431: @157685 |
| 55893 | /* 157685 */ GIM_Reject, |
| 55894 | /* 157686 */ // Label 3429: @157686 |
| 55895 | /* 157686 */ GIM_Reject, |
| 55896 | /* 157687 */ // Label 3347: @157687 |
| 55897 | /* 157687 */ GIM_Try, /*On fail goto*//*Label 3432*/ GIMT_Encode4(157784), |
| 55898 | /* 157692 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 55899 | /* 157695 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 55900 | /* 157698 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55901 | /* 157702 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55902 | /* 157706 */ GIM_Try, /*On fail goto*//*Label 3433*/ GIMT_Encode4(157760), // Rule ID 6567 // |
| 55903 | /* 157711 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 55904 | /* 157714 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55905 | /* 157718 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55906 | /* 157722 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55907 | /* 157725 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55908 | /* 157729 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55909 | /* 157733 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55910 | /* 157735 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55911 | /* 157742 */ // (fsub:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55912 | /* 157742 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZrm), |
| 55913 | /* 157745 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55914 | /* 157747 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55915 | /* 157749 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55916 | /* 157753 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55917 | /* 157758 */ GIR_RootConstrainSelectedInstOperands, |
| 55918 | /* 157759 */ // GIR_Coverage, 6567, |
| 55919 | /* 157759 */ GIR_EraseRootFromParent_Done, |
| 55920 | /* 157760 */ // Label 3433: @157760 |
| 55921 | /* 157760 */ GIM_Try, /*On fail goto*//*Label 3434*/ GIMT_Encode4(157783), // Rule ID 6563 // |
| 55922 | /* 157765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 55923 | /* 157768 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55924 | /* 157772 */ // (fsub:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VSUBPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 55925 | /* 157772 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZrr), |
| 55926 | /* 157777 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55927 | /* 157781 */ GIR_RootConstrainSelectedInstOperands, |
| 55928 | /* 157782 */ // GIR_Coverage, 6563, |
| 55929 | /* 157782 */ GIR_Done, |
| 55930 | /* 157783 */ // Label 3434: @157783 |
| 55931 | /* 157783 */ GIM_Reject, |
| 55932 | /* 157784 */ // Label 3432: @157784 |
| 55933 | /* 157784 */ GIM_Reject, |
| 55934 | /* 157785 */ // Label 3348: @157785 |
| 55935 | /* 157785 */ GIM_Reject, |
| 55936 | /* 157786 */ // Label 43: @157786 |
| 55937 | /* 157786 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3448*/ GIMT_Encode4(163699), |
| 55938 | /* 157797 */ /*GILLT_s16*//*Label 3435*/ GIMT_Encode4(157881), |
| 55939 | /* 157801 */ /*GILLT_s32*//*Label 3436*/ GIMT_Encode4(158041), |
| 55940 | /* 157805 */ /*GILLT_s64*//*Label 3437*/ GIMT_Encode4(159438), |
| 55941 | /* 157809 */ /*GILLT_s80*//*Label 3438*/ GIMT_Encode4(160979), GIMT_Encode4(0), GIMT_Encode4(0), |
| 55942 | /* 157821 */ /*GILLT_v2s64*//*Label 3439*/ GIMT_Encode4(161545), GIMT_Encode4(0), |
| 55943 | /* 157829 */ /*GILLT_v4s32*//*Label 3440*/ GIMT_Encode4(161899), |
| 55944 | /* 157833 */ /*GILLT_v4s64*//*Label 3441*/ GIMT_Encode4(162253), GIMT_Encode4(0), |
| 55945 | /* 157841 */ /*GILLT_v8s16*//*Label 3442*/ GIMT_Encode4(162576), |
| 55946 | /* 157845 */ /*GILLT_v8s32*//*Label 3443*/ GIMT_Encode4(162736), |
| 55947 | /* 157849 */ /*GILLT_v8s64*//*Label 3444*/ GIMT_Encode4(163059), GIMT_Encode4(0), GIMT_Encode4(0), |
| 55948 | /* 157861 */ /*GILLT_v16s16*//*Label 3445*/ GIMT_Encode4(163219), |
| 55949 | /* 157865 */ /*GILLT_v16s32*//*Label 3446*/ GIMT_Encode4(163379), GIMT_Encode4(0), GIMT_Encode4(0), |
| 55950 | /* 157877 */ /*GILLT_v32s16*//*Label 3447*/ GIMT_Encode4(163539), |
| 55951 | /* 157881 */ // Label 3435: @157881 |
| 55952 | /* 157881 */ GIM_Try, /*On fail goto*//*Label 3449*/ GIMT_Encode4(158040), |
| 55953 | /* 157886 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 55954 | /* 157889 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 55955 | /* 157892 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 55956 | /* 157896 */ GIM_Try, /*On fail goto*//*Label 3450*/ GIMT_Encode4(157954), // Rule ID 24256 // |
| 55957 | /* 157901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 55958 | /* 157904 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55959 | /* 157908 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55960 | /* 157912 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55961 | /* 157915 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55962 | /* 157919 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55963 | /* 157923 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 55964 | /* 157927 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55965 | /* 157929 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55966 | /* 157936 */ // (fmul:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR16X:{ *:[f16] }:$src1) => (VMULSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55967 | /* 157936 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSHZrm), |
| 55968 | /* 157939 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55969 | /* 157941 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55970 | /* 157943 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55971 | /* 157947 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55972 | /* 157952 */ GIR_RootConstrainSelectedInstOperands, |
| 55973 | /* 157953 */ // GIR_Coverage, 24256, |
| 55974 | /* 157953 */ GIR_EraseRootFromParent_Done, |
| 55975 | /* 157954 */ // Label 3450: @157954 |
| 55976 | /* 157954 */ GIM_Try, /*On fail goto*//*Label 3451*/ GIMT_Encode4(158012), // Rule ID 6012 // |
| 55977 | /* 157959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 55978 | /* 157962 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 55979 | /* 157966 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55980 | /* 157970 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55981 | /* 157974 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55982 | /* 157977 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55983 | /* 157981 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55984 | /* 157985 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55985 | /* 157987 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55986 | /* 157994 */ // (fmul:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55987 | /* 157994 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSHZrm), |
| 55988 | /* 157997 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55989 | /* 157999 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55990 | /* 158001 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55991 | /* 158005 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55992 | /* 158010 */ GIR_RootConstrainSelectedInstOperands, |
| 55993 | /* 158011 */ // GIR_Coverage, 6012, |
| 55994 | /* 158011 */ GIR_EraseRootFromParent_Done, |
| 55995 | /* 158012 */ // Label 3451: @158012 |
| 55996 | /* 158012 */ GIM_Try, /*On fail goto*//*Label 3452*/ GIMT_Encode4(158039), // Rule ID 6010 // |
| 55997 | /* 158017 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 55998 | /* 158020 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 55999 | /* 158024 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 56000 | /* 158028 */ // (fmul:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VMULSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 56001 | /* 158028 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSHZrr), |
| 56002 | /* 158033 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56003 | /* 158037 */ GIR_RootConstrainSelectedInstOperands, |
| 56004 | /* 158038 */ // GIR_Coverage, 6010, |
| 56005 | /* 158038 */ GIR_Done, |
| 56006 | /* 158039 */ // Label 3452: @158039 |
| 56007 | /* 158039 */ GIM_Reject, |
| 56008 | /* 158040 */ // Label 3449: @158040 |
| 56009 | /* 158040 */ GIM_Reject, |
| 56010 | /* 158041 */ // Label 3436: @158041 |
| 56011 | /* 158041 */ GIM_Try, /*On fail goto*//*Label 3453*/ GIMT_Encode4(159437), |
| 56012 | /* 158046 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 56013 | /* 158049 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 56014 | /* 158052 */ GIM_Try, /*On fail goto*//*Label 3454*/ GIMT_Encode4(158134), // Rule ID 26024 // |
| 56015 | /* 158057 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 56016 | /* 158060 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56017 | /* 158064 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56018 | /* 158068 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56019 | /* 158072 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 56020 | /* 158076 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56021 | /* 158080 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56022 | /* 158084 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56023 | /* 158087 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56024 | /* 158091 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56025 | /* 158098 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56026 | /* 158102 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56027 | /* 158106 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56028 | /* 158108 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56029 | /* 158115 */ // (fmul:{ *:[f32] } (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), FR32:{ *:[f32] }:$src1) => (MULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56030 | /* 158115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 56031 | /* 158118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56032 | /* 158120 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56033 | /* 158122 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56034 | /* 158126 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56035 | /* 158132 */ GIR_RootConstrainSelectedInstOperands, |
| 56036 | /* 158133 */ // GIR_Coverage, 26024, |
| 56037 | /* 158133 */ GIR_EraseRootFromParent_Done, |
| 56038 | /* 158134 */ // Label 3454: @158134 |
| 56039 | /* 158134 */ GIM_Try, /*On fail goto*//*Label 3455*/ GIMT_Encode4(158216), // Rule ID 26025 // |
| 56040 | /* 158139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56041 | /* 158142 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56042 | /* 158146 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56043 | /* 158150 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56044 | /* 158154 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 56045 | /* 158158 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56046 | /* 158162 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56047 | /* 158166 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56048 | /* 158169 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56049 | /* 158173 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56050 | /* 158180 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56051 | /* 158184 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56052 | /* 158188 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56053 | /* 158190 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56054 | /* 158197 */ // (fmul:{ *:[f32] } (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), FR32:{ *:[f32] }:$src1) => (VMULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56055 | /* 158197 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 56056 | /* 158200 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56057 | /* 158202 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56058 | /* 158204 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56059 | /* 158208 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56060 | /* 158214 */ GIR_RootConstrainSelectedInstOperands, |
| 56061 | /* 158215 */ // GIR_Coverage, 26025, |
| 56062 | /* 158215 */ GIR_EraseRootFromParent_Done, |
| 56063 | /* 158216 */ // Label 3455: @158216 |
| 56064 | /* 158216 */ GIM_Try, /*On fail goto*//*Label 3456*/ GIMT_Encode4(158298), // Rule ID 26026 // |
| 56065 | /* 158221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56066 | /* 158224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56067 | /* 158228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56068 | /* 158232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56069 | /* 158236 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 56070 | /* 158240 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56071 | /* 158244 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56072 | /* 158248 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56073 | /* 158251 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56074 | /* 158255 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56075 | /* 158262 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56076 | /* 158266 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56077 | /* 158270 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56078 | /* 158272 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56079 | /* 158279 */ // (fmul:{ *:[f32] } (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>), FR32X:{ *:[f32] }:$src1) => (VMULSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56080 | /* 158279 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 56081 | /* 158282 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56082 | /* 158284 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56083 | /* 158286 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56084 | /* 158290 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56085 | /* 158296 */ GIR_RootConstrainSelectedInstOperands, |
| 56086 | /* 158297 */ // GIR_Coverage, 26026, |
| 56087 | /* 158297 */ GIR_EraseRootFromParent_Done, |
| 56088 | /* 158298 */ // Label 3456: @158298 |
| 56089 | /* 158298 */ GIM_Try, /*On fail goto*//*Label 3457*/ GIMT_Encode4(158380), // Rule ID 22479 // |
| 56090 | /* 158303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 56091 | /* 158306 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56092 | /* 158310 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56093 | /* 158314 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56094 | /* 158318 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56095 | /* 158322 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 56096 | /* 158326 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56097 | /* 158330 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56098 | /* 158334 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56099 | /* 158337 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56100 | /* 158341 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56101 | /* 158348 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56102 | /* 158352 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56103 | /* 158354 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56104 | /* 158361 */ // (fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (MULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56105 | /* 158361 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 56106 | /* 158364 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56107 | /* 158366 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56108 | /* 158368 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56109 | /* 158372 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56110 | /* 158378 */ GIR_RootConstrainSelectedInstOperands, |
| 56111 | /* 158379 */ // GIR_Coverage, 22479, |
| 56112 | /* 158379 */ GIR_EraseRootFromParent_Done, |
| 56113 | /* 158380 */ // Label 3457: @158380 |
| 56114 | /* 158380 */ GIM_Try, /*On fail goto*//*Label 3458*/ GIMT_Encode4(158462), // Rule ID 22480 // |
| 56115 | /* 158385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56116 | /* 158388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56117 | /* 158392 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56118 | /* 158396 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56119 | /* 158400 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56120 | /* 158404 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 56121 | /* 158408 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56122 | /* 158412 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56123 | /* 158416 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56124 | /* 158419 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56125 | /* 158423 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56126 | /* 158430 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56127 | /* 158434 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56128 | /* 158436 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56129 | /* 158443 */ // (fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (VMULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56130 | /* 158443 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 56131 | /* 158446 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56132 | /* 158448 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56133 | /* 158450 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56134 | /* 158454 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56135 | /* 158460 */ GIR_RootConstrainSelectedInstOperands, |
| 56136 | /* 158461 */ // GIR_Coverage, 22480, |
| 56137 | /* 158461 */ GIR_EraseRootFromParent_Done, |
| 56138 | /* 158462 */ // Label 3458: @158462 |
| 56139 | /* 158462 */ GIM_Try, /*On fail goto*//*Label 3459*/ GIMT_Encode4(158544), // Rule ID 22481 // |
| 56140 | /* 158467 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56141 | /* 158470 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56142 | /* 158474 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56143 | /* 158478 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56144 | /* 158482 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56145 | /* 158486 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 56146 | /* 158490 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56147 | /* 158494 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56148 | /* 158498 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56149 | /* 158501 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56150 | /* 158505 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56151 | /* 158512 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56152 | /* 158516 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56153 | /* 158518 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56154 | /* 158525 */ // (fmul:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (VMULSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56155 | /* 158525 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 56156 | /* 158528 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56157 | /* 158530 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56158 | /* 158532 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56159 | /* 158536 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56160 | /* 158542 */ GIR_RootConstrainSelectedInstOperands, |
| 56161 | /* 158543 */ // GIR_Coverage, 22481, |
| 56162 | /* 158543 */ GIR_EraseRootFromParent_Done, |
| 56163 | /* 158544 */ // Label 3459: @158544 |
| 56164 | /* 158544 */ GIM_Try, /*On fail goto*//*Label 3460*/ GIMT_Encode4(158609), // Rule ID 23269 // |
| 56165 | /* 158549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 56166 | /* 158552 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56167 | /* 158556 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56168 | /* 158560 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56169 | /* 158564 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 56170 | /* 158571 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56171 | /* 158575 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56172 | /* 158579 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56173 | /* 158581 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56174 | /* 158588 */ // (fmul:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (MUL_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56175 | /* 158588 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m32), |
| 56176 | /* 158591 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56177 | /* 158593 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56178 | /* 158595 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56179 | /* 158599 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56180 | /* 158602 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56181 | /* 158607 */ GIR_RootConstrainSelectedInstOperands, |
| 56182 | /* 158608 */ // GIR_Coverage, 23269, |
| 56183 | /* 158608 */ GIR_EraseRootFromParent_Done, |
| 56184 | /* 158609 */ // Label 3460: @158609 |
| 56185 | /* 158609 */ GIM_Try, /*On fail goto*//*Label 3461*/ GIMT_Encode4(158674), // Rule ID 23271 // |
| 56186 | /* 158614 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 56187 | /* 158617 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56188 | /* 158621 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56189 | /* 158625 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56190 | /* 158629 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56191 | /* 158636 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56192 | /* 158640 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56193 | /* 158644 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56194 | /* 158646 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56195 | /* 158653 */ // (fmul:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (MUL_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56196 | /* 158653 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m32), |
| 56197 | /* 158656 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56198 | /* 158658 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56199 | /* 158660 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56200 | /* 158664 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56201 | /* 158667 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56202 | /* 158672 */ GIR_RootConstrainSelectedInstOperands, |
| 56203 | /* 158673 */ // GIR_Coverage, 23271, |
| 56204 | /* 158673 */ GIR_EraseRootFromParent_Done, |
| 56205 | /* 158674 */ // Label 3461: @158674 |
| 56206 | /* 158674 */ GIM_Try, /*On fail goto*//*Label 3462*/ GIMT_Encode4(158739), // Rule ID 23259 // |
| 56207 | /* 158679 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 56208 | /* 158682 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56209 | /* 158686 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56210 | /* 158690 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56211 | /* 158694 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56212 | /* 158697 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56213 | /* 158701 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56214 | /* 158705 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56215 | /* 158709 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56216 | /* 158711 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56217 | /* 158718 */ // (fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP32:{ *:[f32] }:$src1) => (MUL_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56218 | /* 158718 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32m), |
| 56219 | /* 158721 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56220 | /* 158723 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56221 | /* 158725 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56222 | /* 158729 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56223 | /* 158732 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56224 | /* 158737 */ GIR_RootConstrainSelectedInstOperands, |
| 56225 | /* 158738 */ // GIR_Coverage, 23259, |
| 56226 | /* 158738 */ GIR_EraseRootFromParent_Done, |
| 56227 | /* 158739 */ // Label 3462: @158739 |
| 56228 | /* 158739 */ GIM_Try, /*On fail goto*//*Label 3463*/ GIMT_Encode4(158801), // Rule ID 23402 // |
| 56229 | /* 158744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56230 | /* 158747 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56231 | /* 158751 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56232 | /* 158755 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56233 | /* 158759 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56234 | /* 158762 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56235 | /* 158766 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56236 | /* 158770 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56237 | /* 158774 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56238 | /* 158776 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56239 | /* 158783 */ // (fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (VMULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56240 | /* 158783 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 56241 | /* 158786 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56242 | /* 158788 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56243 | /* 158790 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56244 | /* 158794 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56245 | /* 158799 */ GIR_RootConstrainSelectedInstOperands, |
| 56246 | /* 158800 */ // GIR_Coverage, 23402, |
| 56247 | /* 158800 */ GIR_EraseRootFromParent_Done, |
| 56248 | /* 158801 */ // Label 3463: @158801 |
| 56249 | /* 158801 */ GIM_Try, /*On fail goto*//*Label 3464*/ GIMT_Encode4(158863), // Rule ID 23406 // |
| 56250 | /* 158806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 56251 | /* 158809 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56252 | /* 158813 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56253 | /* 158817 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56254 | /* 158821 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56255 | /* 158824 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56256 | /* 158828 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56257 | /* 158832 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56258 | /* 158836 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56259 | /* 158838 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56260 | /* 158845 */ // (fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (MULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56261 | /* 158845 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 56262 | /* 158848 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56263 | /* 158850 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56264 | /* 158852 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56265 | /* 158856 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56266 | /* 158861 */ GIR_RootConstrainSelectedInstOperands, |
| 56267 | /* 158862 */ // GIR_Coverage, 23406, |
| 56268 | /* 158862 */ GIR_EraseRootFromParent_Done, |
| 56269 | /* 158863 */ // Label 3464: @158863 |
| 56270 | /* 158863 */ GIM_Try, /*On fail goto*//*Label 3465*/ GIMT_Encode4(158925), // Rule ID 24252 // |
| 56271 | /* 158868 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56272 | /* 158871 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56273 | /* 158875 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56274 | /* 158879 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56275 | /* 158883 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56276 | /* 158886 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56277 | /* 158890 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56278 | /* 158894 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56279 | /* 158898 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56280 | /* 158900 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56281 | /* 158907 */ // (fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32X:{ *:[f32] }:$src1) => (VMULSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56282 | /* 158907 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 56283 | /* 158910 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56284 | /* 158912 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56285 | /* 158914 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56286 | /* 158918 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56287 | /* 158923 */ GIR_RootConstrainSelectedInstOperands, |
| 56288 | /* 158924 */ // GIR_Coverage, 24252, |
| 56289 | /* 158924 */ GIR_EraseRootFromParent_Done, |
| 56290 | /* 158925 */ // Label 3465: @158925 |
| 56291 | /* 158925 */ GIM_Try, /*On fail goto*//*Label 3466*/ GIMT_Encode4(158990), // Rule ID 987 // |
| 56292 | /* 158930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 56293 | /* 158933 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56294 | /* 158937 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56295 | /* 158941 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56296 | /* 158945 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56297 | /* 158949 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 56298 | /* 158956 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56299 | /* 158960 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56300 | /* 158962 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56301 | /* 158969 */ // (fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56302 | /* 158969 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m32), |
| 56303 | /* 158972 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56304 | /* 158974 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56305 | /* 158976 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56306 | /* 158980 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56307 | /* 158983 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56308 | /* 158988 */ GIR_RootConstrainSelectedInstOperands, |
| 56309 | /* 158989 */ // GIR_Coverage, 987, |
| 56310 | /* 158989 */ GIR_EraseRootFromParent_Done, |
| 56311 | /* 158990 */ // Label 3466: @158990 |
| 56312 | /* 158990 */ GIM_Try, /*On fail goto*//*Label 3467*/ GIMT_Encode4(159055), // Rule ID 989 // |
| 56313 | /* 158995 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 56314 | /* 158998 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56315 | /* 159002 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56316 | /* 159006 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56317 | /* 159010 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56318 | /* 159014 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56319 | /* 159021 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56320 | /* 159025 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56321 | /* 159027 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56322 | /* 159034 */ // (fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56323 | /* 159034 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m32), |
| 56324 | /* 159037 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56325 | /* 159039 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56326 | /* 159041 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56327 | /* 159045 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56328 | /* 159048 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56329 | /* 159053 */ GIR_RootConstrainSelectedInstOperands, |
| 56330 | /* 159054 */ // GIR_Coverage, 989, |
| 56331 | /* 159054 */ GIR_EraseRootFromParent_Done, |
| 56332 | /* 159055 */ // Label 3467: @159055 |
| 56333 | /* 159055 */ GIM_Try, /*On fail goto*//*Label 3468*/ GIMT_Encode4(159120), // Rule ID 977 // |
| 56334 | /* 159060 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 56335 | /* 159063 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56336 | /* 159067 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56337 | /* 159071 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56338 | /* 159075 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56339 | /* 159079 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56340 | /* 159082 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56341 | /* 159086 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56342 | /* 159090 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56343 | /* 159092 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56344 | /* 159099 */ // (fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MUL_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56345 | /* 159099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32m), |
| 56346 | /* 159102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56347 | /* 159104 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56348 | /* 159106 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56349 | /* 159110 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56350 | /* 159113 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56351 | /* 159118 */ GIR_RootConstrainSelectedInstOperands, |
| 56352 | /* 159119 */ // GIR_Coverage, 977, |
| 56353 | /* 159119 */ GIR_EraseRootFromParent_Done, |
| 56354 | /* 159120 */ // Label 3468: @159120 |
| 56355 | /* 159120 */ GIM_Try, /*On fail goto*//*Label 3469*/ GIMT_Encode4(159182), // Rule ID 2201 // |
| 56356 | /* 159125 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56357 | /* 159128 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56358 | /* 159132 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56359 | /* 159136 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56360 | /* 159140 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56361 | /* 159144 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56362 | /* 159147 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56363 | /* 159151 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56364 | /* 159155 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56365 | /* 159157 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56366 | /* 159164 */ // (fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56367 | /* 159164 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 56368 | /* 159167 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56369 | /* 159169 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56370 | /* 159171 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56371 | /* 159175 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56372 | /* 159180 */ GIR_RootConstrainSelectedInstOperands, |
| 56373 | /* 159181 */ // GIR_Coverage, 2201, |
| 56374 | /* 159181 */ GIR_EraseRootFromParent_Done, |
| 56375 | /* 159182 */ // Label 3469: @159182 |
| 56376 | /* 159182 */ GIM_Try, /*On fail goto*//*Label 3470*/ GIMT_Encode4(159244), // Rule ID 2209 // |
| 56377 | /* 159187 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 56378 | /* 159190 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56379 | /* 159194 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56380 | /* 159198 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56381 | /* 159202 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56382 | /* 159206 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56383 | /* 159209 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56384 | /* 159213 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56385 | /* 159217 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56386 | /* 159219 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56387 | /* 159226 */ // (fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56388 | /* 159226 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 56389 | /* 159229 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56390 | /* 159231 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56391 | /* 159233 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56392 | /* 159237 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56393 | /* 159242 */ GIR_RootConstrainSelectedInstOperands, |
| 56394 | /* 159243 */ // GIR_Coverage, 2209, |
| 56395 | /* 159243 */ GIR_EraseRootFromParent_Done, |
| 56396 | /* 159244 */ // Label 3470: @159244 |
| 56397 | /* 159244 */ GIM_Try, /*On fail goto*//*Label 3471*/ GIMT_Encode4(159306), // Rule ID 5974 // |
| 56398 | /* 159249 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56399 | /* 159252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56400 | /* 159256 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56401 | /* 159260 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56402 | /* 159264 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56403 | /* 159268 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56404 | /* 159271 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56405 | /* 159275 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56406 | /* 159279 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56407 | /* 159281 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56408 | /* 159288 */ // (fmul:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56409 | /* 159288 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 56410 | /* 159291 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56411 | /* 159293 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56412 | /* 159295 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56413 | /* 159299 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56414 | /* 159304 */ GIR_RootConstrainSelectedInstOperands, |
| 56415 | /* 159305 */ // GIR_Coverage, 5974, |
| 56416 | /* 159305 */ GIR_EraseRootFromParent_Done, |
| 56417 | /* 159306 */ // Label 3471: @159306 |
| 56418 | /* 159306 */ GIM_Try, /*On fail goto*//*Label 3472*/ GIMT_Encode4(159343), // Rule ID 899 // |
| 56419 | /* 159311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 56420 | /* 159314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56421 | /* 159318 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56422 | /* 159322 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 56423 | /* 159326 */ // (fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (MUL_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 56424 | /* 159326 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32), |
| 56425 | /* 159331 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 56426 | /* 159337 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 56427 | /* 159341 */ GIR_RootConstrainSelectedInstOperands, |
| 56428 | /* 159342 */ // GIR_Coverage, 899, |
| 56429 | /* 159342 */ GIR_Done, |
| 56430 | /* 159343 */ // Label 3472: @159343 |
| 56431 | /* 159343 */ GIM_Try, /*On fail goto*//*Label 3473*/ GIMT_Encode4(159374), // Rule ID 2199 // |
| 56432 | /* 159348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56433 | /* 159351 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56434 | /* 159355 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56435 | /* 159359 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56436 | /* 159363 */ // (fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VMULSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 56437 | /* 159363 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSSrr), |
| 56438 | /* 159368 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56439 | /* 159372 */ GIR_RootConstrainSelectedInstOperands, |
| 56440 | /* 159373 */ // GIR_Coverage, 2199, |
| 56441 | /* 159373 */ GIR_Done, |
| 56442 | /* 159374 */ // Label 3473: @159374 |
| 56443 | /* 159374 */ GIM_Try, /*On fail goto*//*Label 3474*/ GIMT_Encode4(159405), // Rule ID 2207 // |
| 56444 | /* 159379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 56445 | /* 159382 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56446 | /* 159386 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56447 | /* 159390 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 56448 | /* 159394 */ // (fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (MULSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 56449 | /* 159394 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULSSrr), |
| 56450 | /* 159399 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56451 | /* 159403 */ GIR_RootConstrainSelectedInstOperands, |
| 56452 | /* 159404 */ // GIR_Coverage, 2207, |
| 56453 | /* 159404 */ GIR_Done, |
| 56454 | /* 159405 */ // Label 3474: @159405 |
| 56455 | /* 159405 */ GIM_Try, /*On fail goto*//*Label 3475*/ GIMT_Encode4(159436), // Rule ID 5972 // |
| 56456 | /* 159410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56457 | /* 159413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56458 | /* 159417 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56459 | /* 159421 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 56460 | /* 159425 */ // (fmul:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VMULSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 56461 | /* 159425 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSSZrr), |
| 56462 | /* 159430 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56463 | /* 159434 */ GIR_RootConstrainSelectedInstOperands, |
| 56464 | /* 159435 */ // GIR_Coverage, 5972, |
| 56465 | /* 159435 */ GIR_Done, |
| 56466 | /* 159436 */ // Label 3475: @159436 |
| 56467 | /* 159436 */ GIM_Reject, |
| 56468 | /* 159437 */ // Label 3453: @159437 |
| 56469 | /* 159437 */ GIM_Reject, |
| 56470 | /* 159438 */ // Label 3437: @159438 |
| 56471 | /* 159438 */ GIM_Try, /*On fail goto*//*Label 3476*/ GIMT_Encode4(160978), |
| 56472 | /* 159443 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 56473 | /* 159446 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 56474 | /* 159449 */ GIM_Try, /*On fail goto*//*Label 3477*/ GIMT_Encode4(159531), // Rule ID 26027 // |
| 56475 | /* 159454 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 56476 | /* 159457 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56477 | /* 159461 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56478 | /* 159465 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56479 | /* 159469 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56480 | /* 159473 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56481 | /* 159477 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56482 | /* 159481 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56483 | /* 159484 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56484 | /* 159488 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56485 | /* 159495 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56486 | /* 159499 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56487 | /* 159503 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56488 | /* 159505 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56489 | /* 159512 */ // (fmul:{ *:[f64] } (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), FR64:{ *:[f64] }:$src1) => (MULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56490 | /* 159512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 56491 | /* 159515 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56492 | /* 159517 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56493 | /* 159519 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56494 | /* 159523 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56495 | /* 159529 */ GIR_RootConstrainSelectedInstOperands, |
| 56496 | /* 159530 */ // GIR_Coverage, 26027, |
| 56497 | /* 159530 */ GIR_EraseRootFromParent_Done, |
| 56498 | /* 159531 */ // Label 3477: @159531 |
| 56499 | /* 159531 */ GIM_Try, /*On fail goto*//*Label 3478*/ GIMT_Encode4(159613), // Rule ID 26028 // |
| 56500 | /* 159536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56501 | /* 159539 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56502 | /* 159543 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56503 | /* 159547 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56504 | /* 159551 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56505 | /* 159555 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56506 | /* 159559 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56507 | /* 159563 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56508 | /* 159566 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56509 | /* 159570 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56510 | /* 159577 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56511 | /* 159581 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56512 | /* 159585 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56513 | /* 159587 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56514 | /* 159594 */ // (fmul:{ *:[f64] } (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), FR64:{ *:[f64] }:$src1) => (VMULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56515 | /* 159594 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 56516 | /* 159597 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56517 | /* 159599 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56518 | /* 159601 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56519 | /* 159605 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56520 | /* 159611 */ GIR_RootConstrainSelectedInstOperands, |
| 56521 | /* 159612 */ // GIR_Coverage, 26028, |
| 56522 | /* 159612 */ GIR_EraseRootFromParent_Done, |
| 56523 | /* 159613 */ // Label 3478: @159613 |
| 56524 | /* 159613 */ GIM_Try, /*On fail goto*//*Label 3479*/ GIMT_Encode4(159695), // Rule ID 26029 // |
| 56525 | /* 159618 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56526 | /* 159621 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56527 | /* 159625 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56528 | /* 159629 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56529 | /* 159633 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56530 | /* 159637 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56531 | /* 159641 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56532 | /* 159645 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56533 | /* 159648 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56534 | /* 159652 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56535 | /* 159659 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56536 | /* 159663 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56537 | /* 159667 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56538 | /* 159669 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56539 | /* 159676 */ // (fmul:{ *:[f64] } (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>), FR64X:{ *:[f64] }:$src1) => (VMULSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56540 | /* 159676 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 56541 | /* 159679 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56542 | /* 159681 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56543 | /* 159683 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56544 | /* 159687 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56545 | /* 159693 */ GIR_RootConstrainSelectedInstOperands, |
| 56546 | /* 159694 */ // GIR_Coverage, 26029, |
| 56547 | /* 159694 */ GIR_EraseRootFromParent_Done, |
| 56548 | /* 159695 */ // Label 3479: @159695 |
| 56549 | /* 159695 */ GIM_Try, /*On fail goto*//*Label 3480*/ GIMT_Encode4(159777), // Rule ID 22482 // |
| 56550 | /* 159700 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 56551 | /* 159703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56552 | /* 159707 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56553 | /* 159711 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56554 | /* 159715 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56555 | /* 159719 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56556 | /* 159723 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56557 | /* 159727 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56558 | /* 159731 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56559 | /* 159734 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56560 | /* 159738 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56561 | /* 159745 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56562 | /* 159749 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56563 | /* 159751 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56564 | /* 159758 */ // (fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (MULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56565 | /* 159758 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 56566 | /* 159761 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56567 | /* 159763 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56568 | /* 159765 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56569 | /* 159769 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56570 | /* 159775 */ GIR_RootConstrainSelectedInstOperands, |
| 56571 | /* 159776 */ // GIR_Coverage, 22482, |
| 56572 | /* 159776 */ GIR_EraseRootFromParent_Done, |
| 56573 | /* 159777 */ // Label 3480: @159777 |
| 56574 | /* 159777 */ GIM_Try, /*On fail goto*//*Label 3481*/ GIMT_Encode4(159859), // Rule ID 22483 // |
| 56575 | /* 159782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56576 | /* 159785 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56577 | /* 159789 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56578 | /* 159793 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56579 | /* 159797 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56580 | /* 159801 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56581 | /* 159805 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56582 | /* 159809 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56583 | /* 159813 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56584 | /* 159816 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56585 | /* 159820 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56586 | /* 159827 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56587 | /* 159831 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56588 | /* 159833 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56589 | /* 159840 */ // (fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (VMULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56590 | /* 159840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 56591 | /* 159843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56592 | /* 159845 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56593 | /* 159847 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56594 | /* 159851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56595 | /* 159857 */ GIR_RootConstrainSelectedInstOperands, |
| 56596 | /* 159858 */ // GIR_Coverage, 22483, |
| 56597 | /* 159858 */ GIR_EraseRootFromParent_Done, |
| 56598 | /* 159859 */ // Label 3481: @159859 |
| 56599 | /* 159859 */ GIM_Try, /*On fail goto*//*Label 3482*/ GIMT_Encode4(159941), // Rule ID 22484 // |
| 56600 | /* 159864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56601 | /* 159867 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56602 | /* 159871 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56603 | /* 159875 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56604 | /* 159879 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56605 | /* 159883 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56606 | /* 159887 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56607 | /* 159891 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56608 | /* 159895 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56609 | /* 159898 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56610 | /* 159902 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56611 | /* 159909 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56612 | /* 159913 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56613 | /* 159915 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56614 | /* 159922 */ // (fmul:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (VMULSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56615 | /* 159922 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 56616 | /* 159925 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56617 | /* 159927 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56618 | /* 159929 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56619 | /* 159933 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56620 | /* 159939 */ GIR_RootConstrainSelectedInstOperands, |
| 56621 | /* 159940 */ // GIR_Coverage, 22484, |
| 56622 | /* 159940 */ GIR_EraseRootFromParent_Done, |
| 56623 | /* 159941 */ // Label 3482: @159941 |
| 56624 | /* 159941 */ GIM_Try, /*On fail goto*//*Label 3483*/ GIMT_Encode4(160006), // Rule ID 23273 // |
| 56625 | /* 159946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56626 | /* 159949 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56627 | /* 159953 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56628 | /* 159957 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56629 | /* 159961 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 56630 | /* 159968 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56631 | /* 159972 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56632 | /* 159976 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56633 | /* 159978 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56634 | /* 159985 */ // (fmul:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (MUL_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56635 | /* 159985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m64), |
| 56636 | /* 159988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56637 | /* 159990 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56638 | /* 159992 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56639 | /* 159996 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56640 | /* 159999 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56641 | /* 160004 */ GIR_RootConstrainSelectedInstOperands, |
| 56642 | /* 160005 */ // GIR_Coverage, 23273, |
| 56643 | /* 160005 */ GIR_EraseRootFromParent_Done, |
| 56644 | /* 160006 */ // Label 3483: @160006 |
| 56645 | /* 160006 */ GIM_Try, /*On fail goto*//*Label 3484*/ GIMT_Encode4(160071), // Rule ID 23275 // |
| 56646 | /* 160011 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56647 | /* 160014 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56648 | /* 160018 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56649 | /* 160022 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56650 | /* 160026 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56651 | /* 160033 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56652 | /* 160037 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56653 | /* 160041 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56654 | /* 160043 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56655 | /* 160050 */ // (fmul:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (MUL_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56656 | /* 160050 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m64), |
| 56657 | /* 160053 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56658 | /* 160055 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56659 | /* 160057 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56660 | /* 160061 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56661 | /* 160064 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56662 | /* 160069 */ GIR_RootConstrainSelectedInstOperands, |
| 56663 | /* 160070 */ // GIR_Coverage, 23275, |
| 56664 | /* 160070 */ GIR_EraseRootFromParent_Done, |
| 56665 | /* 160071 */ // Label 3484: @160071 |
| 56666 | /* 160071 */ GIM_Try, /*On fail goto*//*Label 3485*/ GIMT_Encode4(160136), // Rule ID 23261 // |
| 56667 | /* 160076 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56668 | /* 160079 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56669 | /* 160083 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56670 | /* 160087 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56671 | /* 160091 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56672 | /* 160094 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56673 | /* 160098 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56674 | /* 160102 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56675 | /* 160106 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56676 | /* 160108 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56677 | /* 160115 */ // (fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP64:{ *:[f64] }:$src1) => (MUL_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56678 | /* 160115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m), |
| 56679 | /* 160118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56680 | /* 160120 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56681 | /* 160122 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56682 | /* 160126 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56683 | /* 160129 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56684 | /* 160134 */ GIR_RootConstrainSelectedInstOperands, |
| 56685 | /* 160135 */ // GIR_Coverage, 23261, |
| 56686 | /* 160135 */ GIR_EraseRootFromParent_Done, |
| 56687 | /* 160136 */ // Label 3485: @160136 |
| 56688 | /* 160136 */ GIM_Try, /*On fail goto*//*Label 3486*/ GIMT_Encode4(160208), // Rule ID 23263 // |
| 56689 | /* 160141 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56690 | /* 160144 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56691 | /* 160148 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56692 | /* 160152 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56693 | /* 160156 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56694 | /* 160159 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56695 | /* 160163 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56696 | /* 160170 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56697 | /* 160174 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56698 | /* 160178 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56699 | /* 160180 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56700 | /* 160187 */ // (fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP64:{ *:[f64] }:$src1) => (MUL_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56701 | /* 160187 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m32), |
| 56702 | /* 160190 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56703 | /* 160192 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56704 | /* 160194 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56705 | /* 160198 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56706 | /* 160201 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56707 | /* 160206 */ GIR_RootConstrainSelectedInstOperands, |
| 56708 | /* 160207 */ // GIR_Coverage, 23263, |
| 56709 | /* 160207 */ GIR_EraseRootFromParent_Done, |
| 56710 | /* 160208 */ // Label 3486: @160208 |
| 56711 | /* 160208 */ GIM_Try, /*On fail goto*//*Label 3487*/ GIMT_Encode4(160270), // Rule ID 23404 // |
| 56712 | /* 160213 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56713 | /* 160216 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56714 | /* 160220 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56715 | /* 160224 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56716 | /* 160228 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56717 | /* 160231 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56718 | /* 160235 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56719 | /* 160239 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56720 | /* 160243 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56721 | /* 160245 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56722 | /* 160252 */ // (fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (VMULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56723 | /* 160252 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 56724 | /* 160255 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56725 | /* 160257 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56726 | /* 160259 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56727 | /* 160263 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56728 | /* 160268 */ GIR_RootConstrainSelectedInstOperands, |
| 56729 | /* 160269 */ // GIR_Coverage, 23404, |
| 56730 | /* 160269 */ GIR_EraseRootFromParent_Done, |
| 56731 | /* 160270 */ // Label 3487: @160270 |
| 56732 | /* 160270 */ GIM_Try, /*On fail goto*//*Label 3488*/ GIMT_Encode4(160332), // Rule ID 23408 // |
| 56733 | /* 160275 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 56734 | /* 160278 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56735 | /* 160282 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56736 | /* 160286 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56737 | /* 160290 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56738 | /* 160293 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56739 | /* 160297 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56740 | /* 160301 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56741 | /* 160305 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56742 | /* 160307 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56743 | /* 160314 */ // (fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (MULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56744 | /* 160314 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 56745 | /* 160317 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56746 | /* 160319 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56747 | /* 160321 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56748 | /* 160325 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56749 | /* 160330 */ GIR_RootConstrainSelectedInstOperands, |
| 56750 | /* 160331 */ // GIR_Coverage, 23408, |
| 56751 | /* 160331 */ GIR_EraseRootFromParent_Done, |
| 56752 | /* 160332 */ // Label 3488: @160332 |
| 56753 | /* 160332 */ GIM_Try, /*On fail goto*//*Label 3489*/ GIMT_Encode4(160394), // Rule ID 24254 // |
| 56754 | /* 160337 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56755 | /* 160340 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56756 | /* 160344 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56757 | /* 160348 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56758 | /* 160352 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56759 | /* 160355 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56760 | /* 160359 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56761 | /* 160363 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56762 | /* 160367 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56763 | /* 160369 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56764 | /* 160376 */ // (fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64X:{ *:[f64] }:$src1) => (VMULSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56765 | /* 160376 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 56766 | /* 160379 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56767 | /* 160381 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56768 | /* 160383 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56769 | /* 160387 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56770 | /* 160392 */ GIR_RootConstrainSelectedInstOperands, |
| 56771 | /* 160393 */ // GIR_Coverage, 24254, |
| 56772 | /* 160393 */ GIR_EraseRootFromParent_Done, |
| 56773 | /* 160394 */ // Label 3489: @160394 |
| 56774 | /* 160394 */ GIM_Try, /*On fail goto*//*Label 3490*/ GIMT_Encode4(160459), // Rule ID 991 // |
| 56775 | /* 160399 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56776 | /* 160402 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56777 | /* 160406 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56778 | /* 160410 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56779 | /* 160414 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56780 | /* 160418 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 56781 | /* 160425 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56782 | /* 160429 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56783 | /* 160431 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56784 | /* 160438 */ // (fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56785 | /* 160438 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m64), |
| 56786 | /* 160441 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56787 | /* 160443 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56788 | /* 160445 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56789 | /* 160449 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56790 | /* 160452 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56791 | /* 160457 */ GIR_RootConstrainSelectedInstOperands, |
| 56792 | /* 160458 */ // GIR_Coverage, 991, |
| 56793 | /* 160458 */ GIR_EraseRootFromParent_Done, |
| 56794 | /* 160459 */ // Label 3490: @160459 |
| 56795 | /* 160459 */ GIM_Try, /*On fail goto*//*Label 3491*/ GIMT_Encode4(160524), // Rule ID 993 // |
| 56796 | /* 160464 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56797 | /* 160467 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56798 | /* 160471 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56799 | /* 160475 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56800 | /* 160479 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56801 | /* 160483 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56802 | /* 160490 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56803 | /* 160494 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56804 | /* 160496 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56805 | /* 160503 */ // (fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56806 | /* 160503 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m64), |
| 56807 | /* 160506 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56808 | /* 160508 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56809 | /* 160510 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56810 | /* 160514 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56811 | /* 160517 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56812 | /* 160522 */ GIR_RootConstrainSelectedInstOperands, |
| 56813 | /* 160523 */ // GIR_Coverage, 993, |
| 56814 | /* 160523 */ GIR_EraseRootFromParent_Done, |
| 56815 | /* 160524 */ // Label 3491: @160524 |
| 56816 | /* 160524 */ GIM_Try, /*On fail goto*//*Label 3492*/ GIMT_Encode4(160589), // Rule ID 979 // |
| 56817 | /* 160529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56818 | /* 160532 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56819 | /* 160536 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56820 | /* 160540 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56821 | /* 160544 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56822 | /* 160548 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56823 | /* 160551 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56824 | /* 160555 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56825 | /* 160559 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56826 | /* 160561 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56827 | /* 160568 */ // (fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MUL_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56828 | /* 160568 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m), |
| 56829 | /* 160571 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56830 | /* 160573 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56831 | /* 160575 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56832 | /* 160579 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56833 | /* 160582 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56834 | /* 160587 */ GIR_RootConstrainSelectedInstOperands, |
| 56835 | /* 160588 */ // GIR_Coverage, 979, |
| 56836 | /* 160588 */ GIR_EraseRootFromParent_Done, |
| 56837 | /* 160589 */ // Label 3492: @160589 |
| 56838 | /* 160589 */ GIM_Try, /*On fail goto*//*Label 3493*/ GIMT_Encode4(160661), // Rule ID 981 // |
| 56839 | /* 160594 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56840 | /* 160597 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56841 | /* 160601 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56842 | /* 160605 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56843 | /* 160609 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56844 | /* 160613 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56845 | /* 160616 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56846 | /* 160620 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56847 | /* 160627 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56848 | /* 160631 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56849 | /* 160633 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56850 | /* 160640 */ // (fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (MUL_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56851 | /* 160640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m32), |
| 56852 | /* 160643 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56853 | /* 160645 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56854 | /* 160647 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56855 | /* 160651 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56856 | /* 160654 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56857 | /* 160659 */ GIR_RootConstrainSelectedInstOperands, |
| 56858 | /* 160660 */ // GIR_Coverage, 981, |
| 56859 | /* 160660 */ GIR_EraseRootFromParent_Done, |
| 56860 | /* 160661 */ // Label 3493: @160661 |
| 56861 | /* 160661 */ GIM_Try, /*On fail goto*//*Label 3494*/ GIMT_Encode4(160723), // Rule ID 2205 // |
| 56862 | /* 160666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56863 | /* 160669 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56864 | /* 160673 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56865 | /* 160677 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56866 | /* 160681 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56867 | /* 160685 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56868 | /* 160688 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56869 | /* 160692 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56870 | /* 160696 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56871 | /* 160698 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56872 | /* 160705 */ // (fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56873 | /* 160705 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 56874 | /* 160708 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56875 | /* 160710 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56876 | /* 160712 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56877 | /* 160716 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56878 | /* 160721 */ GIR_RootConstrainSelectedInstOperands, |
| 56879 | /* 160722 */ // GIR_Coverage, 2205, |
| 56880 | /* 160722 */ GIR_EraseRootFromParent_Done, |
| 56881 | /* 160723 */ // Label 3494: @160723 |
| 56882 | /* 160723 */ GIM_Try, /*On fail goto*//*Label 3495*/ GIMT_Encode4(160785), // Rule ID 2213 // |
| 56883 | /* 160728 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 56884 | /* 160731 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56885 | /* 160735 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56886 | /* 160739 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56887 | /* 160743 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56888 | /* 160747 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56889 | /* 160750 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56890 | /* 160754 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56891 | /* 160758 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56892 | /* 160760 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56893 | /* 160767 */ // (fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56894 | /* 160767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 56895 | /* 160770 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56896 | /* 160772 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56897 | /* 160774 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56898 | /* 160778 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56899 | /* 160783 */ GIR_RootConstrainSelectedInstOperands, |
| 56900 | /* 160784 */ // GIR_Coverage, 2213, |
| 56901 | /* 160784 */ GIR_EraseRootFromParent_Done, |
| 56902 | /* 160785 */ // Label 3495: @160785 |
| 56903 | /* 160785 */ GIM_Try, /*On fail goto*//*Label 3496*/ GIMT_Encode4(160847), // Rule ID 5993 // |
| 56904 | /* 160790 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56905 | /* 160793 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56906 | /* 160797 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56907 | /* 160801 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56908 | /* 160805 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56909 | /* 160809 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56910 | /* 160812 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56911 | /* 160816 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56912 | /* 160820 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56913 | /* 160822 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56914 | /* 160829 */ // (fmul:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56915 | /* 160829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 56916 | /* 160832 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56917 | /* 160834 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56918 | /* 160836 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56919 | /* 160840 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56920 | /* 160845 */ GIR_RootConstrainSelectedInstOperands, |
| 56921 | /* 160846 */ // GIR_Coverage, 5993, |
| 56922 | /* 160846 */ GIR_EraseRootFromParent_Done, |
| 56923 | /* 160847 */ // Label 3496: @160847 |
| 56924 | /* 160847 */ GIM_Try, /*On fail goto*//*Label 3497*/ GIMT_Encode4(160884), // Rule ID 901 // |
| 56925 | /* 160852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56926 | /* 160855 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56927 | /* 160859 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56928 | /* 160863 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56929 | /* 160867 */ // (fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (MUL_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 56930 | /* 160867 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64), |
| 56931 | /* 160872 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 56932 | /* 160878 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 56933 | /* 160882 */ GIR_RootConstrainSelectedInstOperands, |
| 56934 | /* 160883 */ // GIR_Coverage, 901, |
| 56935 | /* 160883 */ GIR_Done, |
| 56936 | /* 160884 */ // Label 3497: @160884 |
| 56937 | /* 160884 */ GIM_Try, /*On fail goto*//*Label 3498*/ GIMT_Encode4(160915), // Rule ID 2203 // |
| 56938 | /* 160889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56939 | /* 160892 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56940 | /* 160896 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56941 | /* 160900 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56942 | /* 160904 */ // (fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VMULSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 56943 | /* 160904 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSDrr), |
| 56944 | /* 160909 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56945 | /* 160913 */ GIR_RootConstrainSelectedInstOperands, |
| 56946 | /* 160914 */ // GIR_Coverage, 2203, |
| 56947 | /* 160914 */ GIR_Done, |
| 56948 | /* 160915 */ // Label 3498: @160915 |
| 56949 | /* 160915 */ GIM_Try, /*On fail goto*//*Label 3499*/ GIMT_Encode4(160946), // Rule ID 2211 // |
| 56950 | /* 160920 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 56951 | /* 160923 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56952 | /* 160927 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56953 | /* 160931 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56954 | /* 160935 */ // (fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (MULSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 56955 | /* 160935 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULSDrr), |
| 56956 | /* 160940 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56957 | /* 160944 */ GIR_RootConstrainSelectedInstOperands, |
| 56958 | /* 160945 */ // GIR_Coverage, 2211, |
| 56959 | /* 160945 */ GIR_Done, |
| 56960 | /* 160946 */ // Label 3499: @160946 |
| 56961 | /* 160946 */ GIM_Try, /*On fail goto*//*Label 3500*/ GIMT_Encode4(160977), // Rule ID 5991 // |
| 56962 | /* 160951 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56963 | /* 160954 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56964 | /* 160958 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56965 | /* 160962 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56966 | /* 160966 */ // (fmul:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VMULSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 56967 | /* 160966 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSDZrr), |
| 56968 | /* 160971 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56969 | /* 160975 */ GIR_RootConstrainSelectedInstOperands, |
| 56970 | /* 160976 */ // GIR_Coverage, 5991, |
| 56971 | /* 160976 */ GIR_Done, |
| 56972 | /* 160977 */ // Label 3500: @160977 |
| 56973 | /* 160977 */ GIM_Reject, |
| 56974 | /* 160978 */ // Label 3476: @160978 |
| 56975 | /* 160978 */ GIM_Reject, |
| 56976 | /* 160979 */ // Label 3438: @160979 |
| 56977 | /* 160979 */ GIM_Try, /*On fail goto*//*Label 3501*/ GIMT_Encode4(161544), |
| 56978 | /* 160984 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 56979 | /* 160987 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 56980 | /* 160990 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56981 | /* 160994 */ GIM_Try, /*On fail goto*//*Label 3502*/ GIMT_Encode4(161055), // Rule ID 23277 // |
| 56982 | /* 160999 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 56983 | /* 161002 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56984 | /* 161006 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56985 | /* 161010 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 56986 | /* 161017 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56987 | /* 161021 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56988 | /* 161025 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56989 | /* 161027 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56990 | /* 161034 */ // (fmul:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (MUL_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56991 | /* 161034 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m80), |
| 56992 | /* 161037 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56993 | /* 161039 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56994 | /* 161041 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56995 | /* 161045 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56996 | /* 161048 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56997 | /* 161053 */ GIR_RootConstrainSelectedInstOperands, |
| 56998 | /* 161054 */ // GIR_Coverage, 23277, |
| 56999 | /* 161054 */ GIR_EraseRootFromParent_Done, |
| 57000 | /* 161055 */ // Label 3502: @161055 |
| 57001 | /* 161055 */ GIM_Try, /*On fail goto*//*Label 3503*/ GIMT_Encode4(161116), // Rule ID 23279 // |
| 57002 | /* 161060 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 57003 | /* 161063 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57004 | /* 161067 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 57005 | /* 161071 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 57006 | /* 161078 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57007 | /* 161082 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 57008 | /* 161086 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57009 | /* 161088 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57010 | /* 161095 */ // (fmul:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (MUL_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57011 | /* 161095 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m80), |
| 57012 | /* 161098 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57013 | /* 161100 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57014 | /* 161102 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57015 | /* 161106 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 57016 | /* 161109 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57017 | /* 161114 */ GIR_RootConstrainSelectedInstOperands, |
| 57018 | /* 161115 */ // GIR_Coverage, 23279, |
| 57019 | /* 161115 */ GIR_EraseRootFromParent_Done, |
| 57020 | /* 161116 */ // Label 3503: @161116 |
| 57021 | /* 161116 */ GIM_Try, /*On fail goto*//*Label 3504*/ GIMT_Encode4(161184), // Rule ID 23265 // |
| 57022 | /* 161121 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 57023 | /* 161124 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57024 | /* 161128 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57025 | /* 161132 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57026 | /* 161135 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57027 | /* 161139 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 57028 | /* 161146 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57029 | /* 161150 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 57030 | /* 161154 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57031 | /* 161156 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57032 | /* 161163 */ // (fmul:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP80:{ *:[f80] }:$src1) => (MUL_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57033 | /* 161163 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m32), |
| 57034 | /* 161166 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57035 | /* 161168 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57036 | /* 161170 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57037 | /* 161174 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 57038 | /* 161177 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57039 | /* 161182 */ GIR_RootConstrainSelectedInstOperands, |
| 57040 | /* 161183 */ // GIR_Coverage, 23265, |
| 57041 | /* 161183 */ GIR_EraseRootFromParent_Done, |
| 57042 | /* 161184 */ // Label 3504: @161184 |
| 57043 | /* 161184 */ GIM_Try, /*On fail goto*//*Label 3505*/ GIMT_Encode4(161252), // Rule ID 23267 // |
| 57044 | /* 161189 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 57045 | /* 161192 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57046 | /* 161196 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57047 | /* 161200 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57048 | /* 161203 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57049 | /* 161207 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 57050 | /* 161214 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57051 | /* 161218 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 57052 | /* 161222 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57053 | /* 161224 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57054 | /* 161231 */ // (fmul:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>, RFP80:{ *:[f80] }:$src1) => (MUL_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57055 | /* 161231 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m64), |
| 57056 | /* 161234 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57057 | /* 161236 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57058 | /* 161238 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57059 | /* 161242 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 57060 | /* 161245 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57061 | /* 161250 */ GIR_RootConstrainSelectedInstOperands, |
| 57062 | /* 161251 */ // GIR_Coverage, 23267, |
| 57063 | /* 161251 */ GIR_EraseRootFromParent_Done, |
| 57064 | /* 161252 */ // Label 3505: @161252 |
| 57065 | /* 161252 */ GIM_Try, /*On fail goto*//*Label 3506*/ GIMT_Encode4(161313), // Rule ID 995 // |
| 57066 | /* 161257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 57067 | /* 161260 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 57068 | /* 161264 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57069 | /* 161268 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 57070 | /* 161272 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 57071 | /* 161279 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57072 | /* 161283 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57073 | /* 161285 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57074 | /* 161292 */ // (fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57075 | /* 161292 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m80), |
| 57076 | /* 161295 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57077 | /* 161297 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57078 | /* 161299 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57079 | /* 161303 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 57080 | /* 161306 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57081 | /* 161311 */ GIR_RootConstrainSelectedInstOperands, |
| 57082 | /* 161312 */ // GIR_Coverage, 995, |
| 57083 | /* 161312 */ GIR_EraseRootFromParent_Done, |
| 57084 | /* 161313 */ // Label 3506: @161313 |
| 57085 | /* 161313 */ GIM_Try, /*On fail goto*//*Label 3507*/ GIMT_Encode4(161374), // Rule ID 997 // |
| 57086 | /* 161318 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 57087 | /* 161321 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 57088 | /* 161325 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57089 | /* 161329 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 57090 | /* 161333 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 57091 | /* 161340 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57092 | /* 161344 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57093 | /* 161346 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57094 | /* 161353 */ // (fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57095 | /* 161353 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m80), |
| 57096 | /* 161356 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57097 | /* 161358 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57098 | /* 161360 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57099 | /* 161364 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 57100 | /* 161367 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57101 | /* 161372 */ GIR_RootConstrainSelectedInstOperands, |
| 57102 | /* 161373 */ // GIR_Coverage, 997, |
| 57103 | /* 161373 */ GIR_EraseRootFromParent_Done, |
| 57104 | /* 161374 */ // Label 3507: @161374 |
| 57105 | /* 161374 */ GIM_Try, /*On fail goto*//*Label 3508*/ GIMT_Encode4(161442), // Rule ID 983 // |
| 57106 | /* 161379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 57107 | /* 161382 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 57108 | /* 161386 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57109 | /* 161390 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57110 | /* 161394 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57111 | /* 161397 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57112 | /* 161401 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 57113 | /* 161408 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57114 | /* 161412 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57115 | /* 161414 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57116 | /* 161421 */ // (fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (MUL_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57117 | /* 161421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m32), |
| 57118 | /* 161424 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57119 | /* 161426 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57120 | /* 161428 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57121 | /* 161432 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 57122 | /* 161435 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57123 | /* 161440 */ GIR_RootConstrainSelectedInstOperands, |
| 57124 | /* 161441 */ // GIR_Coverage, 983, |
| 57125 | /* 161441 */ GIR_EraseRootFromParent_Done, |
| 57126 | /* 161442 */ // Label 3508: @161442 |
| 57127 | /* 161442 */ GIM_Try, /*On fail goto*//*Label 3509*/ GIMT_Encode4(161510), // Rule ID 985 // |
| 57128 | /* 161447 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 57129 | /* 161450 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 57130 | /* 161454 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57131 | /* 161458 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57132 | /* 161462 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57133 | /* 161465 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57134 | /* 161469 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 57135 | /* 161476 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57136 | /* 161480 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57137 | /* 161482 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57138 | /* 161489 */ // (fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>) => (MUL_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57139 | /* 161489 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m64), |
| 57140 | /* 161492 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57141 | /* 161494 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57142 | /* 161496 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57143 | /* 161500 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 57144 | /* 161503 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57145 | /* 161508 */ GIR_RootConstrainSelectedInstOperands, |
| 57146 | /* 161509 */ // GIR_Coverage, 985, |
| 57147 | /* 161509 */ GIR_EraseRootFromParent_Done, |
| 57148 | /* 161510 */ // Label 3509: @161510 |
| 57149 | /* 161510 */ GIM_Try, /*On fail goto*//*Label 3510*/ GIMT_Encode4(161543), // Rule ID 903 // |
| 57150 | /* 161515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 57151 | /* 161518 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 57152 | /* 161522 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 57153 | /* 161526 */ // (fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (MUL_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 57154 | /* 161526 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80), |
| 57155 | /* 161531 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 57156 | /* 161537 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 57157 | /* 161541 */ GIR_RootConstrainSelectedInstOperands, |
| 57158 | /* 161542 */ // GIR_Coverage, 903, |
| 57159 | /* 161542 */ GIR_Done, |
| 57160 | /* 161543 */ // Label 3510: @161543 |
| 57161 | /* 161543 */ GIM_Reject, |
| 57162 | /* 161544 */ // Label 3501: @161544 |
| 57163 | /* 161544 */ GIM_Reject, |
| 57164 | /* 161545 */ // Label 3439: @161545 |
| 57165 | /* 161545 */ GIM_Try, /*On fail goto*//*Label 3511*/ GIMT_Encode4(161898), |
| 57166 | /* 161550 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 57167 | /* 161553 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 57168 | /* 161556 */ GIM_Try, /*On fail goto*//*Label 3512*/ GIMT_Encode4(161618), // Rule ID 23392 // |
| 57169 | /* 161561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57170 | /* 161564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57171 | /* 161568 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57172 | /* 161572 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57173 | /* 161576 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57174 | /* 161579 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57175 | /* 161583 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57176 | /* 161587 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57177 | /* 161591 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57178 | /* 161593 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57179 | /* 161600 */ // (fmul:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1) => (VMULPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57180 | /* 161600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDrm), |
| 57181 | /* 161603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57182 | /* 161605 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57183 | /* 161607 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57184 | /* 161611 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57185 | /* 161616 */ GIR_RootConstrainSelectedInstOperands, |
| 57186 | /* 161617 */ // GIR_Coverage, 23392, |
| 57187 | /* 161617 */ GIR_EraseRootFromParent_Done, |
| 57188 | /* 161618 */ // Label 3512: @161618 |
| 57189 | /* 161618 */ GIM_Try, /*On fail goto*//*Label 3513*/ GIMT_Encode4(161680), // Rule ID 24368 // |
| 57190 | /* 161623 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57191 | /* 161626 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57192 | /* 161630 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57193 | /* 161634 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57194 | /* 161638 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57195 | /* 161641 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57196 | /* 161645 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57197 | /* 161649 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57198 | /* 161653 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57199 | /* 161655 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57200 | /* 161662 */ // (fmul:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2f64] }:$src1) => (VMULPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57201 | /* 161662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rm), |
| 57202 | /* 161665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57203 | /* 161667 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57204 | /* 161669 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57205 | /* 161673 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57206 | /* 161678 */ GIR_RootConstrainSelectedInstOperands, |
| 57207 | /* 161679 */ // GIR_Coverage, 24368, |
| 57208 | /* 161679 */ GIR_EraseRootFromParent_Done, |
| 57209 | /* 161680 */ // Label 3513: @161680 |
| 57210 | /* 161680 */ GIM_Try, /*On fail goto*//*Label 3514*/ GIMT_Encode4(161742), // Rule ID 2181 // |
| 57211 | /* 161685 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57212 | /* 161688 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57213 | /* 161692 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57214 | /* 161696 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57215 | /* 161700 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57216 | /* 161704 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57217 | /* 161707 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57218 | /* 161711 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57219 | /* 161715 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57220 | /* 161717 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57221 | /* 161724 */ // (fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57222 | /* 161724 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDrm), |
| 57223 | /* 161727 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57224 | /* 161729 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57225 | /* 161731 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57226 | /* 161735 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57227 | /* 161740 */ GIR_RootConstrainSelectedInstOperands, |
| 57228 | /* 161741 */ // GIR_Coverage, 2181, |
| 57229 | /* 161741 */ GIR_EraseRootFromParent_Done, |
| 57230 | /* 161742 */ // Label 3514: @161742 |
| 57231 | /* 161742 */ GIM_Try, /*On fail goto*//*Label 3515*/ GIMT_Encode4(161804), // Rule ID 6426 // |
| 57232 | /* 161747 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57233 | /* 161750 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57234 | /* 161754 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57235 | /* 161758 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57236 | /* 161762 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57237 | /* 161766 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57238 | /* 161769 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57239 | /* 161773 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57240 | /* 161777 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57241 | /* 161779 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57242 | /* 161786 */ // (fmul:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57243 | /* 161786 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rm), |
| 57244 | /* 161789 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57245 | /* 161791 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57246 | /* 161793 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57247 | /* 161797 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57248 | /* 161802 */ GIR_RootConstrainSelectedInstOperands, |
| 57249 | /* 161803 */ // GIR_Coverage, 6426, |
| 57250 | /* 161803 */ GIR_EraseRootFromParent_Done, |
| 57251 | /* 161804 */ // Label 3515: @161804 |
| 57252 | /* 161804 */ GIM_Try, /*On fail goto*//*Label 3516*/ GIMT_Encode4(161835), // Rule ID 2179 // |
| 57253 | /* 161809 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57254 | /* 161812 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57255 | /* 161816 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57256 | /* 161820 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57257 | /* 161824 */ // (fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VMULPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 57258 | /* 161824 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDrr), |
| 57259 | /* 161829 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57260 | /* 161833 */ GIR_RootConstrainSelectedInstOperands, |
| 57261 | /* 161834 */ // GIR_Coverage, 2179, |
| 57262 | /* 161834 */ GIR_Done, |
| 57263 | /* 161835 */ // Label 3516: @161835 |
| 57264 | /* 161835 */ GIM_Try, /*On fail goto*//*Label 3517*/ GIMT_Encode4(161866), // Rule ID 2195 // |
| 57265 | /* 161840 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 57266 | /* 161843 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57267 | /* 161847 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57268 | /* 161851 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57269 | /* 161855 */ // (fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (MULPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 57270 | /* 161855 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULPDrr), |
| 57271 | /* 161860 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57272 | /* 161864 */ GIR_RootConstrainSelectedInstOperands, |
| 57273 | /* 161865 */ // GIR_Coverage, 2195, |
| 57274 | /* 161865 */ GIR_Done, |
| 57275 | /* 161866 */ // Label 3517: @161866 |
| 57276 | /* 161866 */ GIM_Try, /*On fail goto*//*Label 3518*/ GIMT_Encode4(161897), // Rule ID 6422 // |
| 57277 | /* 161871 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57278 | /* 161874 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57279 | /* 161878 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57280 | /* 161882 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57281 | /* 161886 */ // (fmul:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VMULPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 57282 | /* 161886 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rr), |
| 57283 | /* 161891 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57284 | /* 161895 */ GIR_RootConstrainSelectedInstOperands, |
| 57285 | /* 161896 */ // GIR_Coverage, 6422, |
| 57286 | /* 161896 */ GIR_Done, |
| 57287 | /* 161897 */ // Label 3518: @161897 |
| 57288 | /* 161897 */ GIM_Reject, |
| 57289 | /* 161898 */ // Label 3511: @161898 |
| 57290 | /* 161898 */ GIM_Reject, |
| 57291 | /* 161899 */ // Label 3440: @161899 |
| 57292 | /* 161899 */ GIM_Try, /*On fail goto*//*Label 3519*/ GIMT_Encode4(162252), |
| 57293 | /* 161904 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 57294 | /* 161907 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 57295 | /* 161910 */ GIM_Try, /*On fail goto*//*Label 3520*/ GIMT_Encode4(161972), // Rule ID 23390 // |
| 57296 | /* 161915 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57297 | /* 161918 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57298 | /* 161922 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57299 | /* 161926 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57300 | /* 161930 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57301 | /* 161933 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57302 | /* 161937 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57303 | /* 161941 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57304 | /* 161945 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57305 | /* 161947 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57306 | /* 161954 */ // (fmul:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1) => (VMULPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57307 | /* 161954 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSrm), |
| 57308 | /* 161957 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57309 | /* 161959 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57310 | /* 161961 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57311 | /* 161965 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57312 | /* 161970 */ GIR_RootConstrainSelectedInstOperands, |
| 57313 | /* 161971 */ // GIR_Coverage, 23390, |
| 57314 | /* 161971 */ GIR_EraseRootFromParent_Done, |
| 57315 | /* 161972 */ // Label 3520: @161972 |
| 57316 | /* 161972 */ GIM_Try, /*On fail goto*//*Label 3521*/ GIMT_Encode4(162034), // Rule ID 24352 // |
| 57317 | /* 161977 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57318 | /* 161980 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57319 | /* 161984 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57320 | /* 161988 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57321 | /* 161992 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57322 | /* 161995 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57323 | /* 161999 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57324 | /* 162003 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57325 | /* 162007 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57326 | /* 162009 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57327 | /* 162016 */ // (fmul:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4f32] }:$src1) => (VMULPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57328 | /* 162016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rm), |
| 57329 | /* 162019 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57330 | /* 162021 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57331 | /* 162023 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57332 | /* 162027 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57333 | /* 162032 */ GIR_RootConstrainSelectedInstOperands, |
| 57334 | /* 162033 */ // GIR_Coverage, 24352, |
| 57335 | /* 162033 */ GIR_EraseRootFromParent_Done, |
| 57336 | /* 162034 */ // Label 3521: @162034 |
| 57337 | /* 162034 */ GIM_Try, /*On fail goto*//*Label 3522*/ GIMT_Encode4(162096), // Rule ID 2177 // |
| 57338 | /* 162039 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57339 | /* 162042 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57340 | /* 162046 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57341 | /* 162050 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57342 | /* 162054 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57343 | /* 162058 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57344 | /* 162061 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57345 | /* 162065 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57346 | /* 162069 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57347 | /* 162071 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57348 | /* 162078 */ // (fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57349 | /* 162078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSrm), |
| 57350 | /* 162081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57351 | /* 162083 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57352 | /* 162085 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57353 | /* 162089 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57354 | /* 162094 */ GIR_RootConstrainSelectedInstOperands, |
| 57355 | /* 162095 */ // GIR_Coverage, 2177, |
| 57356 | /* 162095 */ GIR_EraseRootFromParent_Done, |
| 57357 | /* 162096 */ // Label 3522: @162096 |
| 57358 | /* 162096 */ GIM_Try, /*On fail goto*//*Label 3523*/ GIMT_Encode4(162158), // Rule ID 6402 // |
| 57359 | /* 162101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57360 | /* 162104 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57361 | /* 162108 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57362 | /* 162112 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57363 | /* 162116 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57364 | /* 162120 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57365 | /* 162123 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57366 | /* 162127 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57367 | /* 162131 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57368 | /* 162133 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57369 | /* 162140 */ // (fmul:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57370 | /* 162140 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rm), |
| 57371 | /* 162143 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57372 | /* 162145 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57373 | /* 162147 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57374 | /* 162151 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57375 | /* 162156 */ GIR_RootConstrainSelectedInstOperands, |
| 57376 | /* 162157 */ // GIR_Coverage, 6402, |
| 57377 | /* 162157 */ GIR_EraseRootFromParent_Done, |
| 57378 | /* 162158 */ // Label 3523: @162158 |
| 57379 | /* 162158 */ GIM_Try, /*On fail goto*//*Label 3524*/ GIMT_Encode4(162189), // Rule ID 2175 // |
| 57380 | /* 162163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57381 | /* 162166 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57382 | /* 162170 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57383 | /* 162174 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57384 | /* 162178 */ // (fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VMULPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 57385 | /* 162178 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSrr), |
| 57386 | /* 162183 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57387 | /* 162187 */ GIR_RootConstrainSelectedInstOperands, |
| 57388 | /* 162188 */ // GIR_Coverage, 2175, |
| 57389 | /* 162188 */ GIR_Done, |
| 57390 | /* 162189 */ // Label 3524: @162189 |
| 57391 | /* 162189 */ GIM_Try, /*On fail goto*//*Label 3525*/ GIMT_Encode4(162220), // Rule ID 2191 // |
| 57392 | /* 162194 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 57393 | /* 162197 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57394 | /* 162201 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57395 | /* 162205 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 57396 | /* 162209 */ // (fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (MULPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 57397 | /* 162209 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULPSrr), |
| 57398 | /* 162214 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57399 | /* 162218 */ GIR_RootConstrainSelectedInstOperands, |
| 57400 | /* 162219 */ // GIR_Coverage, 2191, |
| 57401 | /* 162219 */ GIR_Done, |
| 57402 | /* 162220 */ // Label 3525: @162220 |
| 57403 | /* 162220 */ GIM_Try, /*On fail goto*//*Label 3526*/ GIMT_Encode4(162251), // Rule ID 6398 // |
| 57404 | /* 162225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57405 | /* 162228 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57406 | /* 162232 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57407 | /* 162236 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57408 | /* 162240 */ // (fmul:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VMULPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 57409 | /* 162240 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rr), |
| 57410 | /* 162245 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57411 | /* 162249 */ GIR_RootConstrainSelectedInstOperands, |
| 57412 | /* 162250 */ // GIR_Coverage, 6398, |
| 57413 | /* 162250 */ GIR_Done, |
| 57414 | /* 162251 */ // Label 3526: @162251 |
| 57415 | /* 162251 */ GIM_Reject, |
| 57416 | /* 162252 */ // Label 3519: @162252 |
| 57417 | /* 162252 */ GIM_Reject, |
| 57418 | /* 162253 */ // Label 3441: @162253 |
| 57419 | /* 162253 */ GIM_Try, /*On fail goto*//*Label 3527*/ GIMT_Encode4(162575), |
| 57420 | /* 162258 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 57421 | /* 162261 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 57422 | /* 162264 */ GIM_Try, /*On fail goto*//*Label 3528*/ GIMT_Encode4(162326), // Rule ID 23396 // |
| 57423 | /* 162269 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57424 | /* 162272 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57425 | /* 162276 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57426 | /* 162280 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57427 | /* 162284 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57428 | /* 162287 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57429 | /* 162291 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57430 | /* 162295 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57431 | /* 162299 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57432 | /* 162301 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57433 | /* 162308 */ // (fmul:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1) => (VMULPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57434 | /* 162308 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDYrm), |
| 57435 | /* 162311 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57436 | /* 162313 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57437 | /* 162315 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57438 | /* 162319 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57439 | /* 162324 */ GIR_RootConstrainSelectedInstOperands, |
| 57440 | /* 162325 */ // GIR_Coverage, 23396, |
| 57441 | /* 162325 */ GIR_EraseRootFromParent_Done, |
| 57442 | /* 162326 */ // Label 3528: @162326 |
| 57443 | /* 162326 */ GIM_Try, /*On fail goto*//*Label 3529*/ GIMT_Encode4(162388), // Rule ID 24376 // |
| 57444 | /* 162331 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57445 | /* 162334 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57446 | /* 162338 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57447 | /* 162342 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57448 | /* 162346 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57449 | /* 162349 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57450 | /* 162353 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57451 | /* 162357 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57452 | /* 162361 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57453 | /* 162363 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57454 | /* 162370 */ // (fmul:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4f64] }:$src1) => (VMULPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57455 | /* 162370 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rm), |
| 57456 | /* 162373 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57457 | /* 162375 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57458 | /* 162377 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57459 | /* 162381 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57460 | /* 162386 */ GIR_RootConstrainSelectedInstOperands, |
| 57461 | /* 162387 */ // GIR_Coverage, 24376, |
| 57462 | /* 162387 */ GIR_EraseRootFromParent_Done, |
| 57463 | /* 162388 */ // Label 3529: @162388 |
| 57464 | /* 162388 */ GIM_Try, /*On fail goto*//*Label 3530*/ GIMT_Encode4(162450), // Rule ID 2189 // |
| 57465 | /* 162393 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57466 | /* 162396 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57467 | /* 162400 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57468 | /* 162404 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57469 | /* 162408 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57470 | /* 162412 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57471 | /* 162415 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57472 | /* 162419 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57473 | /* 162423 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57474 | /* 162425 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57475 | /* 162432 */ // (fmul:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57476 | /* 162432 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDYrm), |
| 57477 | /* 162435 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57478 | /* 162437 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57479 | /* 162439 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57480 | /* 162443 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57481 | /* 162448 */ GIR_RootConstrainSelectedInstOperands, |
| 57482 | /* 162449 */ // GIR_Coverage, 2189, |
| 57483 | /* 162449 */ GIR_EraseRootFromParent_Done, |
| 57484 | /* 162450 */ // Label 3530: @162450 |
| 57485 | /* 162450 */ GIM_Try, /*On fail goto*//*Label 3531*/ GIMT_Encode4(162512), // Rule ID 6438 // |
| 57486 | /* 162455 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57487 | /* 162458 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57488 | /* 162462 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57489 | /* 162466 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57490 | /* 162470 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57491 | /* 162474 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57492 | /* 162477 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57493 | /* 162481 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57494 | /* 162485 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57495 | /* 162487 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57496 | /* 162494 */ // (fmul:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57497 | /* 162494 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rm), |
| 57498 | /* 162497 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57499 | /* 162499 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57500 | /* 162501 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57501 | /* 162505 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57502 | /* 162510 */ GIR_RootConstrainSelectedInstOperands, |
| 57503 | /* 162511 */ // GIR_Coverage, 6438, |
| 57504 | /* 162511 */ GIR_EraseRootFromParent_Done, |
| 57505 | /* 162512 */ // Label 3531: @162512 |
| 57506 | /* 162512 */ GIM_Try, /*On fail goto*//*Label 3532*/ GIMT_Encode4(162543), // Rule ID 2187 // |
| 57507 | /* 162517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57508 | /* 162520 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57509 | /* 162524 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57510 | /* 162528 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57511 | /* 162532 */ // (fmul:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VMULPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 57512 | /* 162532 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDYrr), |
| 57513 | /* 162537 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57514 | /* 162541 */ GIR_RootConstrainSelectedInstOperands, |
| 57515 | /* 162542 */ // GIR_Coverage, 2187, |
| 57516 | /* 162542 */ GIR_Done, |
| 57517 | /* 162543 */ // Label 3532: @162543 |
| 57518 | /* 162543 */ GIM_Try, /*On fail goto*//*Label 3533*/ GIMT_Encode4(162574), // Rule ID 6434 // |
| 57519 | /* 162548 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57520 | /* 162551 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57521 | /* 162555 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57522 | /* 162559 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57523 | /* 162563 */ // (fmul:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VMULPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 57524 | /* 162563 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rr), |
| 57525 | /* 162568 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57526 | /* 162572 */ GIR_RootConstrainSelectedInstOperands, |
| 57527 | /* 162573 */ // GIR_Coverage, 6434, |
| 57528 | /* 162573 */ GIR_Done, |
| 57529 | /* 162574 */ // Label 3533: @162574 |
| 57530 | /* 162574 */ GIM_Reject, |
| 57531 | /* 162575 */ // Label 3527: @162575 |
| 57532 | /* 162575 */ GIM_Reject, |
| 57533 | /* 162576 */ // Label 3442: @162576 |
| 57534 | /* 162576 */ GIM_Try, /*On fail goto*//*Label 3534*/ GIMT_Encode4(162735), |
| 57535 | /* 162581 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 57536 | /* 162584 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 57537 | /* 162587 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57538 | /* 162591 */ GIM_Try, /*On fail goto*//*Label 3535*/ GIMT_Encode4(162649), // Rule ID 24392 // |
| 57539 | /* 162596 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57540 | /* 162599 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57541 | /* 162603 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57542 | /* 162607 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57543 | /* 162610 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57544 | /* 162614 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57545 | /* 162618 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57546 | /* 162622 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57547 | /* 162624 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57548 | /* 162631 */ // (fmul:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src1) => (VMULPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57549 | /* 162631 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rm), |
| 57550 | /* 162634 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57551 | /* 162636 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57552 | /* 162638 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57553 | /* 162642 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57554 | /* 162647 */ GIR_RootConstrainSelectedInstOperands, |
| 57555 | /* 162648 */ // GIR_Coverage, 24392, |
| 57556 | /* 162648 */ GIR_EraseRootFromParent_Done, |
| 57557 | /* 162649 */ // Label 3535: @162649 |
| 57558 | /* 162649 */ GIM_Try, /*On fail goto*//*Label 3536*/ GIMT_Encode4(162707), // Rule ID 6462 // |
| 57559 | /* 162654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57560 | /* 162657 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57561 | /* 162661 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57562 | /* 162665 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57563 | /* 162669 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57564 | /* 162672 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57565 | /* 162676 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57566 | /* 162680 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57567 | /* 162682 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57568 | /* 162689 */ // (fmul:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57569 | /* 162689 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rm), |
| 57570 | /* 162692 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57571 | /* 162694 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57572 | /* 162696 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57573 | /* 162700 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57574 | /* 162705 */ GIR_RootConstrainSelectedInstOperands, |
| 57575 | /* 162706 */ // GIR_Coverage, 6462, |
| 57576 | /* 162706 */ GIR_EraseRootFromParent_Done, |
| 57577 | /* 162707 */ // Label 3536: @162707 |
| 57578 | /* 162707 */ GIM_Try, /*On fail goto*//*Label 3537*/ GIMT_Encode4(162734), // Rule ID 6458 // |
| 57579 | /* 162712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57580 | /* 162715 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57581 | /* 162719 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57582 | /* 162723 */ // (fmul:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VMULPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 57583 | /* 162723 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rr), |
| 57584 | /* 162728 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57585 | /* 162732 */ GIR_RootConstrainSelectedInstOperands, |
| 57586 | /* 162733 */ // GIR_Coverage, 6458, |
| 57587 | /* 162733 */ GIR_Done, |
| 57588 | /* 162734 */ // Label 3537: @162734 |
| 57589 | /* 162734 */ GIM_Reject, |
| 57590 | /* 162735 */ // Label 3534: @162735 |
| 57591 | /* 162735 */ GIM_Reject, |
| 57592 | /* 162736 */ // Label 3443: @162736 |
| 57593 | /* 162736 */ GIM_Try, /*On fail goto*//*Label 3538*/ GIMT_Encode4(163058), |
| 57594 | /* 162741 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 57595 | /* 162744 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 57596 | /* 162747 */ GIM_Try, /*On fail goto*//*Label 3539*/ GIMT_Encode4(162809), // Rule ID 23394 // |
| 57597 | /* 162752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57598 | /* 162755 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57599 | /* 162759 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57600 | /* 162763 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57601 | /* 162767 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57602 | /* 162770 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57603 | /* 162774 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57604 | /* 162778 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57605 | /* 162782 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57606 | /* 162784 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57607 | /* 162791 */ // (fmul:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1) => (VMULPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57608 | /* 162791 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSYrm), |
| 57609 | /* 162794 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57610 | /* 162796 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57611 | /* 162798 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57612 | /* 162802 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57613 | /* 162807 */ GIR_RootConstrainSelectedInstOperands, |
| 57614 | /* 162808 */ // GIR_Coverage, 23394, |
| 57615 | /* 162808 */ GIR_EraseRootFromParent_Done, |
| 57616 | /* 162809 */ // Label 3539: @162809 |
| 57617 | /* 162809 */ GIM_Try, /*On fail goto*//*Label 3540*/ GIMT_Encode4(162871), // Rule ID 24360 // |
| 57618 | /* 162814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57619 | /* 162817 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57620 | /* 162821 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57621 | /* 162825 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57622 | /* 162829 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57623 | /* 162832 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57624 | /* 162836 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57625 | /* 162840 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57626 | /* 162844 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57627 | /* 162846 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57628 | /* 162853 */ // (fmul:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8f32] }:$src1) => (VMULPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57629 | /* 162853 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rm), |
| 57630 | /* 162856 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57631 | /* 162858 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57632 | /* 162860 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57633 | /* 162864 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57634 | /* 162869 */ GIR_RootConstrainSelectedInstOperands, |
| 57635 | /* 162870 */ // GIR_Coverage, 24360, |
| 57636 | /* 162870 */ GIR_EraseRootFromParent_Done, |
| 57637 | /* 162871 */ // Label 3540: @162871 |
| 57638 | /* 162871 */ GIM_Try, /*On fail goto*//*Label 3541*/ GIMT_Encode4(162933), // Rule ID 2185 // |
| 57639 | /* 162876 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57640 | /* 162879 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57641 | /* 162883 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57642 | /* 162887 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57643 | /* 162891 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57644 | /* 162895 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57645 | /* 162898 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57646 | /* 162902 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57647 | /* 162906 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57648 | /* 162908 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57649 | /* 162915 */ // (fmul:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57650 | /* 162915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSYrm), |
| 57651 | /* 162918 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57652 | /* 162920 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57653 | /* 162922 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57654 | /* 162926 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57655 | /* 162931 */ GIR_RootConstrainSelectedInstOperands, |
| 57656 | /* 162932 */ // GIR_Coverage, 2185, |
| 57657 | /* 162932 */ GIR_EraseRootFromParent_Done, |
| 57658 | /* 162933 */ // Label 3541: @162933 |
| 57659 | /* 162933 */ GIM_Try, /*On fail goto*//*Label 3542*/ GIMT_Encode4(162995), // Rule ID 6414 // |
| 57660 | /* 162938 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57661 | /* 162941 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57662 | /* 162945 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57663 | /* 162949 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57664 | /* 162953 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57665 | /* 162957 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57666 | /* 162960 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57667 | /* 162964 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57668 | /* 162968 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57669 | /* 162970 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57670 | /* 162977 */ // (fmul:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57671 | /* 162977 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rm), |
| 57672 | /* 162980 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57673 | /* 162982 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57674 | /* 162984 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57675 | /* 162988 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57676 | /* 162993 */ GIR_RootConstrainSelectedInstOperands, |
| 57677 | /* 162994 */ // GIR_Coverage, 6414, |
| 57678 | /* 162994 */ GIR_EraseRootFromParent_Done, |
| 57679 | /* 162995 */ // Label 3542: @162995 |
| 57680 | /* 162995 */ GIM_Try, /*On fail goto*//*Label 3543*/ GIMT_Encode4(163026), // Rule ID 2183 // |
| 57681 | /* 163000 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57682 | /* 163003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57683 | /* 163007 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57684 | /* 163011 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57685 | /* 163015 */ // (fmul:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VMULPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 57686 | /* 163015 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSYrr), |
| 57687 | /* 163020 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57688 | /* 163024 */ GIR_RootConstrainSelectedInstOperands, |
| 57689 | /* 163025 */ // GIR_Coverage, 2183, |
| 57690 | /* 163025 */ GIR_Done, |
| 57691 | /* 163026 */ // Label 3543: @163026 |
| 57692 | /* 163026 */ GIM_Try, /*On fail goto*//*Label 3544*/ GIMT_Encode4(163057), // Rule ID 6410 // |
| 57693 | /* 163031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57694 | /* 163034 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57695 | /* 163038 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57696 | /* 163042 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57697 | /* 163046 */ // (fmul:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VMULPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 57698 | /* 163046 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rr), |
| 57699 | /* 163051 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57700 | /* 163055 */ GIR_RootConstrainSelectedInstOperands, |
| 57701 | /* 163056 */ // GIR_Coverage, 6410, |
| 57702 | /* 163056 */ GIR_Done, |
| 57703 | /* 163057 */ // Label 3544: @163057 |
| 57704 | /* 163057 */ GIM_Reject, |
| 57705 | /* 163058 */ // Label 3538: @163058 |
| 57706 | /* 163058 */ GIM_Reject, |
| 57707 | /* 163059 */ // Label 3444: @163059 |
| 57708 | /* 163059 */ GIM_Try, /*On fail goto*//*Label 3545*/ GIMT_Encode4(163218), |
| 57709 | /* 163064 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 57710 | /* 163067 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 57711 | /* 163070 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57712 | /* 163074 */ GIM_Try, /*On fail goto*//*Label 3546*/ GIMT_Encode4(163132), // Rule ID 24344 // |
| 57713 | /* 163079 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57714 | /* 163082 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57715 | /* 163086 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57716 | /* 163090 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57717 | /* 163093 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57718 | /* 163097 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57719 | /* 163101 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57720 | /* 163105 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57721 | /* 163107 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57722 | /* 163114 */ // (fmul:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8f64] }:$src1) => (VMULPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57723 | /* 163114 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZrm), |
| 57724 | /* 163117 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57725 | /* 163119 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57726 | /* 163121 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57727 | /* 163125 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57728 | /* 163130 */ GIR_RootConstrainSelectedInstOperands, |
| 57729 | /* 163131 */ // GIR_Coverage, 24344, |
| 57730 | /* 163131 */ GIR_EraseRootFromParent_Done, |
| 57731 | /* 163132 */ // Label 3546: @163132 |
| 57732 | /* 163132 */ GIM_Try, /*On fail goto*//*Label 3547*/ GIMT_Encode4(163190), // Rule ID 6390 // |
| 57733 | /* 163137 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57734 | /* 163140 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57735 | /* 163144 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57736 | /* 163148 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57737 | /* 163152 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57738 | /* 163155 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57739 | /* 163159 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57740 | /* 163163 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57741 | /* 163165 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57742 | /* 163172 */ // (fmul:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57743 | /* 163172 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZrm), |
| 57744 | /* 163175 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57745 | /* 163177 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57746 | /* 163179 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57747 | /* 163183 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57748 | /* 163188 */ GIR_RootConstrainSelectedInstOperands, |
| 57749 | /* 163189 */ // GIR_Coverage, 6390, |
| 57750 | /* 163189 */ GIR_EraseRootFromParent_Done, |
| 57751 | /* 163190 */ // Label 3547: @163190 |
| 57752 | /* 163190 */ GIM_Try, /*On fail goto*//*Label 3548*/ GIMT_Encode4(163217), // Rule ID 6386 // |
| 57753 | /* 163195 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57754 | /* 163198 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57755 | /* 163202 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57756 | /* 163206 */ // (fmul:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VMULPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 57757 | /* 163206 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZrr), |
| 57758 | /* 163211 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57759 | /* 163215 */ GIR_RootConstrainSelectedInstOperands, |
| 57760 | /* 163216 */ // GIR_Coverage, 6386, |
| 57761 | /* 163216 */ GIR_Done, |
| 57762 | /* 163217 */ // Label 3548: @163217 |
| 57763 | /* 163217 */ GIM_Reject, |
| 57764 | /* 163218 */ // Label 3545: @163218 |
| 57765 | /* 163218 */ GIM_Reject, |
| 57766 | /* 163219 */ // Label 3445: @163219 |
| 57767 | /* 163219 */ GIM_Try, /*On fail goto*//*Label 3549*/ GIMT_Encode4(163378), |
| 57768 | /* 163224 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 57769 | /* 163227 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 57770 | /* 163230 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57771 | /* 163234 */ GIM_Try, /*On fail goto*//*Label 3550*/ GIMT_Encode4(163292), // Rule ID 24400 // |
| 57772 | /* 163239 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57773 | /* 163242 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57774 | /* 163246 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57775 | /* 163250 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57776 | /* 163253 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57777 | /* 163257 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57778 | /* 163261 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57779 | /* 163265 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57780 | /* 163267 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57781 | /* 163274 */ // (fmul:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src1) => (VMULPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57782 | /* 163274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rm), |
| 57783 | /* 163277 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57784 | /* 163279 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57785 | /* 163281 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57786 | /* 163285 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57787 | /* 163290 */ GIR_RootConstrainSelectedInstOperands, |
| 57788 | /* 163291 */ // GIR_Coverage, 24400, |
| 57789 | /* 163291 */ GIR_EraseRootFromParent_Done, |
| 57790 | /* 163292 */ // Label 3550: @163292 |
| 57791 | /* 163292 */ GIM_Try, /*On fail goto*//*Label 3551*/ GIMT_Encode4(163350), // Rule ID 6474 // |
| 57792 | /* 163297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57793 | /* 163300 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57794 | /* 163304 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57795 | /* 163308 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57796 | /* 163312 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57797 | /* 163315 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57798 | /* 163319 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57799 | /* 163323 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57800 | /* 163325 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57801 | /* 163332 */ // (fmul:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57802 | /* 163332 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rm), |
| 57803 | /* 163335 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57804 | /* 163337 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57805 | /* 163339 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57806 | /* 163343 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57807 | /* 163348 */ GIR_RootConstrainSelectedInstOperands, |
| 57808 | /* 163349 */ // GIR_Coverage, 6474, |
| 57809 | /* 163349 */ GIR_EraseRootFromParent_Done, |
| 57810 | /* 163350 */ // Label 3551: @163350 |
| 57811 | /* 163350 */ GIM_Try, /*On fail goto*//*Label 3552*/ GIMT_Encode4(163377), // Rule ID 6470 // |
| 57812 | /* 163355 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57813 | /* 163358 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57814 | /* 163362 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57815 | /* 163366 */ // (fmul:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VMULPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 57816 | /* 163366 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rr), |
| 57817 | /* 163371 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57818 | /* 163375 */ GIR_RootConstrainSelectedInstOperands, |
| 57819 | /* 163376 */ // GIR_Coverage, 6470, |
| 57820 | /* 163376 */ GIR_Done, |
| 57821 | /* 163377 */ // Label 3552: @163377 |
| 57822 | /* 163377 */ GIM_Reject, |
| 57823 | /* 163378 */ // Label 3549: @163378 |
| 57824 | /* 163378 */ GIM_Reject, |
| 57825 | /* 163379 */ // Label 3446: @163379 |
| 57826 | /* 163379 */ GIM_Try, /*On fail goto*//*Label 3553*/ GIMT_Encode4(163538), |
| 57827 | /* 163384 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 57828 | /* 163387 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 57829 | /* 163390 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57830 | /* 163394 */ GIM_Try, /*On fail goto*//*Label 3554*/ GIMT_Encode4(163452), // Rule ID 24336 // |
| 57831 | /* 163399 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57832 | /* 163402 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57833 | /* 163406 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57834 | /* 163410 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57835 | /* 163413 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57836 | /* 163417 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57837 | /* 163421 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57838 | /* 163425 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57839 | /* 163427 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57840 | /* 163434 */ // (fmul:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16f32] }:$src1) => (VMULPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57841 | /* 163434 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZrm), |
| 57842 | /* 163437 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57843 | /* 163439 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57844 | /* 163441 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57845 | /* 163445 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57846 | /* 163450 */ GIR_RootConstrainSelectedInstOperands, |
| 57847 | /* 163451 */ // GIR_Coverage, 24336, |
| 57848 | /* 163451 */ GIR_EraseRootFromParent_Done, |
| 57849 | /* 163452 */ // Label 3554: @163452 |
| 57850 | /* 163452 */ GIM_Try, /*On fail goto*//*Label 3555*/ GIMT_Encode4(163510), // Rule ID 6378 // |
| 57851 | /* 163457 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57852 | /* 163460 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57853 | /* 163464 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57854 | /* 163468 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57855 | /* 163472 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57856 | /* 163475 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57857 | /* 163479 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57858 | /* 163483 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57859 | /* 163485 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57860 | /* 163492 */ // (fmul:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57861 | /* 163492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZrm), |
| 57862 | /* 163495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57863 | /* 163497 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57864 | /* 163499 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57865 | /* 163503 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57866 | /* 163508 */ GIR_RootConstrainSelectedInstOperands, |
| 57867 | /* 163509 */ // GIR_Coverage, 6378, |
| 57868 | /* 163509 */ GIR_EraseRootFromParent_Done, |
| 57869 | /* 163510 */ // Label 3555: @163510 |
| 57870 | /* 163510 */ GIM_Try, /*On fail goto*//*Label 3556*/ GIMT_Encode4(163537), // Rule ID 6374 // |
| 57871 | /* 163515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57872 | /* 163518 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57873 | /* 163522 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57874 | /* 163526 */ // (fmul:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VMULPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 57875 | /* 163526 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZrr), |
| 57876 | /* 163531 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57877 | /* 163535 */ GIR_RootConstrainSelectedInstOperands, |
| 57878 | /* 163536 */ // GIR_Coverage, 6374, |
| 57879 | /* 163536 */ GIR_Done, |
| 57880 | /* 163537 */ // Label 3556: @163537 |
| 57881 | /* 163537 */ GIM_Reject, |
| 57882 | /* 163538 */ // Label 3553: @163538 |
| 57883 | /* 163538 */ GIM_Reject, |
| 57884 | /* 163539 */ // Label 3447: @163539 |
| 57885 | /* 163539 */ GIM_Try, /*On fail goto*//*Label 3557*/ GIMT_Encode4(163698), |
| 57886 | /* 163544 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 57887 | /* 163547 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 57888 | /* 163550 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57889 | /* 163554 */ GIM_Try, /*On fail goto*//*Label 3558*/ GIMT_Encode4(163612), // Rule ID 24384 // |
| 57890 | /* 163559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57891 | /* 163562 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57892 | /* 163566 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57893 | /* 163570 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57894 | /* 163573 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57895 | /* 163577 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57896 | /* 163581 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57897 | /* 163585 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57898 | /* 163587 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57899 | /* 163594 */ // (fmul:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src1) => (VMULPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57900 | /* 163594 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZrm), |
| 57901 | /* 163597 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57902 | /* 163599 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57903 | /* 163601 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57904 | /* 163605 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57905 | /* 163610 */ GIR_RootConstrainSelectedInstOperands, |
| 57906 | /* 163611 */ // GIR_Coverage, 24384, |
| 57907 | /* 163611 */ GIR_EraseRootFromParent_Done, |
| 57908 | /* 163612 */ // Label 3558: @163612 |
| 57909 | /* 163612 */ GIM_Try, /*On fail goto*//*Label 3559*/ GIMT_Encode4(163670), // Rule ID 6450 // |
| 57910 | /* 163617 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57911 | /* 163620 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57912 | /* 163624 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57913 | /* 163628 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57914 | /* 163632 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57915 | /* 163635 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57916 | /* 163639 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57917 | /* 163643 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57918 | /* 163645 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57919 | /* 163652 */ // (fmul:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57920 | /* 163652 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZrm), |
| 57921 | /* 163655 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57922 | /* 163657 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57923 | /* 163659 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57924 | /* 163663 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57925 | /* 163668 */ GIR_RootConstrainSelectedInstOperands, |
| 57926 | /* 163669 */ // GIR_Coverage, 6450, |
| 57927 | /* 163669 */ GIR_EraseRootFromParent_Done, |
| 57928 | /* 163670 */ // Label 3559: @163670 |
| 57929 | /* 163670 */ GIM_Try, /*On fail goto*//*Label 3560*/ GIMT_Encode4(163697), // Rule ID 6446 // |
| 57930 | /* 163675 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57931 | /* 163678 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57932 | /* 163682 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57933 | /* 163686 */ // (fmul:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VMULPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 57934 | /* 163686 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZrr), |
| 57935 | /* 163691 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57936 | /* 163695 */ GIR_RootConstrainSelectedInstOperands, |
| 57937 | /* 163696 */ // GIR_Coverage, 6446, |
| 57938 | /* 163696 */ GIR_Done, |
| 57939 | /* 163697 */ // Label 3560: @163697 |
| 57940 | /* 163697 */ GIM_Reject, |
| 57941 | /* 163698 */ // Label 3557: @163698 |
| 57942 | /* 163698 */ GIM_Reject, |
| 57943 | /* 163699 */ // Label 3448: @163699 |
| 57944 | /* 163699 */ GIM_Reject, |
| 57945 | /* 163700 */ // Label 44: @163700 |
| 57946 | /* 163700 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3573*/ GIMT_Encode4(169687), |
| 57947 | /* 163711 */ /*GILLT_s16*//*Label 3561*/ GIMT_Encode4(163795), |
| 57948 | /* 163715 */ /*GILLT_s32*//*Label 3562*/ GIMT_Encode4(164040), |
| 57949 | /* 163719 */ /*GILLT_s64*//*Label 3563*/ GIMT_Encode4(164777), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 57950 | /* 163735 */ /*GILLT_v2s64*//*Label 3564*/ GIMT_Encode4(165514), GIMT_Encode4(0), |
| 57951 | /* 163743 */ /*GILLT_v4s32*//*Label 3565*/ GIMT_Encode4(166251), |
| 57952 | /* 163747 */ /*GILLT_v4s64*//*Label 3566*/ GIMT_Encode4(166988), GIMT_Encode4(0), |
| 57953 | /* 163755 */ /*GILLT_v8s16*//*Label 3567*/ GIMT_Encode4(167725), |
| 57954 | /* 163759 */ /*GILLT_v8s32*//*Label 3568*/ GIMT_Encode4(167970), |
| 57955 | /* 163763 */ /*GILLT_v8s64*//*Label 3569*/ GIMT_Encode4(168707), GIMT_Encode4(0), GIMT_Encode4(0), |
| 57956 | /* 163775 */ /*GILLT_v16s16*//*Label 3570*/ GIMT_Encode4(168952), |
| 57957 | /* 163779 */ /*GILLT_v16s32*//*Label 3571*/ GIMT_Encode4(169197), GIMT_Encode4(0), GIMT_Encode4(0), |
| 57958 | /* 163791 */ /*GILLT_v32s16*//*Label 3572*/ GIMT_Encode4(169442), |
| 57959 | /* 163795 */ // Label 3561: @163795 |
| 57960 | /* 163795 */ GIM_Try, /*On fail goto*//*Label 3574*/ GIMT_Encode4(164039), |
| 57961 | /* 163800 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 57962 | /* 163803 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 57963 | /* 163806 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 57964 | /* 163809 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57965 | /* 163813 */ GIM_Try, /*On fail goto*//*Label 3575*/ GIMT_Encode4(163877), // Rule ID 10158 // |
| 57966 | /* 163818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57967 | /* 163821 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57968 | /* 163825 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57969 | /* 163829 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57970 | /* 163832 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57971 | /* 163836 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57972 | /* 163840 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57973 | /* 163844 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57974 | /* 163848 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57975 | /* 163850 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57976 | /* 163857 */ // (fma:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VFMADD132SHZm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 57977 | /* 163857 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SHZm), |
| 57978 | /* 163860 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57979 | /* 163862 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57980 | /* 163864 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 57981 | /* 163866 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57982 | /* 163870 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57983 | /* 163875 */ GIR_RootConstrainSelectedInstOperands, |
| 57984 | /* 163876 */ // GIR_Coverage, 10158, |
| 57985 | /* 163876 */ GIR_EraseRootFromParent_Done, |
| 57986 | /* 163877 */ // Label 3575: @163877 |
| 57987 | /* 163877 */ GIM_Try, /*On fail goto*//*Label 3576*/ GIMT_Encode4(163941), // Rule ID 10156 // |
| 57988 | /* 163882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57989 | /* 163885 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57990 | /* 163889 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57991 | /* 163893 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57992 | /* 163897 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57993 | /* 163900 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57994 | /* 163904 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57995 | /* 163908 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57996 | /* 163912 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57997 | /* 163914 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57998 | /* 163921 */ // (fma:{ *:[f16] } FR16X:{ *:[f16] }:$src2, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR16X:{ *:[f16] }:$src1) => (VFMADD231SHZm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 57999 | /* 163921 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SHZm), |
| 58000 | /* 163924 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58001 | /* 163926 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58002 | /* 163928 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58003 | /* 163930 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58004 | /* 163934 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58005 | /* 163939 */ GIR_RootConstrainSelectedInstOperands, |
| 58006 | /* 163940 */ // GIR_Coverage, 10156, |
| 58007 | /* 163940 */ GIR_EraseRootFromParent_Done, |
| 58008 | /* 163941 */ // Label 3576: @163941 |
| 58009 | /* 163941 */ GIM_Try, /*On fail goto*//*Label 3577*/ GIMT_Encode4(164005), // Rule ID 10153 // |
| 58010 | /* 163946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 58011 | /* 163949 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 58012 | /* 163953 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 58013 | /* 163957 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58014 | /* 163961 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58015 | /* 163965 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58016 | /* 163968 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58017 | /* 163972 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58018 | /* 163976 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58019 | /* 163978 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58020 | /* 163985 */ // (fma:{ *:[f16] } FR16X:{ *:[f16] }:$src2, FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213SHZm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58021 | /* 163985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SHZm), |
| 58022 | /* 163988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58023 | /* 163990 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58024 | /* 163992 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58025 | /* 163994 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58026 | /* 163998 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58027 | /* 164003 */ GIR_RootConstrainSelectedInstOperands, |
| 58028 | /* 164004 */ // GIR_Coverage, 10153, |
| 58029 | /* 164004 */ GIR_EraseRootFromParent_Done, |
| 58030 | /* 164005 */ // Label 3577: @164005 |
| 58031 | /* 164005 */ GIM_Try, /*On fail goto*//*Label 3578*/ GIMT_Encode4(164038), // Rule ID 10151 // |
| 58032 | /* 164010 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 58033 | /* 164013 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 58034 | /* 164017 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 58035 | /* 164021 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 58036 | /* 164025 */ // (fma:{ *:[f16] } FR16X:{ *:[f16] }:$src2, FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src3) => (VFMADD213SHZr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2, FR16X:{ *:[f16] }:$src3) |
| 58037 | /* 164025 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SHZr), |
| 58038 | /* 164028 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58039 | /* 164030 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58040 | /* 164032 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58041 | /* 164034 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58042 | /* 164036 */ GIR_RootConstrainSelectedInstOperands, |
| 58043 | /* 164037 */ // GIR_Coverage, 10151, |
| 58044 | /* 164037 */ GIR_EraseRootFromParent_Done, |
| 58045 | /* 164038 */ // Label 3578: @164038 |
| 58046 | /* 164038 */ GIM_Reject, |
| 58047 | /* 164039 */ // Label 3574: @164039 |
| 58048 | /* 164039 */ GIM_Reject, |
| 58049 | /* 164040 */ // Label 3562: @164040 |
| 58050 | /* 164040 */ GIM_Try, /*On fail goto*//*Label 3579*/ GIMT_Encode4(164776), |
| 58051 | /* 164045 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 58052 | /* 164048 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 58053 | /* 164051 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 58054 | /* 164054 */ GIM_Try, /*On fail goto*//*Label 3580*/ GIMT_Encode4(164122), // Rule ID 1304 // |
| 58055 | /* 164059 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 58056 | /* 164062 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58057 | /* 164066 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58058 | /* 164070 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58059 | /* 164074 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58060 | /* 164077 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58061 | /* 164081 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58062 | /* 164085 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58063 | /* 164089 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58064 | /* 164093 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58065 | /* 164095 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58066 | /* 164102 */ // (fma:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VFMADD132SSm:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58067 | /* 164102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SSm), |
| 58068 | /* 164105 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58069 | /* 164107 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58070 | /* 164109 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58071 | /* 164111 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58072 | /* 164115 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58073 | /* 164120 */ GIR_RootConstrainSelectedInstOperands, |
| 58074 | /* 164121 */ // GIR_Coverage, 1304, |
| 58075 | /* 164121 */ GIR_EraseRootFromParent_Done, |
| 58076 | /* 164122 */ // Label 3580: @164122 |
| 58077 | /* 164122 */ GIM_Try, /*On fail goto*//*Label 3581*/ GIMT_Encode4(164190), // Rule ID 10140 // |
| 58078 | /* 164127 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 58079 | /* 164130 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58080 | /* 164134 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58081 | /* 164138 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58082 | /* 164142 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58083 | /* 164145 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58084 | /* 164149 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58085 | /* 164153 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58086 | /* 164157 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58087 | /* 164161 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58088 | /* 164163 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58089 | /* 164170 */ // (fma:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VFMADD132SSZm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58090 | /* 164170 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SSZm), |
| 58091 | /* 164173 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58092 | /* 164175 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58093 | /* 164177 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58094 | /* 164179 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58095 | /* 164183 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58096 | /* 164188 */ GIR_RootConstrainSelectedInstOperands, |
| 58097 | /* 164189 */ // GIR_Coverage, 10140, |
| 58098 | /* 164189 */ GIR_EraseRootFromParent_Done, |
| 58099 | /* 164190 */ // Label 3581: @164190 |
| 58100 | /* 164190 */ GIM_Try, /*On fail goto*//*Label 3582*/ GIMT_Encode4(164258), // Rule ID 23281 // |
| 58101 | /* 164195 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 58102 | /* 164198 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58103 | /* 164202 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58104 | /* 164206 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58105 | /* 164210 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58106 | /* 164213 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58107 | /* 164217 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58108 | /* 164221 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58109 | /* 164225 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58110 | /* 164229 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58111 | /* 164231 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58112 | /* 164238 */ // (fma:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src3) => (VFMADDSS4mr:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2, FR32:{ *:[f32] }:$src3) |
| 58113 | /* 164238 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4mr), |
| 58114 | /* 164241 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58115 | /* 164243 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58116 | /* 164245 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58117 | /* 164249 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58118 | /* 164251 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58119 | /* 164256 */ GIR_RootConstrainSelectedInstOperands, |
| 58120 | /* 164257 */ // GIR_Coverage, 23281, |
| 58121 | /* 164257 */ GIR_EraseRootFromParent_Done, |
| 58122 | /* 164258 */ // Label 3582: @164258 |
| 58123 | /* 164258 */ GIM_Try, /*On fail goto*//*Label 3583*/ GIMT_Encode4(164326), // Rule ID 1302 // |
| 58124 | /* 164263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 58125 | /* 164266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58126 | /* 164270 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58127 | /* 164274 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58128 | /* 164278 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58129 | /* 164282 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58130 | /* 164285 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58131 | /* 164289 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58132 | /* 164293 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58133 | /* 164297 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58134 | /* 164299 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58135 | /* 164306 */ // (fma:{ *:[f32] } FR32:{ *:[f32] }:$src2, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (VFMADD231SSm:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58136 | /* 164306 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SSm), |
| 58137 | /* 164309 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58138 | /* 164311 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58139 | /* 164313 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58140 | /* 164315 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58141 | /* 164319 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58142 | /* 164324 */ GIR_RootConstrainSelectedInstOperands, |
| 58143 | /* 164325 */ // GIR_Coverage, 1302, |
| 58144 | /* 164325 */ GIR_EraseRootFromParent_Done, |
| 58145 | /* 164326 */ // Label 3583: @164326 |
| 58146 | /* 164326 */ GIM_Try, /*On fail goto*//*Label 3584*/ GIMT_Encode4(164394), // Rule ID 1366 // |
| 58147 | /* 164331 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 58148 | /* 164334 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58149 | /* 164338 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58150 | /* 164342 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58151 | /* 164346 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58152 | /* 164350 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58153 | /* 164353 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58154 | /* 164357 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58155 | /* 164361 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58156 | /* 164365 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58157 | /* 164367 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58158 | /* 164374 */ // (fma:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src3) => (VFMADDSS4mr:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2, FR32:{ *:[f32] }:$src3) |
| 58159 | /* 164374 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4mr), |
| 58160 | /* 164377 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58161 | /* 164379 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58162 | /* 164381 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58163 | /* 164385 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58164 | /* 164387 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58165 | /* 164392 */ GIR_RootConstrainSelectedInstOperands, |
| 58166 | /* 164393 */ // GIR_Coverage, 1366, |
| 58167 | /* 164393 */ GIR_EraseRootFromParent_Done, |
| 58168 | /* 164394 */ // Label 3584: @164394 |
| 58169 | /* 164394 */ GIM_Try, /*On fail goto*//*Label 3585*/ GIMT_Encode4(164462), // Rule ID 10138 // |
| 58170 | /* 164399 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 58171 | /* 164402 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58172 | /* 164406 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58173 | /* 164410 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58174 | /* 164414 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58175 | /* 164418 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58176 | /* 164421 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58177 | /* 164425 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58178 | /* 164429 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58179 | /* 164433 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58180 | /* 164435 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58181 | /* 164442 */ // (fma:{ *:[f32] } FR32X:{ *:[f32] }:$src2, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32X:{ *:[f32] }:$src1) => (VFMADD231SSZm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58182 | /* 164442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SSZm), |
| 58183 | /* 164445 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58184 | /* 164447 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58185 | /* 164449 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58186 | /* 164451 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58187 | /* 164455 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58188 | /* 164460 */ GIR_RootConstrainSelectedInstOperands, |
| 58189 | /* 164461 */ // GIR_Coverage, 10138, |
| 58190 | /* 164461 */ GIR_EraseRootFromParent_Done, |
| 58191 | /* 164462 */ // Label 3585: @164462 |
| 58192 | /* 164462 */ GIM_Try, /*On fail goto*//*Label 3586*/ GIMT_Encode4(164530), // Rule ID 1300 // |
| 58193 | /* 164467 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 58194 | /* 164470 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58195 | /* 164474 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58196 | /* 164478 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58197 | /* 164482 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58198 | /* 164486 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58199 | /* 164490 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58200 | /* 164493 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58201 | /* 164497 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58202 | /* 164501 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58203 | /* 164503 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58204 | /* 164510 */ // (fma:{ *:[f32] } FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213SSm:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58205 | /* 164510 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSm), |
| 58206 | /* 164513 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58207 | /* 164515 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58208 | /* 164517 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58209 | /* 164519 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58210 | /* 164523 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58211 | /* 164528 */ GIR_RootConstrainSelectedInstOperands, |
| 58212 | /* 164529 */ // GIR_Coverage, 1300, |
| 58213 | /* 164529 */ GIR_EraseRootFromParent_Done, |
| 58214 | /* 164530 */ // Label 3586: @164530 |
| 58215 | /* 164530 */ GIM_Try, /*On fail goto*//*Label 3587*/ GIMT_Encode4(164598), // Rule ID 1364 // |
| 58216 | /* 164535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 58217 | /* 164538 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58218 | /* 164542 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58219 | /* 164546 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58220 | /* 164550 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58221 | /* 164554 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58222 | /* 164558 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58223 | /* 164561 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58224 | /* 164565 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58225 | /* 164569 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58226 | /* 164571 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58227 | /* 164578 */ // (fma:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDSS4rm:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58228 | /* 164578 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4rm), |
| 58229 | /* 164581 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58230 | /* 164583 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58231 | /* 164585 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 58232 | /* 164587 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58233 | /* 164591 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58234 | /* 164596 */ GIR_RootConstrainSelectedInstOperands, |
| 58235 | /* 164597 */ // GIR_Coverage, 1364, |
| 58236 | /* 164597 */ GIR_EraseRootFromParent_Done, |
| 58237 | /* 164598 */ // Label 3587: @164598 |
| 58238 | /* 164598 */ GIM_Try, /*On fail goto*//*Label 3588*/ GIMT_Encode4(164666), // Rule ID 10135 // |
| 58239 | /* 164603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 58240 | /* 164606 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58241 | /* 164610 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58242 | /* 164614 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58243 | /* 164618 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58244 | /* 164622 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58245 | /* 164626 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58246 | /* 164629 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58247 | /* 164633 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58248 | /* 164637 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58249 | /* 164639 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58250 | /* 164646 */ // (fma:{ *:[f32] } FR32X:{ *:[f32] }:$src2, FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213SSZm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58251 | /* 164646 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSZm), |
| 58252 | /* 164649 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58253 | /* 164651 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58254 | /* 164653 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58255 | /* 164655 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58256 | /* 164659 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58257 | /* 164664 */ GIR_RootConstrainSelectedInstOperands, |
| 58258 | /* 164665 */ // GIR_Coverage, 10135, |
| 58259 | /* 164665 */ GIR_EraseRootFromParent_Done, |
| 58260 | /* 164666 */ // Label 3588: @164666 |
| 58261 | /* 164666 */ GIM_Try, /*On fail goto*//*Label 3589*/ GIMT_Encode4(164703), // Rule ID 1298 // |
| 58262 | /* 164671 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 58263 | /* 164674 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58264 | /* 164678 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58265 | /* 164682 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58266 | /* 164686 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58267 | /* 164690 */ // (fma:{ *:[f32] } FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src3) => (VFMADD213SSr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) |
| 58268 | /* 164690 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSr), |
| 58269 | /* 164693 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58270 | /* 164695 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58271 | /* 164697 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58272 | /* 164699 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58273 | /* 164701 */ GIR_RootConstrainSelectedInstOperands, |
| 58274 | /* 164702 */ // GIR_Coverage, 1298, |
| 58275 | /* 164702 */ GIR_EraseRootFromParent_Done, |
| 58276 | /* 164703 */ // Label 3589: @164703 |
| 58277 | /* 164703 */ GIM_Try, /*On fail goto*//*Label 3590*/ GIMT_Encode4(164738), // Rule ID 1362 // |
| 58278 | /* 164708 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 58279 | /* 164711 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58280 | /* 164715 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58281 | /* 164719 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58282 | /* 164723 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 58283 | /* 164727 */ // (fma:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) => (VFMADDSS4rr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) |
| 58284 | /* 164727 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4rr), |
| 58285 | /* 164732 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 58286 | /* 164736 */ GIR_RootConstrainSelectedInstOperands, |
| 58287 | /* 164737 */ // GIR_Coverage, 1362, |
| 58288 | /* 164737 */ GIR_Done, |
| 58289 | /* 164738 */ // Label 3590: @164738 |
| 58290 | /* 164738 */ GIM_Try, /*On fail goto*//*Label 3591*/ GIMT_Encode4(164775), // Rule ID 10133 // |
| 58291 | /* 164743 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 58292 | /* 164746 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58293 | /* 164750 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58294 | /* 164754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58295 | /* 164758 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 58296 | /* 164762 */ // (fma:{ *:[f32] } FR32X:{ *:[f32] }:$src2, FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src3) => (VFMADD213SSZr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2, FR32X:{ *:[f32] }:$src3) |
| 58297 | /* 164762 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSZr), |
| 58298 | /* 164765 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58299 | /* 164767 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58300 | /* 164769 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58301 | /* 164771 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58302 | /* 164773 */ GIR_RootConstrainSelectedInstOperands, |
| 58303 | /* 164774 */ // GIR_Coverage, 10133, |
| 58304 | /* 164774 */ GIR_EraseRootFromParent_Done, |
| 58305 | /* 164775 */ // Label 3591: @164775 |
| 58306 | /* 164775 */ GIM_Reject, |
| 58307 | /* 164776 */ // Label 3579: @164776 |
| 58308 | /* 164776 */ GIM_Reject, |
| 58309 | /* 164777 */ // Label 3563: @164777 |
| 58310 | /* 164777 */ GIM_Try, /*On fail goto*//*Label 3592*/ GIMT_Encode4(165513), |
| 58311 | /* 164782 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 58312 | /* 164785 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 58313 | /* 164788 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 58314 | /* 164791 */ GIM_Try, /*On fail goto*//*Label 3593*/ GIMT_Encode4(164859), // Rule ID 1312 // |
| 58315 | /* 164796 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 58316 | /* 164799 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58317 | /* 164803 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58318 | /* 164807 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58319 | /* 164811 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58320 | /* 164814 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58321 | /* 164818 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58322 | /* 164822 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58323 | /* 164826 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58324 | /* 164830 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58325 | /* 164832 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58326 | /* 164839 */ // (fma:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VFMADD132SDm:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58327 | /* 164839 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SDm), |
| 58328 | /* 164842 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58329 | /* 164844 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58330 | /* 164846 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58331 | /* 164848 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58332 | /* 164852 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58333 | /* 164857 */ GIR_RootConstrainSelectedInstOperands, |
| 58334 | /* 164858 */ // GIR_Coverage, 1312, |
| 58335 | /* 164858 */ GIR_EraseRootFromParent_Done, |
| 58336 | /* 164859 */ // Label 3593: @164859 |
| 58337 | /* 164859 */ GIM_Try, /*On fail goto*//*Label 3594*/ GIMT_Encode4(164927), // Rule ID 10149 // |
| 58338 | /* 164864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 58339 | /* 164867 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58340 | /* 164871 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58341 | /* 164875 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58342 | /* 164879 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58343 | /* 164882 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58344 | /* 164886 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58345 | /* 164890 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58346 | /* 164894 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58347 | /* 164898 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58348 | /* 164900 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58349 | /* 164907 */ // (fma:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VFMADD132SDZm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58350 | /* 164907 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SDZm), |
| 58351 | /* 164910 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58352 | /* 164912 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58353 | /* 164914 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58354 | /* 164916 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58355 | /* 164920 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58356 | /* 164925 */ GIR_RootConstrainSelectedInstOperands, |
| 58357 | /* 164926 */ // GIR_Coverage, 10149, |
| 58358 | /* 164926 */ GIR_EraseRootFromParent_Done, |
| 58359 | /* 164927 */ // Label 3594: @164927 |
| 58360 | /* 164927 */ GIM_Try, /*On fail goto*//*Label 3595*/ GIMT_Encode4(164995), // Rule ID 23309 // |
| 58361 | /* 164932 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 58362 | /* 164935 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58363 | /* 164939 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58364 | /* 164943 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58365 | /* 164947 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58366 | /* 164950 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58367 | /* 164954 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58368 | /* 164958 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58369 | /* 164962 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58370 | /* 164966 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58371 | /* 164968 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58372 | /* 164975 */ // (fma:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src3) => (VFMADDSD4mr:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2, FR64:{ *:[f64] }:$src3) |
| 58373 | /* 164975 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4mr), |
| 58374 | /* 164978 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58375 | /* 164980 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58376 | /* 164982 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58377 | /* 164986 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58378 | /* 164988 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58379 | /* 164993 */ GIR_RootConstrainSelectedInstOperands, |
| 58380 | /* 164994 */ // GIR_Coverage, 23309, |
| 58381 | /* 164994 */ GIR_EraseRootFromParent_Done, |
| 58382 | /* 164995 */ // Label 3595: @164995 |
| 58383 | /* 164995 */ GIM_Try, /*On fail goto*//*Label 3596*/ GIMT_Encode4(165063), // Rule ID 1310 // |
| 58384 | /* 165000 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 58385 | /* 165003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58386 | /* 165007 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58387 | /* 165011 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58388 | /* 165015 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58389 | /* 165019 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58390 | /* 165022 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58391 | /* 165026 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58392 | /* 165030 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58393 | /* 165034 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58394 | /* 165036 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58395 | /* 165043 */ // (fma:{ *:[f64] } FR64:{ *:[f64] }:$src2, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (VFMADD231SDm:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58396 | /* 165043 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SDm), |
| 58397 | /* 165046 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58398 | /* 165048 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58399 | /* 165050 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58400 | /* 165052 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58401 | /* 165056 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58402 | /* 165061 */ GIR_RootConstrainSelectedInstOperands, |
| 58403 | /* 165062 */ // GIR_Coverage, 1310, |
| 58404 | /* 165062 */ GIR_EraseRootFromParent_Done, |
| 58405 | /* 165063 */ // Label 3596: @165063 |
| 58406 | /* 165063 */ GIM_Try, /*On fail goto*//*Label 3597*/ GIMT_Encode4(165131), // Rule ID 1450 // |
| 58407 | /* 165068 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 58408 | /* 165071 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58409 | /* 165075 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58410 | /* 165079 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58411 | /* 165083 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58412 | /* 165087 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58413 | /* 165090 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58414 | /* 165094 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58415 | /* 165098 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58416 | /* 165102 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58417 | /* 165104 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58418 | /* 165111 */ // (fma:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src3) => (VFMADDSD4mr:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2, FR64:{ *:[f64] }:$src3) |
| 58419 | /* 165111 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4mr), |
| 58420 | /* 165114 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58421 | /* 165116 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58422 | /* 165118 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58423 | /* 165122 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58424 | /* 165124 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58425 | /* 165129 */ GIR_RootConstrainSelectedInstOperands, |
| 58426 | /* 165130 */ // GIR_Coverage, 1450, |
| 58427 | /* 165130 */ GIR_EraseRootFromParent_Done, |
| 58428 | /* 165131 */ // Label 3597: @165131 |
| 58429 | /* 165131 */ GIM_Try, /*On fail goto*//*Label 3598*/ GIMT_Encode4(165199), // Rule ID 10147 // |
| 58430 | /* 165136 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 58431 | /* 165139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58432 | /* 165143 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58433 | /* 165147 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58434 | /* 165151 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58435 | /* 165155 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58436 | /* 165158 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58437 | /* 165162 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58438 | /* 165166 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58439 | /* 165170 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58440 | /* 165172 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58441 | /* 165179 */ // (fma:{ *:[f64] } FR64X:{ *:[f64] }:$src2, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64X:{ *:[f64] }:$src1) => (VFMADD231SDZm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58442 | /* 165179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SDZm), |
| 58443 | /* 165182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58444 | /* 165184 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58445 | /* 165186 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58446 | /* 165188 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58447 | /* 165192 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58448 | /* 165197 */ GIR_RootConstrainSelectedInstOperands, |
| 58449 | /* 165198 */ // GIR_Coverage, 10147, |
| 58450 | /* 165198 */ GIR_EraseRootFromParent_Done, |
| 58451 | /* 165199 */ // Label 3598: @165199 |
| 58452 | /* 165199 */ GIM_Try, /*On fail goto*//*Label 3599*/ GIMT_Encode4(165267), // Rule ID 1308 // |
| 58453 | /* 165204 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 58454 | /* 165207 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58455 | /* 165211 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58456 | /* 165215 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58457 | /* 165219 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58458 | /* 165223 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58459 | /* 165227 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58460 | /* 165230 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58461 | /* 165234 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58462 | /* 165238 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58463 | /* 165240 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58464 | /* 165247 */ // (fma:{ *:[f64] } FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213SDm:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58465 | /* 165247 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDm), |
| 58466 | /* 165250 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58467 | /* 165252 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58468 | /* 165254 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58469 | /* 165256 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58470 | /* 165260 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58471 | /* 165265 */ GIR_RootConstrainSelectedInstOperands, |
| 58472 | /* 165266 */ // GIR_Coverage, 1308, |
| 58473 | /* 165266 */ GIR_EraseRootFromParent_Done, |
| 58474 | /* 165267 */ // Label 3599: @165267 |
| 58475 | /* 165267 */ GIM_Try, /*On fail goto*//*Label 3600*/ GIMT_Encode4(165335), // Rule ID 1448 // |
| 58476 | /* 165272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 58477 | /* 165275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58478 | /* 165279 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58479 | /* 165283 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58480 | /* 165287 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58481 | /* 165291 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58482 | /* 165295 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58483 | /* 165298 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58484 | /* 165302 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58485 | /* 165306 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58486 | /* 165308 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58487 | /* 165315 */ // (fma:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDSD4rm:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58488 | /* 165315 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4rm), |
| 58489 | /* 165318 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58490 | /* 165320 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58491 | /* 165322 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 58492 | /* 165324 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58493 | /* 165328 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58494 | /* 165333 */ GIR_RootConstrainSelectedInstOperands, |
| 58495 | /* 165334 */ // GIR_Coverage, 1448, |
| 58496 | /* 165334 */ GIR_EraseRootFromParent_Done, |
| 58497 | /* 165335 */ // Label 3600: @165335 |
| 58498 | /* 165335 */ GIM_Try, /*On fail goto*//*Label 3601*/ GIMT_Encode4(165403), // Rule ID 10144 // |
| 58499 | /* 165340 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 58500 | /* 165343 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58501 | /* 165347 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58502 | /* 165351 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58503 | /* 165355 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58504 | /* 165359 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58505 | /* 165363 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58506 | /* 165366 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58507 | /* 165370 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58508 | /* 165374 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58509 | /* 165376 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58510 | /* 165383 */ // (fma:{ *:[f64] } FR64X:{ *:[f64] }:$src2, FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213SDZm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58511 | /* 165383 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDZm), |
| 58512 | /* 165386 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58513 | /* 165388 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58514 | /* 165390 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58515 | /* 165392 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58516 | /* 165396 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58517 | /* 165401 */ GIR_RootConstrainSelectedInstOperands, |
| 58518 | /* 165402 */ // GIR_Coverage, 10144, |
| 58519 | /* 165402 */ GIR_EraseRootFromParent_Done, |
| 58520 | /* 165403 */ // Label 3601: @165403 |
| 58521 | /* 165403 */ GIM_Try, /*On fail goto*//*Label 3602*/ GIMT_Encode4(165440), // Rule ID 1306 // |
| 58522 | /* 165408 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 58523 | /* 165411 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58524 | /* 165415 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58525 | /* 165419 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58526 | /* 165423 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58527 | /* 165427 */ // (fma:{ *:[f64] } FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src3) => (VFMADD213SDr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) |
| 58528 | /* 165427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDr), |
| 58529 | /* 165430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58530 | /* 165432 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58531 | /* 165434 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58532 | /* 165436 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58533 | /* 165438 */ GIR_RootConstrainSelectedInstOperands, |
| 58534 | /* 165439 */ // GIR_Coverage, 1306, |
| 58535 | /* 165439 */ GIR_EraseRootFromParent_Done, |
| 58536 | /* 165440 */ // Label 3602: @165440 |
| 58537 | /* 165440 */ GIM_Try, /*On fail goto*//*Label 3603*/ GIMT_Encode4(165475), // Rule ID 1446 // |
| 58538 | /* 165445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 58539 | /* 165448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58540 | /* 165452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58541 | /* 165456 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58542 | /* 165460 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58543 | /* 165464 */ // (fma:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) => (VFMADDSD4rr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) |
| 58544 | /* 165464 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4rr), |
| 58545 | /* 165469 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 58546 | /* 165473 */ GIR_RootConstrainSelectedInstOperands, |
| 58547 | /* 165474 */ // GIR_Coverage, 1446, |
| 58548 | /* 165474 */ GIR_Done, |
| 58549 | /* 165475 */ // Label 3603: @165475 |
| 58550 | /* 165475 */ GIM_Try, /*On fail goto*//*Label 3604*/ GIMT_Encode4(165512), // Rule ID 10142 // |
| 58551 | /* 165480 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 58552 | /* 165483 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58553 | /* 165487 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58554 | /* 165491 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58555 | /* 165495 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58556 | /* 165499 */ // (fma:{ *:[f64] } FR64X:{ *:[f64] }:$src2, FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src3) => (VFMADD213SDZr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2, FR64X:{ *:[f64] }:$src3) |
| 58557 | /* 165499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDZr), |
| 58558 | /* 165502 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58559 | /* 165504 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58560 | /* 165506 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58561 | /* 165508 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58562 | /* 165510 */ GIR_RootConstrainSelectedInstOperands, |
| 58563 | /* 165511 */ // GIR_Coverage, 10142, |
| 58564 | /* 165511 */ GIR_EraseRootFromParent_Done, |
| 58565 | /* 165512 */ // Label 3604: @165512 |
| 58566 | /* 165512 */ GIM_Reject, |
| 58567 | /* 165513 */ // Label 3592: @165513 |
| 58568 | /* 165513 */ GIM_Reject, |
| 58569 | /* 165514 */ // Label 3564: @165514 |
| 58570 | /* 165514 */ GIM_Try, /*On fail goto*//*Label 3605*/ GIMT_Encode4(166250), |
| 58571 | /* 165519 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 58572 | /* 165522 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 58573 | /* 165525 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 58574 | /* 165528 */ GIM_Try, /*On fail goto*//*Label 3606*/ GIMT_Encode4(165596), // Rule ID 1192 // |
| 58575 | /* 165533 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58576 | /* 165536 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58577 | /* 165540 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58578 | /* 165544 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58579 | /* 165548 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58580 | /* 165551 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58581 | /* 165555 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58582 | /* 165559 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58583 | /* 165563 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58584 | /* 165567 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58585 | /* 165569 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58586 | /* 165576 */ // (fma:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VFMADD132PDm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58587 | /* 165576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDm), |
| 58588 | /* 165579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58589 | /* 165581 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58590 | /* 165583 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58591 | /* 165585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58592 | /* 165589 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58593 | /* 165594 */ GIR_RootConstrainSelectedInstOperands, |
| 58594 | /* 165595 */ // GIR_Coverage, 1192, |
| 58595 | /* 165595 */ GIR_EraseRootFromParent_Done, |
| 58596 | /* 165596 */ // Label 3606: @165596 |
| 58597 | /* 165596 */ GIM_Try, /*On fail goto*//*Label 3607*/ GIMT_Encode4(165664), // Rule ID 9681 // |
| 58598 | /* 165601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58599 | /* 165604 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58600 | /* 165608 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58601 | /* 165612 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58602 | /* 165616 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58603 | /* 165619 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58604 | /* 165623 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58605 | /* 165627 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58606 | /* 165631 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58607 | /* 165635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58608 | /* 165637 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58609 | /* 165644 */ // (fma:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VFMADD132PDZ128m:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58610 | /* 165644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZ128m), |
| 58611 | /* 165647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58612 | /* 165649 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58613 | /* 165651 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58614 | /* 165653 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58615 | /* 165657 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58616 | /* 165662 */ GIR_RootConstrainSelectedInstOperands, |
| 58617 | /* 165663 */ // GIR_Coverage, 9681, |
| 58618 | /* 165663 */ GIR_EraseRootFromParent_Done, |
| 58619 | /* 165664 */ // Label 3607: @165664 |
| 58620 | /* 165664 */ GIM_Try, /*On fail goto*//*Label 3608*/ GIMT_Encode4(165732), // Rule ID 23317 // |
| 58621 | /* 165669 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58622 | /* 165672 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58623 | /* 165676 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58624 | /* 165680 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58625 | /* 165684 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58626 | /* 165687 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58627 | /* 165691 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58628 | /* 165695 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58629 | /* 165699 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58630 | /* 165703 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58631 | /* 165705 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58632 | /* 165712 */ // (fma:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src3) => (VFMADDPD4mr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 58633 | /* 165712 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4mr), |
| 58634 | /* 165715 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58635 | /* 165717 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58636 | /* 165719 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58637 | /* 165723 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58638 | /* 165725 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58639 | /* 165730 */ GIR_RootConstrainSelectedInstOperands, |
| 58640 | /* 165731 */ // GIR_Coverage, 23317, |
| 58641 | /* 165731 */ GIR_EraseRootFromParent_Done, |
| 58642 | /* 165732 */ // Label 3608: @165732 |
| 58643 | /* 165732 */ GIM_Try, /*On fail goto*//*Label 3609*/ GIMT_Encode4(165800), // Rule ID 1190 // |
| 58644 | /* 165737 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58645 | /* 165740 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58646 | /* 165744 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58647 | /* 165748 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58648 | /* 165752 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58649 | /* 165756 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58650 | /* 165759 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58651 | /* 165763 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58652 | /* 165767 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58653 | /* 165771 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58654 | /* 165773 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58655 | /* 165780 */ // (fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src2, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1) => (VFMADD231PDm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58656 | /* 165780 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDm), |
| 58657 | /* 165783 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58658 | /* 165785 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58659 | /* 165787 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58660 | /* 165789 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58661 | /* 165793 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58662 | /* 165798 */ GIR_RootConstrainSelectedInstOperands, |
| 58663 | /* 165799 */ // GIR_Coverage, 1190, |
| 58664 | /* 165799 */ GIR_EraseRootFromParent_Done, |
| 58665 | /* 165800 */ // Label 3609: @165800 |
| 58666 | /* 165800 */ GIM_Try, /*On fail goto*//*Label 3610*/ GIMT_Encode4(165868), // Rule ID 1474 // |
| 58667 | /* 165805 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58668 | /* 165808 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58669 | /* 165812 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58670 | /* 165816 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58671 | /* 165820 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58672 | /* 165824 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58673 | /* 165827 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58674 | /* 165831 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58675 | /* 165835 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58676 | /* 165839 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58677 | /* 165841 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58678 | /* 165848 */ // (fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src3) => (VFMADDPD4mr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 58679 | /* 165848 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4mr), |
| 58680 | /* 165851 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58681 | /* 165853 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58682 | /* 165855 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58683 | /* 165859 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58684 | /* 165861 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58685 | /* 165866 */ GIR_RootConstrainSelectedInstOperands, |
| 58686 | /* 165867 */ // GIR_Coverage, 1474, |
| 58687 | /* 165867 */ GIR_EraseRootFromParent_Done, |
| 58688 | /* 165868 */ // Label 3610: @165868 |
| 58689 | /* 165868 */ GIM_Try, /*On fail goto*//*Label 3611*/ GIMT_Encode4(165936), // Rule ID 9141 // |
| 58690 | /* 165873 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58691 | /* 165876 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58692 | /* 165880 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58693 | /* 165884 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58694 | /* 165888 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58695 | /* 165892 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58696 | /* 165895 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58697 | /* 165899 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58698 | /* 165903 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58699 | /* 165907 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58700 | /* 165909 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58701 | /* 165916 */ // (fma:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src2, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2f64] }:$src1) => (VFMADD231PDZ128m:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58702 | /* 165916 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZ128m), |
| 58703 | /* 165919 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58704 | /* 165921 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58705 | /* 165923 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58706 | /* 165925 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58707 | /* 165929 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58708 | /* 165934 */ GIR_RootConstrainSelectedInstOperands, |
| 58709 | /* 165935 */ // GIR_Coverage, 9141, |
| 58710 | /* 165935 */ GIR_EraseRootFromParent_Done, |
| 58711 | /* 165936 */ // Label 3611: @165936 |
| 58712 | /* 165936 */ GIM_Try, /*On fail goto*//*Label 3612*/ GIMT_Encode4(166004), // Rule ID 1188 // |
| 58713 | /* 165941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58714 | /* 165944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58715 | /* 165948 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58716 | /* 165952 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58717 | /* 165956 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58718 | /* 165960 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58719 | /* 165964 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58720 | /* 165967 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58721 | /* 165971 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58722 | /* 165975 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58723 | /* 165977 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58724 | /* 165984 */ // (fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PDm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58725 | /* 165984 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDm), |
| 58726 | /* 165987 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58727 | /* 165989 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58728 | /* 165991 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58729 | /* 165993 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58730 | /* 165997 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58731 | /* 166002 */ GIR_RootConstrainSelectedInstOperands, |
| 58732 | /* 166003 */ // GIR_Coverage, 1188, |
| 58733 | /* 166003 */ GIR_EraseRootFromParent_Done, |
| 58734 | /* 166004 */ // Label 3612: @166004 |
| 58735 | /* 166004 */ GIM_Try, /*On fail goto*//*Label 3613*/ GIMT_Encode4(166072), // Rule ID 1472 // |
| 58736 | /* 166009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58737 | /* 166012 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58738 | /* 166016 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58739 | /* 166020 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58740 | /* 166024 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58741 | /* 166028 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58742 | /* 166032 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58743 | /* 166035 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58744 | /* 166039 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58745 | /* 166043 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58746 | /* 166045 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58747 | /* 166052 */ // (fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDPD4rm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58748 | /* 166052 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4rm), |
| 58749 | /* 166055 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58750 | /* 166057 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58751 | /* 166059 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 58752 | /* 166061 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58753 | /* 166065 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58754 | /* 166070 */ GIR_RootConstrainSelectedInstOperands, |
| 58755 | /* 166071 */ // GIR_Coverage, 1472, |
| 58756 | /* 166071 */ GIR_EraseRootFromParent_Done, |
| 58757 | /* 166072 */ // Label 3613: @166072 |
| 58758 | /* 166072 */ GIM_Try, /*On fail goto*//*Label 3614*/ GIMT_Encode4(166140), // Rule ID 8514 // |
| 58759 | /* 166077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58760 | /* 166080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58761 | /* 166084 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58762 | /* 166088 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58763 | /* 166092 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58764 | /* 166096 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58765 | /* 166100 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58766 | /* 166103 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58767 | /* 166107 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58768 | /* 166111 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58769 | /* 166113 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58770 | /* 166120 */ // (fma:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src2, VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PDZ128m:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58771 | /* 166120 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ128m), |
| 58772 | /* 166123 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58773 | /* 166125 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58774 | /* 166127 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58775 | /* 166129 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58776 | /* 166133 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58777 | /* 166138 */ GIR_RootConstrainSelectedInstOperands, |
| 58778 | /* 166139 */ // GIR_Coverage, 8514, |
| 58779 | /* 166139 */ GIR_EraseRootFromParent_Done, |
| 58780 | /* 166140 */ // Label 3614: @166140 |
| 58781 | /* 166140 */ GIM_Try, /*On fail goto*//*Label 3615*/ GIMT_Encode4(166177), // Rule ID 1186 // |
| 58782 | /* 166145 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58783 | /* 166148 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58784 | /* 166152 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58785 | /* 166156 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58786 | /* 166160 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58787 | /* 166164 */ // (fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src3) => (VFMADD213PDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 58788 | /* 166164 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDr), |
| 58789 | /* 166167 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58790 | /* 166169 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58791 | /* 166171 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58792 | /* 166173 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58793 | /* 166175 */ GIR_RootConstrainSelectedInstOperands, |
| 58794 | /* 166176 */ // GIR_Coverage, 1186, |
| 58795 | /* 166176 */ GIR_EraseRootFromParent_Done, |
| 58796 | /* 166177 */ // Label 3615: @166177 |
| 58797 | /* 166177 */ GIM_Try, /*On fail goto*//*Label 3616*/ GIMT_Encode4(166212), // Rule ID 1470 // |
| 58798 | /* 166182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58799 | /* 166185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58800 | /* 166189 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58801 | /* 166193 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58802 | /* 166197 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58803 | /* 166201 */ // (fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) => (VFMADDPD4rr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 58804 | /* 166201 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4rr), |
| 58805 | /* 166206 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 58806 | /* 166210 */ GIR_RootConstrainSelectedInstOperands, |
| 58807 | /* 166211 */ // GIR_Coverage, 1470, |
| 58808 | /* 166211 */ GIR_Done, |
| 58809 | /* 166212 */ // Label 3616: @166212 |
| 58810 | /* 166212 */ GIM_Try, /*On fail goto*//*Label 3617*/ GIMT_Encode4(166249), // Rule ID 8510 // |
| 58811 | /* 166217 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58812 | /* 166220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58813 | /* 166224 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58814 | /* 166228 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58815 | /* 166232 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58816 | /* 166236 */ // (fma:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src2, VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src3) => (VFMADD213PDZ128r:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2, VR128X:{ *:[v2f64] }:$src3) |
| 58817 | /* 166236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ128r), |
| 58818 | /* 166239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58819 | /* 166241 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58820 | /* 166243 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58821 | /* 166245 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58822 | /* 166247 */ GIR_RootConstrainSelectedInstOperands, |
| 58823 | /* 166248 */ // GIR_Coverage, 8510, |
| 58824 | /* 166248 */ GIR_EraseRootFromParent_Done, |
| 58825 | /* 166249 */ // Label 3617: @166249 |
| 58826 | /* 166249 */ GIM_Reject, |
| 58827 | /* 166250 */ // Label 3605: @166250 |
| 58828 | /* 166250 */ GIM_Reject, |
| 58829 | /* 166251 */ // Label 3565: @166251 |
| 58830 | /* 166251 */ GIM_Try, /*On fail goto*//*Label 3618*/ GIMT_Encode4(166987), |
| 58831 | /* 166256 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 58832 | /* 166259 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 58833 | /* 166262 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 58834 | /* 166265 */ GIM_Try, /*On fail goto*//*Label 3619*/ GIMT_Encode4(166333), // Rule ID 1144 // |
| 58835 | /* 166270 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58836 | /* 166273 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58837 | /* 166277 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58838 | /* 166281 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58839 | /* 166285 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58840 | /* 166288 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58841 | /* 166292 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58842 | /* 166296 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58843 | /* 166300 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58844 | /* 166304 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58845 | /* 166306 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58846 | /* 166313 */ // (fma:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VFMADD132PSm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58847 | /* 166313 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSm), |
| 58848 | /* 166316 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58849 | /* 166318 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58850 | /* 166320 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58851 | /* 166322 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58852 | /* 166326 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58853 | /* 166331 */ GIR_RootConstrainSelectedInstOperands, |
| 58854 | /* 166332 */ // GIR_Coverage, 1144, |
| 58855 | /* 166332 */ GIR_EraseRootFromParent_Done, |
| 58856 | /* 166333 */ // Label 3619: @166333 |
| 58857 | /* 166333 */ GIM_Try, /*On fail goto*//*Label 3620*/ GIMT_Encode4(166401), // Rule ID 9649 // |
| 58858 | /* 166338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58859 | /* 166341 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58860 | /* 166345 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58861 | /* 166349 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58862 | /* 166353 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58863 | /* 166356 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58864 | /* 166360 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58865 | /* 166364 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58866 | /* 166368 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58867 | /* 166372 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58868 | /* 166374 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58869 | /* 166381 */ // (fma:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VFMADD132PSZ128m:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58870 | /* 166381 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZ128m), |
| 58871 | /* 166384 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58872 | /* 166386 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58873 | /* 166388 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58874 | /* 166390 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58875 | /* 166394 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58876 | /* 166399 */ GIR_RootConstrainSelectedInstOperands, |
| 58877 | /* 166400 */ // GIR_Coverage, 9649, |
| 58878 | /* 166400 */ GIR_EraseRootFromParent_Done, |
| 58879 | /* 166401 */ // Label 3620: @166401 |
| 58880 | /* 166401 */ GIM_Try, /*On fail goto*//*Label 3621*/ GIMT_Encode4(166469), // Rule ID 23289 // |
| 58881 | /* 166406 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58882 | /* 166409 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58883 | /* 166413 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58884 | /* 166417 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58885 | /* 166421 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58886 | /* 166424 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58887 | /* 166428 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58888 | /* 166432 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58889 | /* 166436 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58890 | /* 166440 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58891 | /* 166442 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58892 | /* 166449 */ // (fma:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src3) => (VFMADDPS4mr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 58893 | /* 166449 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4mr), |
| 58894 | /* 166452 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58895 | /* 166454 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58896 | /* 166456 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58897 | /* 166460 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58898 | /* 166462 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58899 | /* 166467 */ GIR_RootConstrainSelectedInstOperands, |
| 58900 | /* 166468 */ // GIR_Coverage, 23289, |
| 58901 | /* 166468 */ GIR_EraseRootFromParent_Done, |
| 58902 | /* 166469 */ // Label 3621: @166469 |
| 58903 | /* 166469 */ GIM_Try, /*On fail goto*//*Label 3622*/ GIMT_Encode4(166537), // Rule ID 1142 // |
| 58904 | /* 166474 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58905 | /* 166477 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58906 | /* 166481 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58907 | /* 166485 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58908 | /* 166489 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58909 | /* 166493 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58910 | /* 166496 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58911 | /* 166500 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58912 | /* 166504 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58913 | /* 166508 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58914 | /* 166510 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58915 | /* 166517 */ // (fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src2, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1) => (VFMADD231PSm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58916 | /* 166517 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSm), |
| 58917 | /* 166520 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58918 | /* 166522 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58919 | /* 166524 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58920 | /* 166526 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58921 | /* 166530 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58922 | /* 166535 */ GIR_RootConstrainSelectedInstOperands, |
| 58923 | /* 166536 */ // GIR_Coverage, 1142, |
| 58924 | /* 166536 */ GIR_EraseRootFromParent_Done, |
| 58925 | /* 166537 */ // Label 3622: @166537 |
| 58926 | /* 166537 */ GIM_Try, /*On fail goto*//*Label 3623*/ GIMT_Encode4(166605), // Rule ID 1390 // |
| 58927 | /* 166542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58928 | /* 166545 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58929 | /* 166549 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58930 | /* 166553 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58931 | /* 166557 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58932 | /* 166561 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58933 | /* 166564 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58934 | /* 166568 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58935 | /* 166572 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58936 | /* 166576 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58937 | /* 166578 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58938 | /* 166585 */ // (fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src3) => (VFMADDPS4mr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 58939 | /* 166585 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4mr), |
| 58940 | /* 166588 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58941 | /* 166590 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58942 | /* 166592 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58943 | /* 166596 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58944 | /* 166598 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58945 | /* 166603 */ GIR_RootConstrainSelectedInstOperands, |
| 58946 | /* 166604 */ // GIR_Coverage, 1390, |
| 58947 | /* 166604 */ GIR_EraseRootFromParent_Done, |
| 58948 | /* 166605 */ // Label 3623: @166605 |
| 58949 | /* 166605 */ GIM_Try, /*On fail goto*//*Label 3624*/ GIMT_Encode4(166673), // Rule ID 9109 // |
| 58950 | /* 166610 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58951 | /* 166613 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58952 | /* 166617 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58953 | /* 166621 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58954 | /* 166625 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58955 | /* 166629 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58956 | /* 166632 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58957 | /* 166636 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58958 | /* 166640 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58959 | /* 166644 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58960 | /* 166646 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58961 | /* 166653 */ // (fma:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src2, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4f32] }:$src1) => (VFMADD231PSZ128m:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58962 | /* 166653 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZ128m), |
| 58963 | /* 166656 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58964 | /* 166658 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58965 | /* 166660 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58966 | /* 166662 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58967 | /* 166666 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58968 | /* 166671 */ GIR_RootConstrainSelectedInstOperands, |
| 58969 | /* 166672 */ // GIR_Coverage, 9109, |
| 58970 | /* 166672 */ GIR_EraseRootFromParent_Done, |
| 58971 | /* 166673 */ // Label 3624: @166673 |
| 58972 | /* 166673 */ GIM_Try, /*On fail goto*//*Label 3625*/ GIMT_Encode4(166741), // Rule ID 1140 // |
| 58973 | /* 166678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58974 | /* 166681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58975 | /* 166685 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58976 | /* 166689 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58977 | /* 166693 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58978 | /* 166697 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58979 | /* 166701 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58980 | /* 166704 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58981 | /* 166708 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58982 | /* 166712 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58983 | /* 166714 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58984 | /* 166721 */ // (fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PSm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 58985 | /* 166721 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSm), |
| 58986 | /* 166724 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58987 | /* 166726 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58988 | /* 166728 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58989 | /* 166730 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58990 | /* 166734 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58991 | /* 166739 */ GIR_RootConstrainSelectedInstOperands, |
| 58992 | /* 166740 */ // GIR_Coverage, 1140, |
| 58993 | /* 166740 */ GIR_EraseRootFromParent_Done, |
| 58994 | /* 166741 */ // Label 3625: @166741 |
| 58995 | /* 166741 */ GIM_Try, /*On fail goto*//*Label 3626*/ GIMT_Encode4(166809), // Rule ID 1388 // |
| 58996 | /* 166746 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58997 | /* 166749 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58998 | /* 166753 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58999 | /* 166757 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 59000 | /* 166761 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59001 | /* 166765 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59002 | /* 166769 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59003 | /* 166772 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59004 | /* 166776 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59005 | /* 166780 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59006 | /* 166782 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59007 | /* 166789 */ // (fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDPS4rm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59008 | /* 166789 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4rm), |
| 59009 | /* 166792 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59010 | /* 166794 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59011 | /* 166796 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 59012 | /* 166798 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59013 | /* 166802 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59014 | /* 166807 */ GIR_RootConstrainSelectedInstOperands, |
| 59015 | /* 166808 */ // GIR_Coverage, 1388, |
| 59016 | /* 166808 */ GIR_EraseRootFromParent_Done, |
| 59017 | /* 166809 */ // Label 3626: @166809 |
| 59018 | /* 166809 */ GIM_Try, /*On fail goto*//*Label 3627*/ GIMT_Encode4(166877), // Rule ID 8475 // |
| 59019 | /* 166814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59020 | /* 166817 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59021 | /* 166821 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59022 | /* 166825 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59023 | /* 166829 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59024 | /* 166833 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59025 | /* 166837 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59026 | /* 166840 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59027 | /* 166844 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59028 | /* 166848 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59029 | /* 166850 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59030 | /* 166857 */ // (fma:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src2, VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PSZ128m:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59031 | /* 166857 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ128m), |
| 59032 | /* 166860 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59033 | /* 166862 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59034 | /* 166864 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59035 | /* 166866 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59036 | /* 166870 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59037 | /* 166875 */ GIR_RootConstrainSelectedInstOperands, |
| 59038 | /* 166876 */ // GIR_Coverage, 8475, |
| 59039 | /* 166876 */ GIR_EraseRootFromParent_Done, |
| 59040 | /* 166877 */ // Label 3627: @166877 |
| 59041 | /* 166877 */ GIM_Try, /*On fail goto*//*Label 3628*/ GIMT_Encode4(166914), // Rule ID 1138 // |
| 59042 | /* 166882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59043 | /* 166885 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 59044 | /* 166889 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 59045 | /* 166893 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 59046 | /* 166897 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 59047 | /* 166901 */ // (fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src3) => (VFMADD213PSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 59048 | /* 166901 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSr), |
| 59049 | /* 166904 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59050 | /* 166906 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59051 | /* 166908 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59052 | /* 166910 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59053 | /* 166912 */ GIR_RootConstrainSelectedInstOperands, |
| 59054 | /* 166913 */ // GIR_Coverage, 1138, |
| 59055 | /* 166913 */ GIR_EraseRootFromParent_Done, |
| 59056 | /* 166914 */ // Label 3628: @166914 |
| 59057 | /* 166914 */ GIM_Try, /*On fail goto*//*Label 3629*/ GIMT_Encode4(166949), // Rule ID 1386 // |
| 59058 | /* 166919 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59059 | /* 166922 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 59060 | /* 166926 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 59061 | /* 166930 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 59062 | /* 166934 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 59063 | /* 166938 */ // (fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) => (VFMADDPS4rr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 59064 | /* 166938 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4rr), |
| 59065 | /* 166943 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 59066 | /* 166947 */ GIR_RootConstrainSelectedInstOperands, |
| 59067 | /* 166948 */ // GIR_Coverage, 1386, |
| 59068 | /* 166948 */ GIR_Done, |
| 59069 | /* 166949 */ // Label 3629: @166949 |
| 59070 | /* 166949 */ GIM_Try, /*On fail goto*//*Label 3630*/ GIMT_Encode4(166986), // Rule ID 8471 // |
| 59071 | /* 166954 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59072 | /* 166957 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59073 | /* 166961 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59074 | /* 166965 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59075 | /* 166969 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59076 | /* 166973 */ // (fma:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src2, VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src3) => (VFMADD213PSZ128r:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2, VR128X:{ *:[v4f32] }:$src3) |
| 59077 | /* 166973 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ128r), |
| 59078 | /* 166976 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59079 | /* 166978 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59080 | /* 166980 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59081 | /* 166982 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59082 | /* 166984 */ GIR_RootConstrainSelectedInstOperands, |
| 59083 | /* 166985 */ // GIR_Coverage, 8471, |
| 59084 | /* 166985 */ GIR_EraseRootFromParent_Done, |
| 59085 | /* 166986 */ // Label 3630: @166986 |
| 59086 | /* 166986 */ GIM_Reject, |
| 59087 | /* 166987 */ // Label 3618: @166987 |
| 59088 | /* 166987 */ GIM_Reject, |
| 59089 | /* 166988 */ // Label 3566: @166988 |
| 59090 | /* 166988 */ GIM_Try, /*On fail goto*//*Label 3631*/ GIMT_Encode4(167724), |
| 59091 | /* 166993 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 59092 | /* 166996 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 59093 | /* 166999 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 59094 | /* 167002 */ GIM_Try, /*On fail goto*//*Label 3632*/ GIMT_Encode4(167070), // Rule ID 1200 // |
| 59095 | /* 167007 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59096 | /* 167010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59097 | /* 167014 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59098 | /* 167018 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59099 | /* 167022 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59100 | /* 167025 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59101 | /* 167029 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59102 | /* 167033 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59103 | /* 167037 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59104 | /* 167041 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59105 | /* 167043 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59106 | /* 167050 */ // (fma:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VFMADD132PDYm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59107 | /* 167050 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDYm), |
| 59108 | /* 167053 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59109 | /* 167055 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59110 | /* 167057 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59111 | /* 167059 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59112 | /* 167063 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59113 | /* 167068 */ GIR_RootConstrainSelectedInstOperands, |
| 59114 | /* 167069 */ // GIR_Coverage, 1200, |
| 59115 | /* 167069 */ GIR_EraseRootFromParent_Done, |
| 59116 | /* 167070 */ // Label 3632: @167070 |
| 59117 | /* 167070 */ GIM_Try, /*On fail goto*//*Label 3633*/ GIMT_Encode4(167138), // Rule ID 9671 // |
| 59118 | /* 167075 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59119 | /* 167078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59120 | /* 167082 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59121 | /* 167086 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59122 | /* 167090 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59123 | /* 167093 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59124 | /* 167097 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59125 | /* 167101 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59126 | /* 167105 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59127 | /* 167109 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59128 | /* 167111 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59129 | /* 167118 */ // (fma:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VFMADD132PDZ256m:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59130 | /* 167118 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZ256m), |
| 59131 | /* 167121 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59132 | /* 167123 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59133 | /* 167125 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59134 | /* 167127 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59135 | /* 167131 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59136 | /* 167136 */ GIR_RootConstrainSelectedInstOperands, |
| 59137 | /* 167137 */ // GIR_Coverage, 9671, |
| 59138 | /* 167137 */ GIR_EraseRootFromParent_Done, |
| 59139 | /* 167138 */ // Label 3633: @167138 |
| 59140 | /* 167138 */ GIM_Try, /*On fail goto*//*Label 3634*/ GIMT_Encode4(167206), // Rule ID 23319 // |
| 59141 | /* 167143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59142 | /* 167146 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59143 | /* 167150 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59144 | /* 167154 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59145 | /* 167158 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59146 | /* 167161 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59147 | /* 167165 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59148 | /* 167169 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59149 | /* 167173 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59150 | /* 167177 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59151 | /* 167179 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59152 | /* 167186 */ // (fma:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src3) => (VFMADDPD4Ymr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 59153 | /* 167186 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Ymr), |
| 59154 | /* 167189 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59155 | /* 167191 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59156 | /* 167193 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59157 | /* 167197 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59158 | /* 167199 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59159 | /* 167204 */ GIR_RootConstrainSelectedInstOperands, |
| 59160 | /* 167205 */ // GIR_Coverage, 23319, |
| 59161 | /* 167205 */ GIR_EraseRootFromParent_Done, |
| 59162 | /* 167206 */ // Label 3634: @167206 |
| 59163 | /* 167206 */ GIM_Try, /*On fail goto*//*Label 3635*/ GIMT_Encode4(167274), // Rule ID 1198 // |
| 59164 | /* 167211 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59165 | /* 167214 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59166 | /* 167218 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59167 | /* 167222 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59168 | /* 167226 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59169 | /* 167230 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59170 | /* 167233 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59171 | /* 167237 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59172 | /* 167241 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59173 | /* 167245 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59174 | /* 167247 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59175 | /* 167254 */ // (fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src2, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1) => (VFMADD231PDYm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59176 | /* 167254 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDYm), |
| 59177 | /* 167257 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59178 | /* 167259 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59179 | /* 167261 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59180 | /* 167263 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59181 | /* 167267 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59182 | /* 167272 */ GIR_RootConstrainSelectedInstOperands, |
| 59183 | /* 167273 */ // GIR_Coverage, 1198, |
| 59184 | /* 167273 */ GIR_EraseRootFromParent_Done, |
| 59185 | /* 167274 */ // Label 3635: @167274 |
| 59186 | /* 167274 */ GIM_Try, /*On fail goto*//*Label 3636*/ GIMT_Encode4(167342), // Rule ID 1480 // |
| 59187 | /* 167279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59188 | /* 167282 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59189 | /* 167286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59190 | /* 167290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59191 | /* 167294 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59192 | /* 167298 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59193 | /* 167301 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59194 | /* 167305 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59195 | /* 167309 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59196 | /* 167313 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59197 | /* 167315 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59198 | /* 167322 */ // (fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src3) => (VFMADDPD4Ymr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 59199 | /* 167322 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Ymr), |
| 59200 | /* 167325 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59201 | /* 167327 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59202 | /* 167329 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59203 | /* 167333 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59204 | /* 167335 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59205 | /* 167340 */ GIR_RootConstrainSelectedInstOperands, |
| 59206 | /* 167341 */ // GIR_Coverage, 1480, |
| 59207 | /* 167341 */ GIR_EraseRootFromParent_Done, |
| 59208 | /* 167342 */ // Label 3636: @167342 |
| 59209 | /* 167342 */ GIM_Try, /*On fail goto*//*Label 3637*/ GIMT_Encode4(167410), // Rule ID 9131 // |
| 59210 | /* 167347 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59211 | /* 167350 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59212 | /* 167354 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59213 | /* 167358 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59214 | /* 167362 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59215 | /* 167366 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59216 | /* 167369 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59217 | /* 167373 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59218 | /* 167377 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59219 | /* 167381 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59220 | /* 167383 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59221 | /* 167390 */ // (fma:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src2, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4f64] }:$src1) => (VFMADD231PDZ256m:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59222 | /* 167390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZ256m), |
| 59223 | /* 167393 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59224 | /* 167395 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59225 | /* 167397 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59226 | /* 167399 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59227 | /* 167403 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59228 | /* 167408 */ GIR_RootConstrainSelectedInstOperands, |
| 59229 | /* 167409 */ // GIR_Coverage, 9131, |
| 59230 | /* 167409 */ GIR_EraseRootFromParent_Done, |
| 59231 | /* 167410 */ // Label 3637: @167410 |
| 59232 | /* 167410 */ GIM_Try, /*On fail goto*//*Label 3638*/ GIMT_Encode4(167478), // Rule ID 1196 // |
| 59233 | /* 167415 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59234 | /* 167418 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59235 | /* 167422 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59236 | /* 167426 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59237 | /* 167430 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59238 | /* 167434 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59239 | /* 167438 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59240 | /* 167441 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59241 | /* 167445 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59242 | /* 167449 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59243 | /* 167451 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59244 | /* 167458 */ // (fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PDYm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59245 | /* 167458 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDYm), |
| 59246 | /* 167461 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59247 | /* 167463 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59248 | /* 167465 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59249 | /* 167467 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59250 | /* 167471 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59251 | /* 167476 */ GIR_RootConstrainSelectedInstOperands, |
| 59252 | /* 167477 */ // GIR_Coverage, 1196, |
| 59253 | /* 167477 */ GIR_EraseRootFromParent_Done, |
| 59254 | /* 167478 */ // Label 3638: @167478 |
| 59255 | /* 167478 */ GIM_Try, /*On fail goto*//*Label 3639*/ GIMT_Encode4(167546), // Rule ID 1478 // |
| 59256 | /* 167483 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59257 | /* 167486 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59258 | /* 167490 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59259 | /* 167494 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59260 | /* 167498 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59261 | /* 167502 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59262 | /* 167506 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59263 | /* 167509 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59264 | /* 167513 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59265 | /* 167517 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59266 | /* 167519 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59267 | /* 167526 */ // (fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDPD4Yrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59268 | /* 167526 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Yrm), |
| 59269 | /* 167529 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59270 | /* 167531 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59271 | /* 167533 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 59272 | /* 167535 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59273 | /* 167539 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59274 | /* 167544 */ GIR_RootConstrainSelectedInstOperands, |
| 59275 | /* 167545 */ // GIR_Coverage, 1478, |
| 59276 | /* 167545 */ GIR_EraseRootFromParent_Done, |
| 59277 | /* 167546 */ // Label 3639: @167546 |
| 59278 | /* 167546 */ GIM_Try, /*On fail goto*//*Label 3640*/ GIMT_Encode4(167614), // Rule ID 8502 // |
| 59279 | /* 167551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59280 | /* 167554 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59281 | /* 167558 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59282 | /* 167562 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59283 | /* 167566 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59284 | /* 167570 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59285 | /* 167574 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59286 | /* 167577 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59287 | /* 167581 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59288 | /* 167585 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59289 | /* 167587 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59290 | /* 167594 */ // (fma:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src2, VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PDZ256m:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59291 | /* 167594 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ256m), |
| 59292 | /* 167597 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59293 | /* 167599 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59294 | /* 167601 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59295 | /* 167603 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59296 | /* 167607 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59297 | /* 167612 */ GIR_RootConstrainSelectedInstOperands, |
| 59298 | /* 167613 */ // GIR_Coverage, 8502, |
| 59299 | /* 167613 */ GIR_EraseRootFromParent_Done, |
| 59300 | /* 167614 */ // Label 3640: @167614 |
| 59301 | /* 167614 */ GIM_Try, /*On fail goto*//*Label 3641*/ GIMT_Encode4(167651), // Rule ID 1194 // |
| 59302 | /* 167619 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59303 | /* 167622 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59304 | /* 167626 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59305 | /* 167630 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59306 | /* 167634 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59307 | /* 167638 */ // (fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src3) => (VFMADD213PDYr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 59308 | /* 167638 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDYr), |
| 59309 | /* 167641 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59310 | /* 167643 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59311 | /* 167645 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59312 | /* 167647 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59313 | /* 167649 */ GIR_RootConstrainSelectedInstOperands, |
| 59314 | /* 167650 */ // GIR_Coverage, 1194, |
| 59315 | /* 167650 */ GIR_EraseRootFromParent_Done, |
| 59316 | /* 167651 */ // Label 3641: @167651 |
| 59317 | /* 167651 */ GIM_Try, /*On fail goto*//*Label 3642*/ GIMT_Encode4(167686), // Rule ID 1476 // |
| 59318 | /* 167656 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59319 | /* 167659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59320 | /* 167663 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59321 | /* 167667 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59322 | /* 167671 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59323 | /* 167675 */ // (fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) => (VFMADDPD4Yrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 59324 | /* 167675 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Yrr), |
| 59325 | /* 167680 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 59326 | /* 167684 */ GIR_RootConstrainSelectedInstOperands, |
| 59327 | /* 167685 */ // GIR_Coverage, 1476, |
| 59328 | /* 167685 */ GIR_Done, |
| 59329 | /* 167686 */ // Label 3642: @167686 |
| 59330 | /* 167686 */ GIM_Try, /*On fail goto*//*Label 3643*/ GIMT_Encode4(167723), // Rule ID 8498 // |
| 59331 | /* 167691 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59332 | /* 167694 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59333 | /* 167698 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59334 | /* 167702 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59335 | /* 167706 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59336 | /* 167710 */ // (fma:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src2, VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src3) => (VFMADD213PDZ256r:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2, VR256X:{ *:[v4f64] }:$src3) |
| 59337 | /* 167710 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ256r), |
| 59338 | /* 167713 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59339 | /* 167715 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59340 | /* 167717 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59341 | /* 167719 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59342 | /* 167721 */ GIR_RootConstrainSelectedInstOperands, |
| 59343 | /* 167722 */ // GIR_Coverage, 8498, |
| 59344 | /* 167722 */ GIR_EraseRootFromParent_Done, |
| 59345 | /* 167723 */ // Label 3643: @167723 |
| 59346 | /* 167723 */ GIM_Reject, |
| 59347 | /* 167724 */ // Label 3631: @167724 |
| 59348 | /* 167724 */ GIM_Reject, |
| 59349 | /* 167725 */ // Label 3567: @167725 |
| 59350 | /* 167725 */ GIM_Try, /*On fail goto*//*Label 3644*/ GIMT_Encode4(167969), |
| 59351 | /* 167730 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 59352 | /* 167733 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 59353 | /* 167736 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 59354 | /* 167739 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59355 | /* 167743 */ GIM_Try, /*On fail goto*//*Label 3645*/ GIMT_Encode4(167807), // Rule ID 9617 // |
| 59356 | /* 167748 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59357 | /* 167751 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59358 | /* 167755 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59359 | /* 167759 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59360 | /* 167762 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59361 | /* 167766 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59362 | /* 167770 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59363 | /* 167774 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59364 | /* 167778 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59365 | /* 167780 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59366 | /* 167787 */ // (fma:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VFMADD132PHZ128m:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59367 | /* 167787 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZ128m), |
| 59368 | /* 167790 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59369 | /* 167792 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59370 | /* 167794 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59371 | /* 167796 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59372 | /* 167800 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59373 | /* 167805 */ GIR_RootConstrainSelectedInstOperands, |
| 59374 | /* 167806 */ // GIR_Coverage, 9617, |
| 59375 | /* 167806 */ GIR_EraseRootFromParent_Done, |
| 59376 | /* 167807 */ // Label 3645: @167807 |
| 59377 | /* 167807 */ GIM_Try, /*On fail goto*//*Label 3646*/ GIMT_Encode4(167871), // Rule ID 9077 // |
| 59378 | /* 167812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59379 | /* 167815 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59380 | /* 167819 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59381 | /* 167823 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59382 | /* 167827 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59383 | /* 167830 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59384 | /* 167834 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59385 | /* 167838 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59386 | /* 167842 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59387 | /* 167844 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59388 | /* 167851 */ // (fma:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src2, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src1) => (VFMADD231PHZ128m:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59389 | /* 167851 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZ128m), |
| 59390 | /* 167854 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59391 | /* 167856 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59392 | /* 167858 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59393 | /* 167860 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59394 | /* 167864 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59395 | /* 167869 */ GIR_RootConstrainSelectedInstOperands, |
| 59396 | /* 167870 */ // GIR_Coverage, 9077, |
| 59397 | /* 167870 */ GIR_EraseRootFromParent_Done, |
| 59398 | /* 167871 */ // Label 3646: @167871 |
| 59399 | /* 167871 */ GIM_Try, /*On fail goto*//*Label 3647*/ GIMT_Encode4(167935), // Rule ID 8436 // |
| 59400 | /* 167876 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59401 | /* 167879 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59402 | /* 167883 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59403 | /* 167887 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59404 | /* 167891 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59405 | /* 167895 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59406 | /* 167898 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59407 | /* 167902 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59408 | /* 167906 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59409 | /* 167908 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59410 | /* 167915 */ // (fma:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src2, VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PHZ128m:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59411 | /* 167915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ128m), |
| 59412 | /* 167918 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59413 | /* 167920 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59414 | /* 167922 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59415 | /* 167924 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59416 | /* 167928 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59417 | /* 167933 */ GIR_RootConstrainSelectedInstOperands, |
| 59418 | /* 167934 */ // GIR_Coverage, 8436, |
| 59419 | /* 167934 */ GIR_EraseRootFromParent_Done, |
| 59420 | /* 167935 */ // Label 3647: @167935 |
| 59421 | /* 167935 */ GIM_Try, /*On fail goto*//*Label 3648*/ GIMT_Encode4(167968), // Rule ID 8432 // |
| 59422 | /* 167940 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59423 | /* 167943 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59424 | /* 167947 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59425 | /* 167951 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 59426 | /* 167955 */ // (fma:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src2, VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src3) => (VFMADD213PHZ128r:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2, VR128X:{ *:[v8f16] }:$src3) |
| 59427 | /* 167955 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ128r), |
| 59428 | /* 167958 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59429 | /* 167960 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59430 | /* 167962 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59431 | /* 167964 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59432 | /* 167966 */ GIR_RootConstrainSelectedInstOperands, |
| 59433 | /* 167967 */ // GIR_Coverage, 8432, |
| 59434 | /* 167967 */ GIR_EraseRootFromParent_Done, |
| 59435 | /* 167968 */ // Label 3648: @167968 |
| 59436 | /* 167968 */ GIM_Reject, |
| 59437 | /* 167969 */ // Label 3644: @167969 |
| 59438 | /* 167969 */ GIM_Reject, |
| 59439 | /* 167970 */ // Label 3568: @167970 |
| 59440 | /* 167970 */ GIM_Try, /*On fail goto*//*Label 3649*/ GIMT_Encode4(168706), |
| 59441 | /* 167975 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 59442 | /* 167978 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 59443 | /* 167981 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 59444 | /* 167984 */ GIM_Try, /*On fail goto*//*Label 3650*/ GIMT_Encode4(168052), // Rule ID 1152 // |
| 59445 | /* 167989 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59446 | /* 167992 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59447 | /* 167996 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59448 | /* 168000 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59449 | /* 168004 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59450 | /* 168007 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59451 | /* 168011 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59452 | /* 168015 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59453 | /* 168019 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59454 | /* 168023 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59455 | /* 168025 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59456 | /* 168032 */ // (fma:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VFMADD132PSYm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59457 | /* 168032 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSYm), |
| 59458 | /* 168035 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59459 | /* 168037 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59460 | /* 168039 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59461 | /* 168041 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59462 | /* 168045 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59463 | /* 168050 */ GIR_RootConstrainSelectedInstOperands, |
| 59464 | /* 168051 */ // GIR_Coverage, 1152, |
| 59465 | /* 168051 */ GIR_EraseRootFromParent_Done, |
| 59466 | /* 168052 */ // Label 3650: @168052 |
| 59467 | /* 168052 */ GIM_Try, /*On fail goto*//*Label 3651*/ GIMT_Encode4(168120), // Rule ID 9639 // |
| 59468 | /* 168057 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59469 | /* 168060 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59470 | /* 168064 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59471 | /* 168068 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59472 | /* 168072 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59473 | /* 168075 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59474 | /* 168079 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59475 | /* 168083 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59476 | /* 168087 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59477 | /* 168091 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59478 | /* 168093 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59479 | /* 168100 */ // (fma:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VFMADD132PSZ256m:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59480 | /* 168100 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZ256m), |
| 59481 | /* 168103 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59482 | /* 168105 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59483 | /* 168107 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59484 | /* 168109 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59485 | /* 168113 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59486 | /* 168118 */ GIR_RootConstrainSelectedInstOperands, |
| 59487 | /* 168119 */ // GIR_Coverage, 9639, |
| 59488 | /* 168119 */ GIR_EraseRootFromParent_Done, |
| 59489 | /* 168120 */ // Label 3651: @168120 |
| 59490 | /* 168120 */ GIM_Try, /*On fail goto*//*Label 3652*/ GIMT_Encode4(168188), // Rule ID 23291 // |
| 59491 | /* 168125 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59492 | /* 168128 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59493 | /* 168132 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59494 | /* 168136 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59495 | /* 168140 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59496 | /* 168143 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59497 | /* 168147 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59498 | /* 168151 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59499 | /* 168155 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59500 | /* 168159 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59501 | /* 168161 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59502 | /* 168168 */ // (fma:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src3) => (VFMADDPS4Ymr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 59503 | /* 168168 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Ymr), |
| 59504 | /* 168171 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59505 | /* 168173 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59506 | /* 168175 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59507 | /* 168179 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59508 | /* 168181 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59509 | /* 168186 */ GIR_RootConstrainSelectedInstOperands, |
| 59510 | /* 168187 */ // GIR_Coverage, 23291, |
| 59511 | /* 168187 */ GIR_EraseRootFromParent_Done, |
| 59512 | /* 168188 */ // Label 3652: @168188 |
| 59513 | /* 168188 */ GIM_Try, /*On fail goto*//*Label 3653*/ GIMT_Encode4(168256), // Rule ID 1150 // |
| 59514 | /* 168193 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59515 | /* 168196 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59516 | /* 168200 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59517 | /* 168204 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59518 | /* 168208 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59519 | /* 168212 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59520 | /* 168215 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59521 | /* 168219 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59522 | /* 168223 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59523 | /* 168227 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59524 | /* 168229 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59525 | /* 168236 */ // (fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src2, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1) => (VFMADD231PSYm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59526 | /* 168236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSYm), |
| 59527 | /* 168239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59528 | /* 168241 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59529 | /* 168243 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59530 | /* 168245 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59531 | /* 168249 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59532 | /* 168254 */ GIR_RootConstrainSelectedInstOperands, |
| 59533 | /* 168255 */ // GIR_Coverage, 1150, |
| 59534 | /* 168255 */ GIR_EraseRootFromParent_Done, |
| 59535 | /* 168256 */ // Label 3653: @168256 |
| 59536 | /* 168256 */ GIM_Try, /*On fail goto*//*Label 3654*/ GIMT_Encode4(168324), // Rule ID 1396 // |
| 59537 | /* 168261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59538 | /* 168264 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59539 | /* 168268 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59540 | /* 168272 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59541 | /* 168276 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59542 | /* 168280 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59543 | /* 168283 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59544 | /* 168287 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59545 | /* 168291 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59546 | /* 168295 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59547 | /* 168297 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59548 | /* 168304 */ // (fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src3) => (VFMADDPS4Ymr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 59549 | /* 168304 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Ymr), |
| 59550 | /* 168307 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59551 | /* 168309 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59552 | /* 168311 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59553 | /* 168315 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59554 | /* 168317 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59555 | /* 168322 */ GIR_RootConstrainSelectedInstOperands, |
| 59556 | /* 168323 */ // GIR_Coverage, 1396, |
| 59557 | /* 168323 */ GIR_EraseRootFromParent_Done, |
| 59558 | /* 168324 */ // Label 3654: @168324 |
| 59559 | /* 168324 */ GIM_Try, /*On fail goto*//*Label 3655*/ GIMT_Encode4(168392), // Rule ID 9099 // |
| 59560 | /* 168329 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59561 | /* 168332 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59562 | /* 168336 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59563 | /* 168340 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59564 | /* 168344 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59565 | /* 168348 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59566 | /* 168351 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59567 | /* 168355 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59568 | /* 168359 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59569 | /* 168363 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59570 | /* 168365 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59571 | /* 168372 */ // (fma:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src2, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8f32] }:$src1) => (VFMADD231PSZ256m:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59572 | /* 168372 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZ256m), |
| 59573 | /* 168375 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59574 | /* 168377 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59575 | /* 168379 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59576 | /* 168381 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59577 | /* 168385 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59578 | /* 168390 */ GIR_RootConstrainSelectedInstOperands, |
| 59579 | /* 168391 */ // GIR_Coverage, 9099, |
| 59580 | /* 168391 */ GIR_EraseRootFromParent_Done, |
| 59581 | /* 168392 */ // Label 3655: @168392 |
| 59582 | /* 168392 */ GIM_Try, /*On fail goto*//*Label 3656*/ GIMT_Encode4(168460), // Rule ID 1148 // |
| 59583 | /* 168397 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59584 | /* 168400 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59585 | /* 168404 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59586 | /* 168408 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59587 | /* 168412 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59588 | /* 168416 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59589 | /* 168420 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59590 | /* 168423 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59591 | /* 168427 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59592 | /* 168431 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59593 | /* 168433 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59594 | /* 168440 */ // (fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PSYm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59595 | /* 168440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSYm), |
| 59596 | /* 168443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59597 | /* 168445 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59598 | /* 168447 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59599 | /* 168449 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59600 | /* 168453 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59601 | /* 168458 */ GIR_RootConstrainSelectedInstOperands, |
| 59602 | /* 168459 */ // GIR_Coverage, 1148, |
| 59603 | /* 168459 */ GIR_EraseRootFromParent_Done, |
| 59604 | /* 168460 */ // Label 3656: @168460 |
| 59605 | /* 168460 */ GIM_Try, /*On fail goto*//*Label 3657*/ GIMT_Encode4(168528), // Rule ID 1394 // |
| 59606 | /* 168465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59607 | /* 168468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59608 | /* 168472 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59609 | /* 168476 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59610 | /* 168480 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59611 | /* 168484 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59612 | /* 168488 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59613 | /* 168491 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59614 | /* 168495 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59615 | /* 168499 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59616 | /* 168501 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59617 | /* 168508 */ // (fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDPS4Yrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59618 | /* 168508 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Yrm), |
| 59619 | /* 168511 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59620 | /* 168513 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59621 | /* 168515 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 59622 | /* 168517 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59623 | /* 168521 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59624 | /* 168526 */ GIR_RootConstrainSelectedInstOperands, |
| 59625 | /* 168527 */ // GIR_Coverage, 1394, |
| 59626 | /* 168527 */ GIR_EraseRootFromParent_Done, |
| 59627 | /* 168528 */ // Label 3657: @168528 |
| 59628 | /* 168528 */ GIM_Try, /*On fail goto*//*Label 3658*/ GIMT_Encode4(168596), // Rule ID 8463 // |
| 59629 | /* 168533 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59630 | /* 168536 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59631 | /* 168540 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59632 | /* 168544 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59633 | /* 168548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59634 | /* 168552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59635 | /* 168556 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59636 | /* 168559 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59637 | /* 168563 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59638 | /* 168567 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59639 | /* 168569 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59640 | /* 168576 */ // (fma:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src2, VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PSZ256m:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59641 | /* 168576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ256m), |
| 59642 | /* 168579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59643 | /* 168581 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59644 | /* 168583 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59645 | /* 168585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59646 | /* 168589 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59647 | /* 168594 */ GIR_RootConstrainSelectedInstOperands, |
| 59648 | /* 168595 */ // GIR_Coverage, 8463, |
| 59649 | /* 168595 */ GIR_EraseRootFromParent_Done, |
| 59650 | /* 168596 */ // Label 3658: @168596 |
| 59651 | /* 168596 */ GIM_Try, /*On fail goto*//*Label 3659*/ GIMT_Encode4(168633), // Rule ID 1146 // |
| 59652 | /* 168601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59653 | /* 168604 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59654 | /* 168608 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59655 | /* 168612 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59656 | /* 168616 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59657 | /* 168620 */ // (fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src3) => (VFMADD213PSYr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 59658 | /* 168620 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSYr), |
| 59659 | /* 168623 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59660 | /* 168625 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59661 | /* 168627 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59662 | /* 168629 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59663 | /* 168631 */ GIR_RootConstrainSelectedInstOperands, |
| 59664 | /* 168632 */ // GIR_Coverage, 1146, |
| 59665 | /* 168632 */ GIR_EraseRootFromParent_Done, |
| 59666 | /* 168633 */ // Label 3659: @168633 |
| 59667 | /* 168633 */ GIM_Try, /*On fail goto*//*Label 3660*/ GIMT_Encode4(168668), // Rule ID 1392 // |
| 59668 | /* 168638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59669 | /* 168641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59670 | /* 168645 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59671 | /* 168649 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59672 | /* 168653 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59673 | /* 168657 */ // (fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) => (VFMADDPS4Yrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 59674 | /* 168657 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Yrr), |
| 59675 | /* 168662 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 59676 | /* 168666 */ GIR_RootConstrainSelectedInstOperands, |
| 59677 | /* 168667 */ // GIR_Coverage, 1392, |
| 59678 | /* 168667 */ GIR_Done, |
| 59679 | /* 168668 */ // Label 3660: @168668 |
| 59680 | /* 168668 */ GIM_Try, /*On fail goto*//*Label 3661*/ GIMT_Encode4(168705), // Rule ID 8459 // |
| 59681 | /* 168673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59682 | /* 168676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59683 | /* 168680 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59684 | /* 168684 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59685 | /* 168688 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59686 | /* 168692 */ // (fma:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src2, VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src3) => (VFMADD213PSZ256r:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2, VR256X:{ *:[v8f32] }:$src3) |
| 59687 | /* 168692 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ256r), |
| 59688 | /* 168695 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59689 | /* 168697 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59690 | /* 168699 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59691 | /* 168701 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59692 | /* 168703 */ GIR_RootConstrainSelectedInstOperands, |
| 59693 | /* 168704 */ // GIR_Coverage, 8459, |
| 59694 | /* 168704 */ GIR_EraseRootFromParent_Done, |
| 59695 | /* 168705 */ // Label 3661: @168705 |
| 59696 | /* 168705 */ GIM_Reject, |
| 59697 | /* 168706 */ // Label 3649: @168706 |
| 59698 | /* 168706 */ GIM_Reject, |
| 59699 | /* 168707 */ // Label 3569: @168707 |
| 59700 | /* 168707 */ GIM_Try, /*On fail goto*//*Label 3662*/ GIMT_Encode4(168951), |
| 59701 | /* 168712 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 59702 | /* 168715 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 59703 | /* 168718 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 59704 | /* 168721 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59705 | /* 168725 */ GIM_Try, /*On fail goto*//*Label 3663*/ GIMT_Encode4(168789), // Rule ID 9659 // |
| 59706 | /* 168730 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59707 | /* 168733 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59708 | /* 168737 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59709 | /* 168741 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59710 | /* 168744 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59711 | /* 168748 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59712 | /* 168752 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59713 | /* 168756 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59714 | /* 168760 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59715 | /* 168762 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59716 | /* 168769 */ // (fma:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VFMADD132PDZm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59717 | /* 168769 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZm), |
| 59718 | /* 168772 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59719 | /* 168774 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59720 | /* 168776 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59721 | /* 168778 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59722 | /* 168782 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59723 | /* 168787 */ GIR_RootConstrainSelectedInstOperands, |
| 59724 | /* 168788 */ // GIR_Coverage, 9659, |
| 59725 | /* 168788 */ GIR_EraseRootFromParent_Done, |
| 59726 | /* 168789 */ // Label 3663: @168789 |
| 59727 | /* 168789 */ GIM_Try, /*On fail goto*//*Label 3664*/ GIMT_Encode4(168853), // Rule ID 9119 // |
| 59728 | /* 168794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59729 | /* 168797 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59730 | /* 168801 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59731 | /* 168805 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59732 | /* 168809 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59733 | /* 168812 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59734 | /* 168816 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59735 | /* 168820 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59736 | /* 168824 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59737 | /* 168826 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59738 | /* 168833 */ // (fma:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src2, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8f64] }:$src1) => (VFMADD231PDZm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59739 | /* 168833 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZm), |
| 59740 | /* 168836 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59741 | /* 168838 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59742 | /* 168840 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59743 | /* 168842 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59744 | /* 168846 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59745 | /* 168851 */ GIR_RootConstrainSelectedInstOperands, |
| 59746 | /* 168852 */ // GIR_Coverage, 9119, |
| 59747 | /* 168852 */ GIR_EraseRootFromParent_Done, |
| 59748 | /* 168853 */ // Label 3664: @168853 |
| 59749 | /* 168853 */ GIM_Try, /*On fail goto*//*Label 3665*/ GIMT_Encode4(168917), // Rule ID 8487 // |
| 59750 | /* 168858 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59751 | /* 168861 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59752 | /* 168865 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59753 | /* 168869 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59754 | /* 168873 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59755 | /* 168877 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59756 | /* 168880 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59757 | /* 168884 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59758 | /* 168888 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59759 | /* 168890 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59760 | /* 168897 */ // (fma:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src2, VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PDZm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59761 | /* 168897 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZm), |
| 59762 | /* 168900 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59763 | /* 168902 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59764 | /* 168904 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59765 | /* 168906 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59766 | /* 168910 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59767 | /* 168915 */ GIR_RootConstrainSelectedInstOperands, |
| 59768 | /* 168916 */ // GIR_Coverage, 8487, |
| 59769 | /* 168916 */ GIR_EraseRootFromParent_Done, |
| 59770 | /* 168917 */ // Label 3665: @168917 |
| 59771 | /* 168917 */ GIM_Try, /*On fail goto*//*Label 3666*/ GIMT_Encode4(168950), // Rule ID 8483 // |
| 59772 | /* 168922 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59773 | /* 168925 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59774 | /* 168929 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59775 | /* 168933 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59776 | /* 168937 */ // (fma:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src2, VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src3) => (VFMADD213PDZr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2, VR512:{ *:[v8f64] }:$src3) |
| 59777 | /* 168937 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZr), |
| 59778 | /* 168940 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59779 | /* 168942 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59780 | /* 168944 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59781 | /* 168946 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59782 | /* 168948 */ GIR_RootConstrainSelectedInstOperands, |
| 59783 | /* 168949 */ // GIR_Coverage, 8483, |
| 59784 | /* 168949 */ GIR_EraseRootFromParent_Done, |
| 59785 | /* 168950 */ // Label 3666: @168950 |
| 59786 | /* 168950 */ GIM_Reject, |
| 59787 | /* 168951 */ // Label 3662: @168951 |
| 59788 | /* 168951 */ GIM_Reject, |
| 59789 | /* 168952 */ // Label 3570: @168952 |
| 59790 | /* 168952 */ GIM_Try, /*On fail goto*//*Label 3667*/ GIMT_Encode4(169196), |
| 59791 | /* 168957 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 59792 | /* 168960 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 59793 | /* 168963 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 59794 | /* 168966 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59795 | /* 168970 */ GIM_Try, /*On fail goto*//*Label 3668*/ GIMT_Encode4(169034), // Rule ID 9607 // |
| 59796 | /* 168975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59797 | /* 168978 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59798 | /* 168982 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59799 | /* 168986 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59800 | /* 168989 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59801 | /* 168993 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59802 | /* 168997 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59803 | /* 169001 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59804 | /* 169005 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59805 | /* 169007 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59806 | /* 169014 */ // (fma:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VFMADD132PHZ256m:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59807 | /* 169014 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZ256m), |
| 59808 | /* 169017 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59809 | /* 169019 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59810 | /* 169021 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59811 | /* 169023 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59812 | /* 169027 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59813 | /* 169032 */ GIR_RootConstrainSelectedInstOperands, |
| 59814 | /* 169033 */ // GIR_Coverage, 9607, |
| 59815 | /* 169033 */ GIR_EraseRootFromParent_Done, |
| 59816 | /* 169034 */ // Label 3668: @169034 |
| 59817 | /* 169034 */ GIM_Try, /*On fail goto*//*Label 3669*/ GIMT_Encode4(169098), // Rule ID 9067 // |
| 59818 | /* 169039 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59819 | /* 169042 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59820 | /* 169046 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59821 | /* 169050 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59822 | /* 169054 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59823 | /* 169057 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59824 | /* 169061 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59825 | /* 169065 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59826 | /* 169069 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59827 | /* 169071 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59828 | /* 169078 */ // (fma:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src2, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src1) => (VFMADD231PHZ256m:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59829 | /* 169078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZ256m), |
| 59830 | /* 169081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59831 | /* 169083 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59832 | /* 169085 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59833 | /* 169087 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59834 | /* 169091 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59835 | /* 169096 */ GIR_RootConstrainSelectedInstOperands, |
| 59836 | /* 169097 */ // GIR_Coverage, 9067, |
| 59837 | /* 169097 */ GIR_EraseRootFromParent_Done, |
| 59838 | /* 169098 */ // Label 3669: @169098 |
| 59839 | /* 169098 */ GIM_Try, /*On fail goto*//*Label 3670*/ GIMT_Encode4(169162), // Rule ID 8424 // |
| 59840 | /* 169103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59841 | /* 169106 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59842 | /* 169110 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59843 | /* 169114 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59844 | /* 169118 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59845 | /* 169122 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59846 | /* 169125 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59847 | /* 169129 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59848 | /* 169133 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59849 | /* 169135 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59850 | /* 169142 */ // (fma:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src2, VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PHZ256m:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59851 | /* 169142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ256m), |
| 59852 | /* 169145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59853 | /* 169147 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59854 | /* 169149 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59855 | /* 169151 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59856 | /* 169155 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59857 | /* 169160 */ GIR_RootConstrainSelectedInstOperands, |
| 59858 | /* 169161 */ // GIR_Coverage, 8424, |
| 59859 | /* 169161 */ GIR_EraseRootFromParent_Done, |
| 59860 | /* 169162 */ // Label 3670: @169162 |
| 59861 | /* 169162 */ GIM_Try, /*On fail goto*//*Label 3671*/ GIMT_Encode4(169195), // Rule ID 8420 // |
| 59862 | /* 169167 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59863 | /* 169170 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59864 | /* 169174 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59865 | /* 169178 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59866 | /* 169182 */ // (fma:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src2, VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src3) => (VFMADD213PHZ256r:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2, VR256X:{ *:[v16f16] }:$src3) |
| 59867 | /* 169182 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ256r), |
| 59868 | /* 169185 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59869 | /* 169187 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59870 | /* 169189 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59871 | /* 169191 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59872 | /* 169193 */ GIR_RootConstrainSelectedInstOperands, |
| 59873 | /* 169194 */ // GIR_Coverage, 8420, |
| 59874 | /* 169194 */ GIR_EraseRootFromParent_Done, |
| 59875 | /* 169195 */ // Label 3671: @169195 |
| 59876 | /* 169195 */ GIM_Reject, |
| 59877 | /* 169196 */ // Label 3667: @169196 |
| 59878 | /* 169196 */ GIM_Reject, |
| 59879 | /* 169197 */ // Label 3571: @169197 |
| 59880 | /* 169197 */ GIM_Try, /*On fail goto*//*Label 3672*/ GIMT_Encode4(169441), |
| 59881 | /* 169202 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 59882 | /* 169205 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 59883 | /* 169208 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 59884 | /* 169211 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59885 | /* 169215 */ GIM_Try, /*On fail goto*//*Label 3673*/ GIMT_Encode4(169279), // Rule ID 9627 // |
| 59886 | /* 169220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59887 | /* 169223 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59888 | /* 169227 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59889 | /* 169231 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59890 | /* 169234 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59891 | /* 169238 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59892 | /* 169242 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59893 | /* 169246 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59894 | /* 169250 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59895 | /* 169252 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59896 | /* 169259 */ // (fma:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VFMADD132PSZm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59897 | /* 169259 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZm), |
| 59898 | /* 169262 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59899 | /* 169264 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59900 | /* 169266 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59901 | /* 169268 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59902 | /* 169272 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59903 | /* 169277 */ GIR_RootConstrainSelectedInstOperands, |
| 59904 | /* 169278 */ // GIR_Coverage, 9627, |
| 59905 | /* 169278 */ GIR_EraseRootFromParent_Done, |
| 59906 | /* 169279 */ // Label 3673: @169279 |
| 59907 | /* 169279 */ GIM_Try, /*On fail goto*//*Label 3674*/ GIMT_Encode4(169343), // Rule ID 9087 // |
| 59908 | /* 169284 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59909 | /* 169287 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59910 | /* 169291 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59911 | /* 169295 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59912 | /* 169299 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59913 | /* 169302 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59914 | /* 169306 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59915 | /* 169310 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59916 | /* 169314 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59917 | /* 169316 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59918 | /* 169323 */ // (fma:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src2, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16f32] }:$src1) => (VFMADD231PSZm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59919 | /* 169323 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZm), |
| 59920 | /* 169326 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59921 | /* 169328 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59922 | /* 169330 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59923 | /* 169332 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59924 | /* 169336 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59925 | /* 169341 */ GIR_RootConstrainSelectedInstOperands, |
| 59926 | /* 169342 */ // GIR_Coverage, 9087, |
| 59927 | /* 169342 */ GIR_EraseRootFromParent_Done, |
| 59928 | /* 169343 */ // Label 3674: @169343 |
| 59929 | /* 169343 */ GIM_Try, /*On fail goto*//*Label 3675*/ GIMT_Encode4(169407), // Rule ID 8448 // |
| 59930 | /* 169348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59931 | /* 169351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59932 | /* 169355 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59933 | /* 169359 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59934 | /* 169363 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59935 | /* 169367 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59936 | /* 169370 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59937 | /* 169374 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59938 | /* 169378 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59939 | /* 169380 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59940 | /* 169387 */ // (fma:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src2, VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PSZm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59941 | /* 169387 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZm), |
| 59942 | /* 169390 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59943 | /* 169392 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59944 | /* 169394 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59945 | /* 169396 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59946 | /* 169400 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59947 | /* 169405 */ GIR_RootConstrainSelectedInstOperands, |
| 59948 | /* 169406 */ // GIR_Coverage, 8448, |
| 59949 | /* 169406 */ GIR_EraseRootFromParent_Done, |
| 59950 | /* 169407 */ // Label 3675: @169407 |
| 59951 | /* 169407 */ GIM_Try, /*On fail goto*//*Label 3676*/ GIMT_Encode4(169440), // Rule ID 8444 // |
| 59952 | /* 169412 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59953 | /* 169415 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59954 | /* 169419 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59955 | /* 169423 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59956 | /* 169427 */ // (fma:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src2, VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src3) => (VFMADD213PSZr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2, VR512:{ *:[v16f32] }:$src3) |
| 59957 | /* 169427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZr), |
| 59958 | /* 169430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59959 | /* 169432 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59960 | /* 169434 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59961 | /* 169436 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59962 | /* 169438 */ GIR_RootConstrainSelectedInstOperands, |
| 59963 | /* 169439 */ // GIR_Coverage, 8444, |
| 59964 | /* 169439 */ GIR_EraseRootFromParent_Done, |
| 59965 | /* 169440 */ // Label 3676: @169440 |
| 59966 | /* 169440 */ GIM_Reject, |
| 59967 | /* 169441 */ // Label 3672: @169441 |
| 59968 | /* 169441 */ GIM_Reject, |
| 59969 | /* 169442 */ // Label 3572: @169442 |
| 59970 | /* 169442 */ GIM_Try, /*On fail goto*//*Label 3677*/ GIMT_Encode4(169686), |
| 59971 | /* 169447 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 59972 | /* 169450 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 59973 | /* 169453 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 59974 | /* 169456 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59975 | /* 169460 */ GIM_Try, /*On fail goto*//*Label 3678*/ GIMT_Encode4(169524), // Rule ID 9595 // |
| 59976 | /* 169465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 59977 | /* 169468 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59978 | /* 169472 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59979 | /* 169476 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59980 | /* 169479 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59981 | /* 169483 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59982 | /* 169487 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59983 | /* 169491 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59984 | /* 169495 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59985 | /* 169497 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59986 | /* 169504 */ // (fma:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VFMADD132PHZm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 59987 | /* 169504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZm), |
| 59988 | /* 169507 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59989 | /* 169509 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59990 | /* 169511 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59991 | /* 169513 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59992 | /* 169517 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59993 | /* 169522 */ GIR_RootConstrainSelectedInstOperands, |
| 59994 | /* 169523 */ // GIR_Coverage, 9595, |
| 59995 | /* 169523 */ GIR_EraseRootFromParent_Done, |
| 59996 | /* 169524 */ // Label 3678: @169524 |
| 59997 | /* 169524 */ GIM_Try, /*On fail goto*//*Label 3679*/ GIMT_Encode4(169588), // Rule ID 9055 // |
| 59998 | /* 169529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 59999 | /* 169532 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60000 | /* 169536 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60001 | /* 169540 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60002 | /* 169544 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60003 | /* 169547 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60004 | /* 169551 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60005 | /* 169555 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60006 | /* 169559 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60007 | /* 169561 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60008 | /* 169568 */ // (fma:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src2, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src1) => (VFMADD231PHZm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 60009 | /* 169568 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZm), |
| 60010 | /* 169571 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60011 | /* 169573 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 60012 | /* 169575 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 60013 | /* 169577 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 60014 | /* 169581 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60015 | /* 169586 */ GIR_RootConstrainSelectedInstOperands, |
| 60016 | /* 169587 */ // GIR_Coverage, 9055, |
| 60017 | /* 169587 */ GIR_EraseRootFromParent_Done, |
| 60018 | /* 169588 */ // Label 3679: @169588 |
| 60019 | /* 169588 */ GIM_Try, /*On fail goto*//*Label 3680*/ GIMT_Encode4(169652), // Rule ID 8409 // |
| 60020 | /* 169593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 60021 | /* 169596 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60022 | /* 169600 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60023 | /* 169604 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 60024 | /* 169608 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60025 | /* 169612 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60026 | /* 169615 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60027 | /* 169619 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60028 | /* 169623 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60029 | /* 169625 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60030 | /* 169632 */ // (fma:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src2, VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PHZm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 60031 | /* 169632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZm), |
| 60032 | /* 169635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60033 | /* 169637 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60034 | /* 169639 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 60035 | /* 169641 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 60036 | /* 169645 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60037 | /* 169650 */ GIR_RootConstrainSelectedInstOperands, |
| 60038 | /* 169651 */ // GIR_Coverage, 8409, |
| 60039 | /* 169651 */ GIR_EraseRootFromParent_Done, |
| 60040 | /* 169652 */ // Label 3680: @169652 |
| 60041 | /* 169652 */ GIM_Try, /*On fail goto*//*Label 3681*/ GIMT_Encode4(169685), // Rule ID 8405 // |
| 60042 | /* 169657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 60043 | /* 169660 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60044 | /* 169664 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60045 | /* 169668 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60046 | /* 169672 */ // (fma:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src2, VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src3) => (VFMADD213PHZr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2, VR512:{ *:[v32f16] }:$src3) |
| 60047 | /* 169672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZr), |
| 60048 | /* 169675 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60049 | /* 169677 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60050 | /* 169679 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 60051 | /* 169681 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 60052 | /* 169683 */ GIR_RootConstrainSelectedInstOperands, |
| 60053 | /* 169684 */ // GIR_Coverage, 8405, |
| 60054 | /* 169684 */ GIR_EraseRootFromParent_Done, |
| 60055 | /* 169685 */ // Label 3681: @169685 |
| 60056 | /* 169685 */ GIM_Reject, |
| 60057 | /* 169686 */ // Label 3677: @169686 |
| 60058 | /* 169686 */ GIM_Reject, |
| 60059 | /* 169687 */ // Label 3573: @169687 |
| 60060 | /* 169687 */ GIM_Reject, |
| 60061 | /* 169688 */ // Label 45: @169688 |
| 60062 | /* 169688 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3695*/ GIMT_Encode4(173869), |
| 60063 | /* 169699 */ /*GILLT_s16*//*Label 3682*/ GIMT_Encode4(169783), |
| 60064 | /* 169703 */ /*GILLT_s32*//*Label 3683*/ GIMT_Encode4(169881), |
| 60065 | /* 169707 */ /*GILLT_s64*//*Label 3684*/ GIMT_Encode4(170846), |
| 60066 | /* 169711 */ /*GILLT_s80*//*Label 3685*/ GIMT_Encode4(171955), GIMT_Encode4(0), GIMT_Encode4(0), |
| 60067 | /* 169723 */ /*GILLT_v2s64*//*Label 3686*/ GIMT_Encode4(172521), GIMT_Encode4(0), |
| 60068 | /* 169731 */ /*GILLT_v4s32*//*Label 3687*/ GIMT_Encode4(172751), |
| 60069 | /* 169735 */ /*GILLT_v4s64*//*Label 3688*/ GIMT_Encode4(172981), GIMT_Encode4(0), |
| 60070 | /* 169743 */ /*GILLT_v8s16*//*Label 3689*/ GIMT_Encode4(173180), |
| 60071 | /* 169747 */ /*GILLT_v8s32*//*Label 3690*/ GIMT_Encode4(173278), |
| 60072 | /* 169751 */ /*GILLT_v8s64*//*Label 3691*/ GIMT_Encode4(173477), GIMT_Encode4(0), GIMT_Encode4(0), |
| 60073 | /* 169763 */ /*GILLT_v16s16*//*Label 3692*/ GIMT_Encode4(173575), |
| 60074 | /* 169767 */ /*GILLT_v16s32*//*Label 3693*/ GIMT_Encode4(173673), GIMT_Encode4(0), GIMT_Encode4(0), |
| 60075 | /* 169779 */ /*GILLT_v32s16*//*Label 3694*/ GIMT_Encode4(173771), |
| 60076 | /* 169783 */ // Label 3682: @169783 |
| 60077 | /* 169783 */ GIM_Try, /*On fail goto*//*Label 3696*/ GIMT_Encode4(169880), |
| 60078 | /* 169788 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 60079 | /* 169791 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 60080 | /* 169794 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 60081 | /* 169798 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 60082 | /* 169802 */ GIM_Try, /*On fail goto*//*Label 3697*/ GIMT_Encode4(169856), // Rule ID 6126 // |
| 60083 | /* 169807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 60084 | /* 169810 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60085 | /* 169814 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60086 | /* 169818 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60087 | /* 169821 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60088 | /* 169825 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60089 | /* 169829 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60090 | /* 169831 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60091 | /* 169838 */ // (fdiv:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60092 | /* 169838 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSHZrm), |
| 60093 | /* 169841 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60094 | /* 169843 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60095 | /* 169845 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60096 | /* 169849 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60097 | /* 169854 */ GIR_RootConstrainSelectedInstOperands, |
| 60098 | /* 169855 */ // GIR_Coverage, 6126, |
| 60099 | /* 169855 */ GIR_EraseRootFromParent_Done, |
| 60100 | /* 169856 */ // Label 3697: @169856 |
| 60101 | /* 169856 */ GIM_Try, /*On fail goto*//*Label 3698*/ GIMT_Encode4(169879), // Rule ID 6124 // |
| 60102 | /* 169861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 60103 | /* 169864 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 60104 | /* 169868 */ // (fdiv:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VDIVSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 60105 | /* 169868 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSHZrr), |
| 60106 | /* 169873 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60107 | /* 169877 */ GIR_RootConstrainSelectedInstOperands, |
| 60108 | /* 169878 */ // GIR_Coverage, 6124, |
| 60109 | /* 169878 */ GIR_Done, |
| 60110 | /* 169879 */ // Label 3698: @169879 |
| 60111 | /* 169879 */ GIM_Reject, |
| 60112 | /* 169880 */ // Label 3696: @169880 |
| 60113 | /* 169880 */ GIM_Reject, |
| 60114 | /* 169881 */ // Label 3683: @169881 |
| 60115 | /* 169881 */ GIM_Try, /*On fail goto*//*Label 3699*/ GIMT_Encode4(170845), |
| 60116 | /* 169886 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 60117 | /* 169889 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 60118 | /* 169892 */ GIM_Try, /*On fail goto*//*Label 3700*/ GIMT_Encode4(169974), // Rule ID 22485 // |
| 60119 | /* 169897 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 60120 | /* 169900 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60121 | /* 169904 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60122 | /* 169908 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60123 | /* 169912 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 60124 | /* 169916 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 60125 | /* 169920 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 60126 | /* 169924 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60127 | /* 169928 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 60128 | /* 169931 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 60129 | /* 169935 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60130 | /* 169942 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 60131 | /* 169946 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 60132 | /* 169948 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60133 | /* 169955 */ // (fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (DIVSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60134 | /* 169955 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSSrm), |
| 60135 | /* 169958 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60136 | /* 169960 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60137 | /* 169962 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60138 | /* 169966 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 60139 | /* 169972 */ GIR_RootConstrainSelectedInstOperands, |
| 60140 | /* 169973 */ // GIR_Coverage, 22485, |
| 60141 | /* 169973 */ GIR_EraseRootFromParent_Done, |
| 60142 | /* 169974 */ // Label 3700: @169974 |
| 60143 | /* 169974 */ GIM_Try, /*On fail goto*//*Label 3701*/ GIMT_Encode4(170056), // Rule ID 22486 // |
| 60144 | /* 169979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 60145 | /* 169982 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60146 | /* 169986 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60147 | /* 169990 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60148 | /* 169994 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 60149 | /* 169998 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 60150 | /* 170002 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 60151 | /* 170006 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60152 | /* 170010 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 60153 | /* 170013 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 60154 | /* 170017 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60155 | /* 170024 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 60156 | /* 170028 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 60157 | /* 170030 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60158 | /* 170037 */ // (fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (VDIVSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60159 | /* 170037 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSrm), |
| 60160 | /* 170040 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60161 | /* 170042 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60162 | /* 170044 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60163 | /* 170048 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 60164 | /* 170054 */ GIR_RootConstrainSelectedInstOperands, |
| 60165 | /* 170055 */ // GIR_Coverage, 22486, |
| 60166 | /* 170055 */ GIR_EraseRootFromParent_Done, |
| 60167 | /* 170056 */ // Label 3701: @170056 |
| 60168 | /* 170056 */ GIM_Try, /*On fail goto*//*Label 3702*/ GIMT_Encode4(170138), // Rule ID 22487 // |
| 60169 | /* 170061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60170 | /* 170064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 60171 | /* 170068 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 60172 | /* 170072 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60173 | /* 170076 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 60174 | /* 170080 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 60175 | /* 170084 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 60176 | /* 170088 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60177 | /* 170092 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 60178 | /* 170095 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 60179 | /* 170099 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60180 | /* 170106 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 60181 | /* 170110 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 60182 | /* 170112 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60183 | /* 170119 */ // (fdiv:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (bitconvert:{ *:[f32] } (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>>)) => (VDIVSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60184 | /* 170119 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSZrm), |
| 60185 | /* 170122 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60186 | /* 170124 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60187 | /* 170126 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60188 | /* 170130 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 60189 | /* 170136 */ GIR_RootConstrainSelectedInstOperands, |
| 60190 | /* 170137 */ // GIR_Coverage, 22487, |
| 60191 | /* 170137 */ GIR_EraseRootFromParent_Done, |
| 60192 | /* 170138 */ // Label 3702: @170138 |
| 60193 | /* 170138 */ GIM_Try, /*On fail goto*//*Label 3703*/ GIMT_Encode4(170203), // Rule ID 1031 // |
| 60194 | /* 170143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 60195 | /* 170146 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60196 | /* 170150 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60197 | /* 170154 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60198 | /* 170158 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 60199 | /* 170165 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60200 | /* 170169 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60201 | /* 170173 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60202 | /* 170175 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60203 | /* 170182 */ // (fdiv:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (DIVR_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60204 | /* 170182 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m32), |
| 60205 | /* 170185 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60206 | /* 170187 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60207 | /* 170189 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60208 | /* 170193 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60209 | /* 170196 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60210 | /* 170201 */ GIR_RootConstrainSelectedInstOperands, |
| 60211 | /* 170202 */ // GIR_Coverage, 1031, |
| 60212 | /* 170202 */ GIR_EraseRootFromParent_Done, |
| 60213 | /* 170203 */ // Label 3703: @170203 |
| 60214 | /* 170203 */ GIM_Try, /*On fail goto*//*Label 3704*/ GIMT_Encode4(170268), // Rule ID 1033 // |
| 60215 | /* 170208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 60216 | /* 170211 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60217 | /* 170215 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60218 | /* 170219 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60219 | /* 170223 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60220 | /* 170230 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60221 | /* 170234 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60222 | /* 170238 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60223 | /* 170240 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60224 | /* 170247 */ // (fdiv:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (DIVR_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60225 | /* 170247 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m32), |
| 60226 | /* 170250 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60227 | /* 170252 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60228 | /* 170254 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60229 | /* 170258 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60230 | /* 170261 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60231 | /* 170266 */ GIR_RootConstrainSelectedInstOperands, |
| 60232 | /* 170267 */ // GIR_Coverage, 1033, |
| 60233 | /* 170267 */ GIR_EraseRootFromParent_Done, |
| 60234 | /* 170268 */ // Label 3704: @170268 |
| 60235 | /* 170268 */ GIM_Try, /*On fail goto*//*Label 3705*/ GIMT_Encode4(170333), // Rule ID 1021 // |
| 60236 | /* 170273 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 60237 | /* 170276 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60238 | /* 170280 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60239 | /* 170284 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60240 | /* 170288 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60241 | /* 170291 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60242 | /* 170295 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60243 | /* 170299 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60244 | /* 170303 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60245 | /* 170305 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60246 | /* 170312 */ // (fdiv:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP32:{ *:[f32] }:$src1) => (DIVR_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60247 | /* 170312 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp32m), |
| 60248 | /* 170315 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60249 | /* 170317 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60250 | /* 170319 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60251 | /* 170323 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60252 | /* 170326 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60253 | /* 170331 */ GIR_RootConstrainSelectedInstOperands, |
| 60254 | /* 170332 */ // GIR_Coverage, 1021, |
| 60255 | /* 170332 */ GIR_EraseRootFromParent_Done, |
| 60256 | /* 170333 */ // Label 3705: @170333 |
| 60257 | /* 170333 */ GIM_Try, /*On fail goto*//*Label 3706*/ GIMT_Encode4(170398), // Rule ID 1009 // |
| 60258 | /* 170338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 60259 | /* 170341 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60260 | /* 170345 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60261 | /* 170349 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60262 | /* 170353 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60263 | /* 170357 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 60264 | /* 170364 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60265 | /* 170368 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60266 | /* 170370 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60267 | /* 170377 */ // (fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60268 | /* 170377 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m32), |
| 60269 | /* 170380 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60270 | /* 170382 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60271 | /* 170384 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60272 | /* 170388 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60273 | /* 170391 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60274 | /* 170396 */ GIR_RootConstrainSelectedInstOperands, |
| 60275 | /* 170397 */ // GIR_Coverage, 1009, |
| 60276 | /* 170397 */ GIR_EraseRootFromParent_Done, |
| 60277 | /* 170398 */ // Label 3706: @170398 |
| 60278 | /* 170398 */ GIM_Try, /*On fail goto*//*Label 3707*/ GIMT_Encode4(170463), // Rule ID 1011 // |
| 60279 | /* 170403 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 60280 | /* 170406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60281 | /* 170410 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60282 | /* 170414 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60283 | /* 170418 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60284 | /* 170422 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60285 | /* 170429 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60286 | /* 170433 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60287 | /* 170435 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60288 | /* 170442 */ // (fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60289 | /* 170442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m32), |
| 60290 | /* 170445 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60291 | /* 170447 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60292 | /* 170449 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60293 | /* 170453 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60294 | /* 170456 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60295 | /* 170461 */ GIR_RootConstrainSelectedInstOperands, |
| 60296 | /* 170462 */ // GIR_Coverage, 1011, |
| 60297 | /* 170462 */ GIR_EraseRootFromParent_Done, |
| 60298 | /* 170463 */ // Label 3707: @170463 |
| 60299 | /* 170463 */ GIM_Try, /*On fail goto*//*Label 3708*/ GIMT_Encode4(170528), // Rule ID 999 // |
| 60300 | /* 170468 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 60301 | /* 170471 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60302 | /* 170475 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60303 | /* 170479 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60304 | /* 170483 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60305 | /* 170487 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60306 | /* 170490 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60307 | /* 170494 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60308 | /* 170498 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60309 | /* 170500 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60310 | /* 170507 */ // (fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (DIV_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60311 | /* 170507 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp32m), |
| 60312 | /* 170510 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60313 | /* 170512 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60314 | /* 170514 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60315 | /* 170518 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60316 | /* 170521 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60317 | /* 170526 */ GIR_RootConstrainSelectedInstOperands, |
| 60318 | /* 170527 */ // GIR_Coverage, 999, |
| 60319 | /* 170527 */ GIR_EraseRootFromParent_Done, |
| 60320 | /* 170528 */ // Label 3708: @170528 |
| 60321 | /* 170528 */ GIM_Try, /*On fail goto*//*Label 3709*/ GIMT_Encode4(170590), // Rule ID 2281 // |
| 60322 | /* 170533 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 60323 | /* 170536 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60324 | /* 170540 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60325 | /* 170544 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60326 | /* 170548 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60327 | /* 170552 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60328 | /* 170555 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60329 | /* 170559 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60330 | /* 170563 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60331 | /* 170565 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60332 | /* 170572 */ // (fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60333 | /* 170572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSrm), |
| 60334 | /* 170575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60335 | /* 170577 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60336 | /* 170579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60337 | /* 170583 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60338 | /* 170588 */ GIR_RootConstrainSelectedInstOperands, |
| 60339 | /* 170589 */ // GIR_Coverage, 2281, |
| 60340 | /* 170589 */ GIR_EraseRootFromParent_Done, |
| 60341 | /* 170590 */ // Label 3709: @170590 |
| 60342 | /* 170590 */ GIM_Try, /*On fail goto*//*Label 3710*/ GIMT_Encode4(170652), // Rule ID 2289 // |
| 60343 | /* 170595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 60344 | /* 170598 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60345 | /* 170602 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60346 | /* 170606 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60347 | /* 170610 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60348 | /* 170614 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60349 | /* 170617 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60350 | /* 170621 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60351 | /* 170625 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60352 | /* 170627 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60353 | /* 170634 */ // (fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (DIVSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60354 | /* 170634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSSrm), |
| 60355 | /* 170637 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60356 | /* 170639 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60357 | /* 170641 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60358 | /* 170645 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60359 | /* 170650 */ GIR_RootConstrainSelectedInstOperands, |
| 60360 | /* 170651 */ // GIR_Coverage, 2289, |
| 60361 | /* 170651 */ GIR_EraseRootFromParent_Done, |
| 60362 | /* 170652 */ // Label 3710: @170652 |
| 60363 | /* 170652 */ GIM_Try, /*On fail goto*//*Label 3711*/ GIMT_Encode4(170714), // Rule ID 6088 // |
| 60364 | /* 170657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60365 | /* 170660 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 60366 | /* 170664 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 60367 | /* 170668 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60368 | /* 170672 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60369 | /* 170676 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60370 | /* 170679 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60371 | /* 170683 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60372 | /* 170687 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60373 | /* 170689 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60374 | /* 170696 */ // (fdiv:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60375 | /* 170696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSZrm), |
| 60376 | /* 170699 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60377 | /* 170701 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60378 | /* 170703 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60379 | /* 170707 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60380 | /* 170712 */ GIR_RootConstrainSelectedInstOperands, |
| 60381 | /* 170713 */ // GIR_Coverage, 6088, |
| 60382 | /* 170713 */ GIR_EraseRootFromParent_Done, |
| 60383 | /* 170714 */ // Label 3711: @170714 |
| 60384 | /* 170714 */ GIM_Try, /*On fail goto*//*Label 3712*/ GIMT_Encode4(170751), // Rule ID 905 // |
| 60385 | /* 170719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 60386 | /* 170722 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60387 | /* 170726 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60388 | /* 170730 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 60389 | /* 170734 */ // (fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (DIV_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 60390 | /* 170734 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp32), |
| 60391 | /* 170739 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 60392 | /* 170745 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 60393 | /* 170749 */ GIR_RootConstrainSelectedInstOperands, |
| 60394 | /* 170750 */ // GIR_Coverage, 905, |
| 60395 | /* 170750 */ GIR_Done, |
| 60396 | /* 170751 */ // Label 3712: @170751 |
| 60397 | /* 170751 */ GIM_Try, /*On fail goto*//*Label 3713*/ GIMT_Encode4(170782), // Rule ID 2279 // |
| 60398 | /* 170756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 60399 | /* 170759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60400 | /* 170763 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60401 | /* 170767 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60402 | /* 170771 */ // (fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VDIVSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 60403 | /* 170771 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSSrr), |
| 60404 | /* 170776 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60405 | /* 170780 */ GIR_RootConstrainSelectedInstOperands, |
| 60406 | /* 170781 */ // GIR_Coverage, 2279, |
| 60407 | /* 170781 */ GIR_Done, |
| 60408 | /* 170782 */ // Label 3713: @170782 |
| 60409 | /* 170782 */ GIM_Try, /*On fail goto*//*Label 3714*/ GIMT_Encode4(170813), // Rule ID 2287 // |
| 60410 | /* 170787 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 60411 | /* 170790 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60412 | /* 170794 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60413 | /* 170798 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 60414 | /* 170802 */ // (fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (DIVSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 60415 | /* 170802 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVSSrr), |
| 60416 | /* 170807 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60417 | /* 170811 */ GIR_RootConstrainSelectedInstOperands, |
| 60418 | /* 170812 */ // GIR_Coverage, 2287, |
| 60419 | /* 170812 */ GIR_Done, |
| 60420 | /* 170813 */ // Label 3714: @170813 |
| 60421 | /* 170813 */ GIM_Try, /*On fail goto*//*Label 3715*/ GIMT_Encode4(170844), // Rule ID 6086 // |
| 60422 | /* 170818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60423 | /* 170821 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 60424 | /* 170825 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 60425 | /* 170829 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 60426 | /* 170833 */ // (fdiv:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VDIVSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 60427 | /* 170833 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSSZrr), |
| 60428 | /* 170838 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60429 | /* 170842 */ GIR_RootConstrainSelectedInstOperands, |
| 60430 | /* 170843 */ // GIR_Coverage, 6086, |
| 60431 | /* 170843 */ GIR_Done, |
| 60432 | /* 170844 */ // Label 3715: @170844 |
| 60433 | /* 170844 */ GIM_Reject, |
| 60434 | /* 170845 */ // Label 3699: @170845 |
| 60435 | /* 170845 */ GIM_Reject, |
| 60436 | /* 170846 */ // Label 3684: @170846 |
| 60437 | /* 170846 */ GIM_Try, /*On fail goto*//*Label 3716*/ GIMT_Encode4(171954), |
| 60438 | /* 170851 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 60439 | /* 170854 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 60440 | /* 170857 */ GIM_Try, /*On fail goto*//*Label 3717*/ GIMT_Encode4(170939), // Rule ID 22488 // |
| 60441 | /* 170862 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 60442 | /* 170865 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60443 | /* 170869 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60444 | /* 170873 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60445 | /* 170877 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 60446 | /* 170881 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 60447 | /* 170885 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 60448 | /* 170889 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60449 | /* 170893 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 60450 | /* 170896 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 60451 | /* 170900 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 60452 | /* 170907 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 60453 | /* 170911 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 60454 | /* 170913 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60455 | /* 170920 */ // (fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (DIVSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60456 | /* 170920 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSDrm), |
| 60457 | /* 170923 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60458 | /* 170925 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60459 | /* 170927 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60460 | /* 170931 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 60461 | /* 170937 */ GIR_RootConstrainSelectedInstOperands, |
| 60462 | /* 170938 */ // GIR_Coverage, 22488, |
| 60463 | /* 170938 */ GIR_EraseRootFromParent_Done, |
| 60464 | /* 170939 */ // Label 3717: @170939 |
| 60465 | /* 170939 */ GIM_Try, /*On fail goto*//*Label 3718*/ GIMT_Encode4(171021), // Rule ID 22489 // |
| 60466 | /* 170944 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 60467 | /* 170947 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60468 | /* 170951 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60469 | /* 170955 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60470 | /* 170959 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 60471 | /* 170963 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 60472 | /* 170967 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 60473 | /* 170971 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60474 | /* 170975 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 60475 | /* 170978 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 60476 | /* 170982 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 60477 | /* 170989 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 60478 | /* 170993 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 60479 | /* 170995 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60480 | /* 171002 */ // (fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (VDIVSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60481 | /* 171002 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDrm), |
| 60482 | /* 171005 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60483 | /* 171007 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60484 | /* 171009 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60485 | /* 171013 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 60486 | /* 171019 */ GIR_RootConstrainSelectedInstOperands, |
| 60487 | /* 171020 */ // GIR_Coverage, 22489, |
| 60488 | /* 171020 */ GIR_EraseRootFromParent_Done, |
| 60489 | /* 171021 */ // Label 3718: @171021 |
| 60490 | /* 171021 */ GIM_Try, /*On fail goto*//*Label 3719*/ GIMT_Encode4(171103), // Rule ID 22490 // |
| 60491 | /* 171026 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60492 | /* 171029 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60493 | /* 171033 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60494 | /* 171037 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60495 | /* 171041 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 60496 | /* 171045 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 60497 | /* 171049 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 60498 | /* 171053 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60499 | /* 171057 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 60500 | /* 171060 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 60501 | /* 171064 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 60502 | /* 171071 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 60503 | /* 171075 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 60504 | /* 171077 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60505 | /* 171084 */ // (fdiv:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (bitconvert:{ *:[f64] } (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>>)) => (VDIVSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60506 | /* 171084 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDZrm), |
| 60507 | /* 171087 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60508 | /* 171089 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60509 | /* 171091 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60510 | /* 171095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 60511 | /* 171101 */ GIR_RootConstrainSelectedInstOperands, |
| 60512 | /* 171102 */ // GIR_Coverage, 22490, |
| 60513 | /* 171102 */ GIR_EraseRootFromParent_Done, |
| 60514 | /* 171103 */ // Label 3719: @171103 |
| 60515 | /* 171103 */ GIM_Try, /*On fail goto*//*Label 3720*/ GIMT_Encode4(171168), // Rule ID 1035 // |
| 60516 | /* 171108 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60517 | /* 171111 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60518 | /* 171115 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60519 | /* 171119 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60520 | /* 171123 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 60521 | /* 171130 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60522 | /* 171134 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60523 | /* 171138 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60524 | /* 171140 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60525 | /* 171147 */ // (fdiv:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (DIVR_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60526 | /* 171147 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m64), |
| 60527 | /* 171150 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60528 | /* 171152 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60529 | /* 171154 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60530 | /* 171158 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60531 | /* 171161 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60532 | /* 171166 */ GIR_RootConstrainSelectedInstOperands, |
| 60533 | /* 171167 */ // GIR_Coverage, 1035, |
| 60534 | /* 171167 */ GIR_EraseRootFromParent_Done, |
| 60535 | /* 171168 */ // Label 3720: @171168 |
| 60536 | /* 171168 */ GIM_Try, /*On fail goto*//*Label 3721*/ GIMT_Encode4(171233), // Rule ID 1037 // |
| 60537 | /* 171173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60538 | /* 171176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60539 | /* 171180 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60540 | /* 171184 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60541 | /* 171188 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60542 | /* 171195 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60543 | /* 171199 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60544 | /* 171203 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60545 | /* 171205 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60546 | /* 171212 */ // (fdiv:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (DIVR_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60547 | /* 171212 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m64), |
| 60548 | /* 171215 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60549 | /* 171217 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60550 | /* 171219 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60551 | /* 171223 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60552 | /* 171226 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60553 | /* 171231 */ GIR_RootConstrainSelectedInstOperands, |
| 60554 | /* 171232 */ // GIR_Coverage, 1037, |
| 60555 | /* 171232 */ GIR_EraseRootFromParent_Done, |
| 60556 | /* 171233 */ // Label 3721: @171233 |
| 60557 | /* 171233 */ GIM_Try, /*On fail goto*//*Label 3722*/ GIMT_Encode4(171298), // Rule ID 1023 // |
| 60558 | /* 171238 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60559 | /* 171241 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60560 | /* 171245 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60561 | /* 171249 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60562 | /* 171253 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60563 | /* 171256 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60564 | /* 171260 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60565 | /* 171264 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60566 | /* 171268 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60567 | /* 171270 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60568 | /* 171277 */ // (fdiv:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP64:{ *:[f64] }:$src1) => (DIVR_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60569 | /* 171277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp64m), |
| 60570 | /* 171280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60571 | /* 171282 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60572 | /* 171284 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60573 | /* 171288 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60574 | /* 171291 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60575 | /* 171296 */ GIR_RootConstrainSelectedInstOperands, |
| 60576 | /* 171297 */ // GIR_Coverage, 1023, |
| 60577 | /* 171297 */ GIR_EraseRootFromParent_Done, |
| 60578 | /* 171298 */ // Label 3722: @171298 |
| 60579 | /* 171298 */ GIM_Try, /*On fail goto*//*Label 3723*/ GIMT_Encode4(171370), // Rule ID 1025 // |
| 60580 | /* 171303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60581 | /* 171306 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60582 | /* 171310 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60583 | /* 171314 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60584 | /* 171318 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60585 | /* 171321 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60586 | /* 171325 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60587 | /* 171332 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60588 | /* 171336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60589 | /* 171340 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60590 | /* 171342 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60591 | /* 171349 */ // (fdiv:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP64:{ *:[f64] }:$src1) => (DIVR_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60592 | /* 171349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp64m32), |
| 60593 | /* 171352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60594 | /* 171354 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60595 | /* 171356 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60596 | /* 171360 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60597 | /* 171363 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60598 | /* 171368 */ GIR_RootConstrainSelectedInstOperands, |
| 60599 | /* 171369 */ // GIR_Coverage, 1025, |
| 60600 | /* 171369 */ GIR_EraseRootFromParent_Done, |
| 60601 | /* 171370 */ // Label 3723: @171370 |
| 60602 | /* 171370 */ GIM_Try, /*On fail goto*//*Label 3724*/ GIMT_Encode4(171435), // Rule ID 1013 // |
| 60603 | /* 171375 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60604 | /* 171378 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60605 | /* 171382 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60606 | /* 171386 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60607 | /* 171390 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60608 | /* 171394 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 60609 | /* 171401 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60610 | /* 171405 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60611 | /* 171407 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60612 | /* 171414 */ // (fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60613 | /* 171414 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m64), |
| 60614 | /* 171417 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60615 | /* 171419 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60616 | /* 171421 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60617 | /* 171425 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60618 | /* 171428 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60619 | /* 171433 */ GIR_RootConstrainSelectedInstOperands, |
| 60620 | /* 171434 */ // GIR_Coverage, 1013, |
| 60621 | /* 171434 */ GIR_EraseRootFromParent_Done, |
| 60622 | /* 171435 */ // Label 3724: @171435 |
| 60623 | /* 171435 */ GIM_Try, /*On fail goto*//*Label 3725*/ GIMT_Encode4(171500), // Rule ID 1015 // |
| 60624 | /* 171440 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60625 | /* 171443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60626 | /* 171447 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60627 | /* 171451 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60628 | /* 171455 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60629 | /* 171459 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60630 | /* 171466 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60631 | /* 171470 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60632 | /* 171472 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60633 | /* 171479 */ // (fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60634 | /* 171479 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m64), |
| 60635 | /* 171482 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60636 | /* 171484 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60637 | /* 171486 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60638 | /* 171490 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60639 | /* 171493 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60640 | /* 171498 */ GIR_RootConstrainSelectedInstOperands, |
| 60641 | /* 171499 */ // GIR_Coverage, 1015, |
| 60642 | /* 171499 */ GIR_EraseRootFromParent_Done, |
| 60643 | /* 171500 */ // Label 3725: @171500 |
| 60644 | /* 171500 */ GIM_Try, /*On fail goto*//*Label 3726*/ GIMT_Encode4(171565), // Rule ID 1001 // |
| 60645 | /* 171505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60646 | /* 171508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60647 | /* 171512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60648 | /* 171516 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60649 | /* 171520 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60650 | /* 171524 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60651 | /* 171527 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60652 | /* 171531 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60653 | /* 171535 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60654 | /* 171537 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60655 | /* 171544 */ // (fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (DIV_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60656 | /* 171544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64m), |
| 60657 | /* 171547 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60658 | /* 171549 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60659 | /* 171551 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60660 | /* 171555 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60661 | /* 171558 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60662 | /* 171563 */ GIR_RootConstrainSelectedInstOperands, |
| 60663 | /* 171564 */ // GIR_Coverage, 1001, |
| 60664 | /* 171564 */ GIR_EraseRootFromParent_Done, |
| 60665 | /* 171565 */ // Label 3726: @171565 |
| 60666 | /* 171565 */ GIM_Try, /*On fail goto*//*Label 3727*/ GIMT_Encode4(171637), // Rule ID 1003 // |
| 60667 | /* 171570 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60668 | /* 171573 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60669 | /* 171577 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60670 | /* 171581 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60671 | /* 171585 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60672 | /* 171589 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60673 | /* 171592 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60674 | /* 171596 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60675 | /* 171603 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60676 | /* 171607 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60677 | /* 171609 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60678 | /* 171616 */ // (fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (DIV_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60679 | /* 171616 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64m32), |
| 60680 | /* 171619 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60681 | /* 171621 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60682 | /* 171623 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60683 | /* 171627 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60684 | /* 171630 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60685 | /* 171635 */ GIR_RootConstrainSelectedInstOperands, |
| 60686 | /* 171636 */ // GIR_Coverage, 1003, |
| 60687 | /* 171636 */ GIR_EraseRootFromParent_Done, |
| 60688 | /* 171637 */ // Label 3727: @171637 |
| 60689 | /* 171637 */ GIM_Try, /*On fail goto*//*Label 3728*/ GIMT_Encode4(171699), // Rule ID 2285 // |
| 60690 | /* 171642 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 60691 | /* 171645 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60692 | /* 171649 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60693 | /* 171653 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60694 | /* 171657 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60695 | /* 171661 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60696 | /* 171664 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60697 | /* 171668 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60698 | /* 171672 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60699 | /* 171674 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60700 | /* 171681 */ // (fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60701 | /* 171681 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDrm), |
| 60702 | /* 171684 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60703 | /* 171686 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60704 | /* 171688 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60705 | /* 171692 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60706 | /* 171697 */ GIR_RootConstrainSelectedInstOperands, |
| 60707 | /* 171698 */ // GIR_Coverage, 2285, |
| 60708 | /* 171698 */ GIR_EraseRootFromParent_Done, |
| 60709 | /* 171699 */ // Label 3728: @171699 |
| 60710 | /* 171699 */ GIM_Try, /*On fail goto*//*Label 3729*/ GIMT_Encode4(171761), // Rule ID 2293 // |
| 60711 | /* 171704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 60712 | /* 171707 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60713 | /* 171711 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60714 | /* 171715 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60715 | /* 171719 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60716 | /* 171723 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60717 | /* 171726 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60718 | /* 171730 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60719 | /* 171734 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60720 | /* 171736 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60721 | /* 171743 */ // (fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (DIVSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60722 | /* 171743 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSDrm), |
| 60723 | /* 171746 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60724 | /* 171748 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60725 | /* 171750 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60726 | /* 171754 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60727 | /* 171759 */ GIR_RootConstrainSelectedInstOperands, |
| 60728 | /* 171760 */ // GIR_Coverage, 2293, |
| 60729 | /* 171760 */ GIR_EraseRootFromParent_Done, |
| 60730 | /* 171761 */ // Label 3729: @171761 |
| 60731 | /* 171761 */ GIM_Try, /*On fail goto*//*Label 3730*/ GIMT_Encode4(171823), // Rule ID 6107 // |
| 60732 | /* 171766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60733 | /* 171769 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60734 | /* 171773 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60735 | /* 171777 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60736 | /* 171781 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60737 | /* 171785 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60738 | /* 171788 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60739 | /* 171792 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60740 | /* 171796 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60741 | /* 171798 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60742 | /* 171805 */ // (fdiv:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60743 | /* 171805 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDZrm), |
| 60744 | /* 171808 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60745 | /* 171810 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60746 | /* 171812 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60747 | /* 171816 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60748 | /* 171821 */ GIR_RootConstrainSelectedInstOperands, |
| 60749 | /* 171822 */ // GIR_Coverage, 6107, |
| 60750 | /* 171822 */ GIR_EraseRootFromParent_Done, |
| 60751 | /* 171823 */ // Label 3730: @171823 |
| 60752 | /* 171823 */ GIM_Try, /*On fail goto*//*Label 3731*/ GIMT_Encode4(171860), // Rule ID 907 // |
| 60753 | /* 171828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60754 | /* 171831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60755 | /* 171835 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60756 | /* 171839 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60757 | /* 171843 */ // (fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (DIV_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 60758 | /* 171843 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64), |
| 60759 | /* 171848 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 60760 | /* 171854 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 60761 | /* 171858 */ GIR_RootConstrainSelectedInstOperands, |
| 60762 | /* 171859 */ // GIR_Coverage, 907, |
| 60763 | /* 171859 */ GIR_Done, |
| 60764 | /* 171860 */ // Label 3731: @171860 |
| 60765 | /* 171860 */ GIM_Try, /*On fail goto*//*Label 3732*/ GIMT_Encode4(171891), // Rule ID 2283 // |
| 60766 | /* 171865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 60767 | /* 171868 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60768 | /* 171872 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60769 | /* 171876 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60770 | /* 171880 */ // (fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VDIVSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 60771 | /* 171880 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSDrr), |
| 60772 | /* 171885 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60773 | /* 171889 */ GIR_RootConstrainSelectedInstOperands, |
| 60774 | /* 171890 */ // GIR_Coverage, 2283, |
| 60775 | /* 171890 */ GIR_Done, |
| 60776 | /* 171891 */ // Label 3732: @171891 |
| 60777 | /* 171891 */ GIM_Try, /*On fail goto*//*Label 3733*/ GIMT_Encode4(171922), // Rule ID 2291 // |
| 60778 | /* 171896 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 60779 | /* 171899 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60780 | /* 171903 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60781 | /* 171907 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60782 | /* 171911 */ // (fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (DIVSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 60783 | /* 171911 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVSDrr), |
| 60784 | /* 171916 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60785 | /* 171920 */ GIR_RootConstrainSelectedInstOperands, |
| 60786 | /* 171921 */ // GIR_Coverage, 2291, |
| 60787 | /* 171921 */ GIR_Done, |
| 60788 | /* 171922 */ // Label 3733: @171922 |
| 60789 | /* 171922 */ GIM_Try, /*On fail goto*//*Label 3734*/ GIMT_Encode4(171953), // Rule ID 6105 // |
| 60790 | /* 171927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60791 | /* 171930 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60792 | /* 171934 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60793 | /* 171938 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60794 | /* 171942 */ // (fdiv:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VDIVSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 60795 | /* 171942 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSDZrr), |
| 60796 | /* 171947 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60797 | /* 171951 */ GIR_RootConstrainSelectedInstOperands, |
| 60798 | /* 171952 */ // GIR_Coverage, 6105, |
| 60799 | /* 171952 */ GIR_Done, |
| 60800 | /* 171953 */ // Label 3734: @171953 |
| 60801 | /* 171953 */ GIM_Reject, |
| 60802 | /* 171954 */ // Label 3716: @171954 |
| 60803 | /* 171954 */ GIM_Reject, |
| 60804 | /* 171955 */ // Label 3685: @171955 |
| 60805 | /* 171955 */ GIM_Try, /*On fail goto*//*Label 3735*/ GIMT_Encode4(172520), |
| 60806 | /* 171960 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 60807 | /* 171963 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 60808 | /* 171966 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60809 | /* 171970 */ GIM_Try, /*On fail goto*//*Label 3736*/ GIMT_Encode4(172031), // Rule ID 1039 // |
| 60810 | /* 171975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60811 | /* 171978 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60812 | /* 171982 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60813 | /* 171986 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 60814 | /* 171993 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60815 | /* 171997 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60816 | /* 172001 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60817 | /* 172003 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60818 | /* 172010 */ // (fdiv:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (DIVR_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60819 | /* 172010 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m80), |
| 60820 | /* 172013 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60821 | /* 172015 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60822 | /* 172017 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60823 | /* 172021 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60824 | /* 172024 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60825 | /* 172029 */ GIR_RootConstrainSelectedInstOperands, |
| 60826 | /* 172030 */ // GIR_Coverage, 1039, |
| 60827 | /* 172030 */ GIR_EraseRootFromParent_Done, |
| 60828 | /* 172031 */ // Label 3736: @172031 |
| 60829 | /* 172031 */ GIM_Try, /*On fail goto*//*Label 3737*/ GIMT_Encode4(172092), // Rule ID 1041 // |
| 60830 | /* 172036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60831 | /* 172039 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60832 | /* 172043 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60833 | /* 172047 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60834 | /* 172054 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60835 | /* 172058 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60836 | /* 172062 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60837 | /* 172064 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60838 | /* 172071 */ // (fdiv:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (DIVR_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60839 | /* 172071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m80), |
| 60840 | /* 172074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60841 | /* 172076 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60842 | /* 172078 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60843 | /* 172082 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60844 | /* 172085 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60845 | /* 172090 */ GIR_RootConstrainSelectedInstOperands, |
| 60846 | /* 172091 */ // GIR_Coverage, 1041, |
| 60847 | /* 172091 */ GIR_EraseRootFromParent_Done, |
| 60848 | /* 172092 */ // Label 3737: @172092 |
| 60849 | /* 172092 */ GIM_Try, /*On fail goto*//*Label 3738*/ GIMT_Encode4(172160), // Rule ID 1027 // |
| 60850 | /* 172097 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60851 | /* 172100 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60852 | /* 172104 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60853 | /* 172108 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60854 | /* 172111 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60855 | /* 172115 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60856 | /* 172122 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60857 | /* 172126 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60858 | /* 172130 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60859 | /* 172132 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60860 | /* 172139 */ // (fdiv:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP80:{ *:[f80] }:$src1) => (DIVR_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60861 | /* 172139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp80m32), |
| 60862 | /* 172142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60863 | /* 172144 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60864 | /* 172146 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60865 | /* 172150 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60866 | /* 172153 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60867 | /* 172158 */ GIR_RootConstrainSelectedInstOperands, |
| 60868 | /* 172159 */ // GIR_Coverage, 1027, |
| 60869 | /* 172159 */ GIR_EraseRootFromParent_Done, |
| 60870 | /* 172160 */ // Label 3738: @172160 |
| 60871 | /* 172160 */ GIM_Try, /*On fail goto*//*Label 3739*/ GIMT_Encode4(172228), // Rule ID 1029 // |
| 60872 | /* 172165 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60873 | /* 172168 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60874 | /* 172172 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60875 | /* 172176 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60876 | /* 172179 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60877 | /* 172183 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 60878 | /* 172190 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60879 | /* 172194 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60880 | /* 172198 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60881 | /* 172200 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60882 | /* 172207 */ // (fdiv:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>, RFP80:{ *:[f80] }:$src1) => (DIVR_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60883 | /* 172207 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp80m64), |
| 60884 | /* 172210 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60885 | /* 172212 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60886 | /* 172214 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60887 | /* 172218 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60888 | /* 172221 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60889 | /* 172226 */ GIR_RootConstrainSelectedInstOperands, |
| 60890 | /* 172227 */ // GIR_Coverage, 1029, |
| 60891 | /* 172227 */ GIR_EraseRootFromParent_Done, |
| 60892 | /* 172228 */ // Label 3739: @172228 |
| 60893 | /* 172228 */ GIM_Try, /*On fail goto*//*Label 3740*/ GIMT_Encode4(172289), // Rule ID 1017 // |
| 60894 | /* 172233 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60895 | /* 172236 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60896 | /* 172240 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60897 | /* 172244 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60898 | /* 172248 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 60899 | /* 172255 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60900 | /* 172259 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60901 | /* 172261 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60902 | /* 172268 */ // (fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60903 | /* 172268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m80), |
| 60904 | /* 172271 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60905 | /* 172273 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60906 | /* 172275 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60907 | /* 172279 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60908 | /* 172282 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60909 | /* 172287 */ GIR_RootConstrainSelectedInstOperands, |
| 60910 | /* 172288 */ // GIR_Coverage, 1017, |
| 60911 | /* 172288 */ GIR_EraseRootFromParent_Done, |
| 60912 | /* 172289 */ // Label 3740: @172289 |
| 60913 | /* 172289 */ GIM_Try, /*On fail goto*//*Label 3741*/ GIMT_Encode4(172350), // Rule ID 1019 // |
| 60914 | /* 172294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60915 | /* 172297 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60916 | /* 172301 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60917 | /* 172305 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60918 | /* 172309 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60919 | /* 172316 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60920 | /* 172320 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60921 | /* 172322 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60922 | /* 172329 */ // (fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60923 | /* 172329 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m80), |
| 60924 | /* 172332 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60925 | /* 172334 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60926 | /* 172336 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60927 | /* 172340 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60928 | /* 172343 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60929 | /* 172348 */ GIR_RootConstrainSelectedInstOperands, |
| 60930 | /* 172349 */ // GIR_Coverage, 1019, |
| 60931 | /* 172349 */ GIR_EraseRootFromParent_Done, |
| 60932 | /* 172350 */ // Label 3741: @172350 |
| 60933 | /* 172350 */ GIM_Try, /*On fail goto*//*Label 3742*/ GIMT_Encode4(172418), // Rule ID 1005 // |
| 60934 | /* 172355 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60935 | /* 172358 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60936 | /* 172362 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60937 | /* 172366 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60938 | /* 172370 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60939 | /* 172373 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60940 | /* 172377 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60941 | /* 172384 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60942 | /* 172388 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60943 | /* 172390 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60944 | /* 172397 */ // (fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (DIV_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60945 | /* 172397 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80m32), |
| 60946 | /* 172400 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60947 | /* 172402 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60948 | /* 172404 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60949 | /* 172408 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60950 | /* 172411 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60951 | /* 172416 */ GIR_RootConstrainSelectedInstOperands, |
| 60952 | /* 172417 */ // GIR_Coverage, 1005, |
| 60953 | /* 172417 */ GIR_EraseRootFromParent_Done, |
| 60954 | /* 172418 */ // Label 3742: @172418 |
| 60955 | /* 172418 */ GIM_Try, /*On fail goto*//*Label 3743*/ GIMT_Encode4(172486), // Rule ID 1007 // |
| 60956 | /* 172423 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60957 | /* 172426 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60958 | /* 172430 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60959 | /* 172434 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60960 | /* 172438 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60961 | /* 172441 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60962 | /* 172445 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 60963 | /* 172452 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60964 | /* 172456 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60965 | /* 172458 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60966 | /* 172465 */ // (fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>) => (DIV_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60967 | /* 172465 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80m64), |
| 60968 | /* 172468 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60969 | /* 172470 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60970 | /* 172472 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60971 | /* 172476 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60972 | /* 172479 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60973 | /* 172484 */ GIR_RootConstrainSelectedInstOperands, |
| 60974 | /* 172485 */ // GIR_Coverage, 1007, |
| 60975 | /* 172485 */ GIR_EraseRootFromParent_Done, |
| 60976 | /* 172486 */ // Label 3743: @172486 |
| 60977 | /* 172486 */ GIM_Try, /*On fail goto*//*Label 3744*/ GIMT_Encode4(172519), // Rule ID 909 // |
| 60978 | /* 172491 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60979 | /* 172494 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60980 | /* 172498 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60981 | /* 172502 */ // (fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (DIV_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 60982 | /* 172502 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80), |
| 60983 | /* 172507 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 60984 | /* 172513 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 60985 | /* 172517 */ GIR_RootConstrainSelectedInstOperands, |
| 60986 | /* 172518 */ // GIR_Coverage, 909, |
| 60987 | /* 172518 */ GIR_Done, |
| 60988 | /* 172519 */ // Label 3744: @172519 |
| 60989 | /* 172519 */ GIM_Reject, |
| 60990 | /* 172520 */ // Label 3735: @172520 |
| 60991 | /* 172520 */ GIM_Reject, |
| 60992 | /* 172521 */ // Label 3686: @172521 |
| 60993 | /* 172521 */ GIM_Try, /*On fail goto*//*Label 3745*/ GIMT_Encode4(172750), |
| 60994 | /* 172526 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 60995 | /* 172529 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 60996 | /* 172532 */ GIM_Try, /*On fail goto*//*Label 3746*/ GIMT_Encode4(172594), // Rule ID 2261 // |
| 60997 | /* 172537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 60998 | /* 172540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60999 | /* 172544 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61000 | /* 172548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61001 | /* 172552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61002 | /* 172556 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61003 | /* 172559 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61004 | /* 172563 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61005 | /* 172567 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61006 | /* 172569 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61007 | /* 172576 */ // (fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61008 | /* 172576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDrm), |
| 61009 | /* 172579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61010 | /* 172581 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61011 | /* 172583 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61012 | /* 172587 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61013 | /* 172592 */ GIR_RootConstrainSelectedInstOperands, |
| 61014 | /* 172593 */ // GIR_Coverage, 2261, |
| 61015 | /* 172593 */ GIR_EraseRootFromParent_Done, |
| 61016 | /* 172594 */ // Label 3746: @172594 |
| 61017 | /* 172594 */ GIM_Try, /*On fail goto*//*Label 3747*/ GIMT_Encode4(172656), // Rule ID 6660 // |
| 61018 | /* 172599 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 61019 | /* 172602 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61020 | /* 172606 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61021 | /* 172610 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61022 | /* 172614 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61023 | /* 172618 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61024 | /* 172621 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61025 | /* 172625 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61026 | /* 172629 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61027 | /* 172631 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61028 | /* 172638 */ // (fdiv:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61029 | /* 172638 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ128rm), |
| 61030 | /* 172641 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61031 | /* 172643 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61032 | /* 172645 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61033 | /* 172649 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61034 | /* 172654 */ GIR_RootConstrainSelectedInstOperands, |
| 61035 | /* 172655 */ // GIR_Coverage, 6660, |
| 61036 | /* 172655 */ GIR_EraseRootFromParent_Done, |
| 61037 | /* 172656 */ // Label 3747: @172656 |
| 61038 | /* 172656 */ GIM_Try, /*On fail goto*//*Label 3748*/ GIMT_Encode4(172687), // Rule ID 2259 // |
| 61039 | /* 172661 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 61040 | /* 172664 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61041 | /* 172668 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61042 | /* 172672 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61043 | /* 172676 */ // (fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VDIVPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 61044 | /* 172676 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDrr), |
| 61045 | /* 172681 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61046 | /* 172685 */ GIR_RootConstrainSelectedInstOperands, |
| 61047 | /* 172686 */ // GIR_Coverage, 2259, |
| 61048 | /* 172686 */ GIR_Done, |
| 61049 | /* 172687 */ // Label 3748: @172687 |
| 61050 | /* 172687 */ GIM_Try, /*On fail goto*//*Label 3749*/ GIMT_Encode4(172718), // Rule ID 2275 // |
| 61051 | /* 172692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 61052 | /* 172695 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61053 | /* 172699 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61054 | /* 172703 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61055 | /* 172707 */ // (fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (DIVPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 61056 | /* 172707 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVPDrr), |
| 61057 | /* 172712 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61058 | /* 172716 */ GIR_RootConstrainSelectedInstOperands, |
| 61059 | /* 172717 */ // GIR_Coverage, 2275, |
| 61060 | /* 172717 */ GIR_Done, |
| 61061 | /* 172718 */ // Label 3749: @172718 |
| 61062 | /* 172718 */ GIM_Try, /*On fail goto*//*Label 3750*/ GIMT_Encode4(172749), // Rule ID 6656 // |
| 61063 | /* 172723 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 61064 | /* 172726 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61065 | /* 172730 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61066 | /* 172734 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61067 | /* 172738 */ // (fdiv:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VDIVPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 61068 | /* 172738 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ128rr), |
| 61069 | /* 172743 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61070 | /* 172747 */ GIR_RootConstrainSelectedInstOperands, |
| 61071 | /* 172748 */ // GIR_Coverage, 6656, |
| 61072 | /* 172748 */ GIR_Done, |
| 61073 | /* 172749 */ // Label 3750: @172749 |
| 61074 | /* 172749 */ GIM_Reject, |
| 61075 | /* 172750 */ // Label 3745: @172750 |
| 61076 | /* 172750 */ GIM_Reject, |
| 61077 | /* 172751 */ // Label 3687: @172751 |
| 61078 | /* 172751 */ GIM_Try, /*On fail goto*//*Label 3751*/ GIMT_Encode4(172980), |
| 61079 | /* 172756 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 61080 | /* 172759 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 61081 | /* 172762 */ GIM_Try, /*On fail goto*//*Label 3752*/ GIMT_Encode4(172824), // Rule ID 2257 // |
| 61082 | /* 172767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 61083 | /* 172770 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61084 | /* 172774 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61085 | /* 172778 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61086 | /* 172782 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61087 | /* 172786 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61088 | /* 172789 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61089 | /* 172793 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61090 | /* 172797 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61091 | /* 172799 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61092 | /* 172806 */ // (fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61093 | /* 172806 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSrm), |
| 61094 | /* 172809 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61095 | /* 172811 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61096 | /* 172813 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61097 | /* 172817 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61098 | /* 172822 */ GIR_RootConstrainSelectedInstOperands, |
| 61099 | /* 172823 */ // GIR_Coverage, 2257, |
| 61100 | /* 172823 */ GIR_EraseRootFromParent_Done, |
| 61101 | /* 172824 */ // Label 3752: @172824 |
| 61102 | /* 172824 */ GIM_Try, /*On fail goto*//*Label 3753*/ GIMT_Encode4(172886), // Rule ID 6636 // |
| 61103 | /* 172829 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 61104 | /* 172832 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61105 | /* 172836 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61106 | /* 172840 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61107 | /* 172844 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61108 | /* 172848 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61109 | /* 172851 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61110 | /* 172855 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61111 | /* 172859 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61112 | /* 172861 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61113 | /* 172868 */ // (fdiv:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61114 | /* 172868 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ128rm), |
| 61115 | /* 172871 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61116 | /* 172873 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61117 | /* 172875 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61118 | /* 172879 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61119 | /* 172884 */ GIR_RootConstrainSelectedInstOperands, |
| 61120 | /* 172885 */ // GIR_Coverage, 6636, |
| 61121 | /* 172885 */ GIR_EraseRootFromParent_Done, |
| 61122 | /* 172886 */ // Label 3753: @172886 |
| 61123 | /* 172886 */ GIM_Try, /*On fail goto*//*Label 3754*/ GIMT_Encode4(172917), // Rule ID 2255 // |
| 61124 | /* 172891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 61125 | /* 172894 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61126 | /* 172898 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61127 | /* 172902 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61128 | /* 172906 */ // (fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VDIVPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 61129 | /* 172906 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSrr), |
| 61130 | /* 172911 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61131 | /* 172915 */ GIR_RootConstrainSelectedInstOperands, |
| 61132 | /* 172916 */ // GIR_Coverage, 2255, |
| 61133 | /* 172916 */ GIR_Done, |
| 61134 | /* 172917 */ // Label 3754: @172917 |
| 61135 | /* 172917 */ GIM_Try, /*On fail goto*//*Label 3755*/ GIMT_Encode4(172948), // Rule ID 2271 // |
| 61136 | /* 172922 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 61137 | /* 172925 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61138 | /* 172929 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61139 | /* 172933 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61140 | /* 172937 */ // (fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (DIVPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 61141 | /* 172937 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVPSrr), |
| 61142 | /* 172942 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61143 | /* 172946 */ GIR_RootConstrainSelectedInstOperands, |
| 61144 | /* 172947 */ // GIR_Coverage, 2271, |
| 61145 | /* 172947 */ GIR_Done, |
| 61146 | /* 172948 */ // Label 3755: @172948 |
| 61147 | /* 172948 */ GIM_Try, /*On fail goto*//*Label 3756*/ GIMT_Encode4(172979), // Rule ID 6632 // |
| 61148 | /* 172953 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 61149 | /* 172956 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61150 | /* 172960 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61151 | /* 172964 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61152 | /* 172968 */ // (fdiv:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VDIVPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 61153 | /* 172968 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ128rr), |
| 61154 | /* 172973 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61155 | /* 172977 */ GIR_RootConstrainSelectedInstOperands, |
| 61156 | /* 172978 */ // GIR_Coverage, 6632, |
| 61157 | /* 172978 */ GIR_Done, |
| 61158 | /* 172979 */ // Label 3756: @172979 |
| 61159 | /* 172979 */ GIM_Reject, |
| 61160 | /* 172980 */ // Label 3751: @172980 |
| 61161 | /* 172980 */ GIM_Reject, |
| 61162 | /* 172981 */ // Label 3688: @172981 |
| 61163 | /* 172981 */ GIM_Try, /*On fail goto*//*Label 3757*/ GIMT_Encode4(173179), |
| 61164 | /* 172986 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 61165 | /* 172989 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 61166 | /* 172992 */ GIM_Try, /*On fail goto*//*Label 3758*/ GIMT_Encode4(173054), // Rule ID 2269 // |
| 61167 | /* 172997 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 61168 | /* 173000 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61169 | /* 173004 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61170 | /* 173008 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61171 | /* 173012 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61172 | /* 173016 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61173 | /* 173019 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61174 | /* 173023 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61175 | /* 173027 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61176 | /* 173029 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61177 | /* 173036 */ // (fdiv:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61178 | /* 173036 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDYrm), |
| 61179 | /* 173039 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61180 | /* 173041 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61181 | /* 173043 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61182 | /* 173047 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61183 | /* 173052 */ GIR_RootConstrainSelectedInstOperands, |
| 61184 | /* 173053 */ // GIR_Coverage, 2269, |
| 61185 | /* 173053 */ GIR_EraseRootFromParent_Done, |
| 61186 | /* 173054 */ // Label 3758: @173054 |
| 61187 | /* 173054 */ GIM_Try, /*On fail goto*//*Label 3759*/ GIMT_Encode4(173116), // Rule ID 6672 // |
| 61188 | /* 173059 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 61189 | /* 173062 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61190 | /* 173066 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61191 | /* 173070 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61192 | /* 173074 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61193 | /* 173078 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61194 | /* 173081 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61195 | /* 173085 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61196 | /* 173089 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61197 | /* 173091 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61198 | /* 173098 */ // (fdiv:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61199 | /* 173098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ256rm), |
| 61200 | /* 173101 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61201 | /* 173103 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61202 | /* 173105 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61203 | /* 173109 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61204 | /* 173114 */ GIR_RootConstrainSelectedInstOperands, |
| 61205 | /* 173115 */ // GIR_Coverage, 6672, |
| 61206 | /* 173115 */ GIR_EraseRootFromParent_Done, |
| 61207 | /* 173116 */ // Label 3759: @173116 |
| 61208 | /* 173116 */ GIM_Try, /*On fail goto*//*Label 3760*/ GIMT_Encode4(173147), // Rule ID 2267 // |
| 61209 | /* 173121 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 61210 | /* 173124 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61211 | /* 173128 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61212 | /* 173132 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61213 | /* 173136 */ // (fdiv:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VDIVPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 61214 | /* 173136 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDYrr), |
| 61215 | /* 173141 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61216 | /* 173145 */ GIR_RootConstrainSelectedInstOperands, |
| 61217 | /* 173146 */ // GIR_Coverage, 2267, |
| 61218 | /* 173146 */ GIR_Done, |
| 61219 | /* 173147 */ // Label 3760: @173147 |
| 61220 | /* 173147 */ GIM_Try, /*On fail goto*//*Label 3761*/ GIMT_Encode4(173178), // Rule ID 6668 // |
| 61221 | /* 173152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 61222 | /* 173155 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61223 | /* 173159 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61224 | /* 173163 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61225 | /* 173167 */ // (fdiv:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VDIVPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 61226 | /* 173167 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ256rr), |
| 61227 | /* 173172 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61228 | /* 173176 */ GIR_RootConstrainSelectedInstOperands, |
| 61229 | /* 173177 */ // GIR_Coverage, 6668, |
| 61230 | /* 173177 */ GIR_Done, |
| 61231 | /* 173178 */ // Label 3761: @173178 |
| 61232 | /* 173178 */ GIM_Reject, |
| 61233 | /* 173179 */ // Label 3757: @173179 |
| 61234 | /* 173179 */ GIM_Reject, |
| 61235 | /* 173180 */ // Label 3689: @173180 |
| 61236 | /* 173180 */ GIM_Try, /*On fail goto*//*Label 3762*/ GIMT_Encode4(173277), |
| 61237 | /* 173185 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 61238 | /* 173188 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 61239 | /* 173191 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61240 | /* 173195 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61241 | /* 173199 */ GIM_Try, /*On fail goto*//*Label 3763*/ GIMT_Encode4(173253), // Rule ID 6696 // |
| 61242 | /* 173204 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 61243 | /* 173207 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61244 | /* 173211 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61245 | /* 173215 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61246 | /* 173218 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61247 | /* 173222 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61248 | /* 173226 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61249 | /* 173228 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61250 | /* 173235 */ // (fdiv:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61251 | /* 173235 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ128rm), |
| 61252 | /* 173238 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61253 | /* 173240 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61254 | /* 173242 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61255 | /* 173246 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61256 | /* 173251 */ GIR_RootConstrainSelectedInstOperands, |
| 61257 | /* 173252 */ // GIR_Coverage, 6696, |
| 61258 | /* 173252 */ GIR_EraseRootFromParent_Done, |
| 61259 | /* 173253 */ // Label 3763: @173253 |
| 61260 | /* 173253 */ GIM_Try, /*On fail goto*//*Label 3764*/ GIMT_Encode4(173276), // Rule ID 6692 // |
| 61261 | /* 173258 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 61262 | /* 173261 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61263 | /* 173265 */ // (fdiv:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VDIVPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 61264 | /* 173265 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ128rr), |
| 61265 | /* 173270 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61266 | /* 173274 */ GIR_RootConstrainSelectedInstOperands, |
| 61267 | /* 173275 */ // GIR_Coverage, 6692, |
| 61268 | /* 173275 */ GIR_Done, |
| 61269 | /* 173276 */ // Label 3764: @173276 |
| 61270 | /* 173276 */ GIM_Reject, |
| 61271 | /* 173277 */ // Label 3762: @173277 |
| 61272 | /* 173277 */ GIM_Reject, |
| 61273 | /* 173278 */ // Label 3690: @173278 |
| 61274 | /* 173278 */ GIM_Try, /*On fail goto*//*Label 3765*/ GIMT_Encode4(173476), |
| 61275 | /* 173283 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 61276 | /* 173286 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 61277 | /* 173289 */ GIM_Try, /*On fail goto*//*Label 3766*/ GIMT_Encode4(173351), // Rule ID 2265 // |
| 61278 | /* 173294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 61279 | /* 173297 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61280 | /* 173301 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61281 | /* 173305 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61282 | /* 173309 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61283 | /* 173313 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61284 | /* 173316 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61285 | /* 173320 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61286 | /* 173324 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61287 | /* 173326 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61288 | /* 173333 */ // (fdiv:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61289 | /* 173333 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSYrm), |
| 61290 | /* 173336 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61291 | /* 173338 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61292 | /* 173340 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61293 | /* 173344 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61294 | /* 173349 */ GIR_RootConstrainSelectedInstOperands, |
| 61295 | /* 173350 */ // GIR_Coverage, 2265, |
| 61296 | /* 173350 */ GIR_EraseRootFromParent_Done, |
| 61297 | /* 173351 */ // Label 3766: @173351 |
| 61298 | /* 173351 */ GIM_Try, /*On fail goto*//*Label 3767*/ GIMT_Encode4(173413), // Rule ID 6648 // |
| 61299 | /* 173356 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 61300 | /* 173359 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61301 | /* 173363 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61302 | /* 173367 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61303 | /* 173371 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61304 | /* 173375 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61305 | /* 173378 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61306 | /* 173382 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61307 | /* 173386 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61308 | /* 173388 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61309 | /* 173395 */ // (fdiv:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61310 | /* 173395 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ256rm), |
| 61311 | /* 173398 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61312 | /* 173400 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61313 | /* 173402 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61314 | /* 173406 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61315 | /* 173411 */ GIR_RootConstrainSelectedInstOperands, |
| 61316 | /* 173412 */ // GIR_Coverage, 6648, |
| 61317 | /* 173412 */ GIR_EraseRootFromParent_Done, |
| 61318 | /* 173413 */ // Label 3767: @173413 |
| 61319 | /* 173413 */ GIM_Try, /*On fail goto*//*Label 3768*/ GIMT_Encode4(173444), // Rule ID 2263 // |
| 61320 | /* 173418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 61321 | /* 173421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61322 | /* 173425 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61323 | /* 173429 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61324 | /* 173433 */ // (fdiv:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VDIVPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 61325 | /* 173433 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSYrr), |
| 61326 | /* 173438 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61327 | /* 173442 */ GIR_RootConstrainSelectedInstOperands, |
| 61328 | /* 173443 */ // GIR_Coverage, 2263, |
| 61329 | /* 173443 */ GIR_Done, |
| 61330 | /* 173444 */ // Label 3768: @173444 |
| 61331 | /* 173444 */ GIM_Try, /*On fail goto*//*Label 3769*/ GIMT_Encode4(173475), // Rule ID 6644 // |
| 61332 | /* 173449 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 61333 | /* 173452 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61334 | /* 173456 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61335 | /* 173460 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61336 | /* 173464 */ // (fdiv:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VDIVPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 61337 | /* 173464 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ256rr), |
| 61338 | /* 173469 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61339 | /* 173473 */ GIR_RootConstrainSelectedInstOperands, |
| 61340 | /* 173474 */ // GIR_Coverage, 6644, |
| 61341 | /* 173474 */ GIR_Done, |
| 61342 | /* 173475 */ // Label 3769: @173475 |
| 61343 | /* 173475 */ GIM_Reject, |
| 61344 | /* 173476 */ // Label 3765: @173476 |
| 61345 | /* 173476 */ GIM_Reject, |
| 61346 | /* 173477 */ // Label 3691: @173477 |
| 61347 | /* 173477 */ GIM_Try, /*On fail goto*//*Label 3770*/ GIMT_Encode4(173574), |
| 61348 | /* 173482 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 61349 | /* 173485 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 61350 | /* 173488 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61351 | /* 173492 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61352 | /* 173496 */ GIM_Try, /*On fail goto*//*Label 3771*/ GIMT_Encode4(173550), // Rule ID 6624 // |
| 61353 | /* 173501 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61354 | /* 173504 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61355 | /* 173508 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61356 | /* 173512 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61357 | /* 173515 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61358 | /* 173519 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61359 | /* 173523 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61360 | /* 173525 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61361 | /* 173532 */ // (fdiv:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61362 | /* 173532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZrm), |
| 61363 | /* 173535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61364 | /* 173537 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61365 | /* 173539 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61366 | /* 173543 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61367 | /* 173548 */ GIR_RootConstrainSelectedInstOperands, |
| 61368 | /* 173549 */ // GIR_Coverage, 6624, |
| 61369 | /* 173549 */ GIR_EraseRootFromParent_Done, |
| 61370 | /* 173550 */ // Label 3771: @173550 |
| 61371 | /* 173550 */ GIM_Try, /*On fail goto*//*Label 3772*/ GIMT_Encode4(173573), // Rule ID 6620 // |
| 61372 | /* 173555 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61373 | /* 173558 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61374 | /* 173562 */ // (fdiv:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VDIVPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 61375 | /* 173562 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZrr), |
| 61376 | /* 173567 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61377 | /* 173571 */ GIR_RootConstrainSelectedInstOperands, |
| 61378 | /* 173572 */ // GIR_Coverage, 6620, |
| 61379 | /* 173572 */ GIR_Done, |
| 61380 | /* 173573 */ // Label 3772: @173573 |
| 61381 | /* 173573 */ GIM_Reject, |
| 61382 | /* 173574 */ // Label 3770: @173574 |
| 61383 | /* 173574 */ GIM_Reject, |
| 61384 | /* 173575 */ // Label 3692: @173575 |
| 61385 | /* 173575 */ GIM_Try, /*On fail goto*//*Label 3773*/ GIMT_Encode4(173672), |
| 61386 | /* 173580 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 61387 | /* 173583 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 61388 | /* 173586 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61389 | /* 173590 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61390 | /* 173594 */ GIM_Try, /*On fail goto*//*Label 3774*/ GIMT_Encode4(173648), // Rule ID 6708 // |
| 61391 | /* 173599 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 61392 | /* 173602 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61393 | /* 173606 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61394 | /* 173610 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61395 | /* 173613 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61396 | /* 173617 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61397 | /* 173621 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61398 | /* 173623 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61399 | /* 173630 */ // (fdiv:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61400 | /* 173630 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ256rm), |
| 61401 | /* 173633 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61402 | /* 173635 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61403 | /* 173637 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61404 | /* 173641 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61405 | /* 173646 */ GIR_RootConstrainSelectedInstOperands, |
| 61406 | /* 173647 */ // GIR_Coverage, 6708, |
| 61407 | /* 173647 */ GIR_EraseRootFromParent_Done, |
| 61408 | /* 173648 */ // Label 3774: @173648 |
| 61409 | /* 173648 */ GIM_Try, /*On fail goto*//*Label 3775*/ GIMT_Encode4(173671), // Rule ID 6704 // |
| 61410 | /* 173653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 61411 | /* 173656 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61412 | /* 173660 */ // (fdiv:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VDIVPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 61413 | /* 173660 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ256rr), |
| 61414 | /* 173665 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61415 | /* 173669 */ GIR_RootConstrainSelectedInstOperands, |
| 61416 | /* 173670 */ // GIR_Coverage, 6704, |
| 61417 | /* 173670 */ GIR_Done, |
| 61418 | /* 173671 */ // Label 3775: @173671 |
| 61419 | /* 173671 */ GIM_Reject, |
| 61420 | /* 173672 */ // Label 3773: @173672 |
| 61421 | /* 173672 */ GIM_Reject, |
| 61422 | /* 173673 */ // Label 3693: @173673 |
| 61423 | /* 173673 */ GIM_Try, /*On fail goto*//*Label 3776*/ GIMT_Encode4(173770), |
| 61424 | /* 173678 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 61425 | /* 173681 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 61426 | /* 173684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61427 | /* 173688 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61428 | /* 173692 */ GIM_Try, /*On fail goto*//*Label 3777*/ GIMT_Encode4(173746), // Rule ID 6612 // |
| 61429 | /* 173697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61430 | /* 173700 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61431 | /* 173704 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61432 | /* 173708 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61433 | /* 173711 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61434 | /* 173715 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61435 | /* 173719 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61436 | /* 173721 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61437 | /* 173728 */ // (fdiv:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61438 | /* 173728 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZrm), |
| 61439 | /* 173731 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61440 | /* 173733 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61441 | /* 173735 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61442 | /* 173739 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61443 | /* 173744 */ GIR_RootConstrainSelectedInstOperands, |
| 61444 | /* 173745 */ // GIR_Coverage, 6612, |
| 61445 | /* 173745 */ GIR_EraseRootFromParent_Done, |
| 61446 | /* 173746 */ // Label 3777: @173746 |
| 61447 | /* 173746 */ GIM_Try, /*On fail goto*//*Label 3778*/ GIMT_Encode4(173769), // Rule ID 6608 // |
| 61448 | /* 173751 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61449 | /* 173754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61450 | /* 173758 */ // (fdiv:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VDIVPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 61451 | /* 173758 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZrr), |
| 61452 | /* 173763 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61453 | /* 173767 */ GIR_RootConstrainSelectedInstOperands, |
| 61454 | /* 173768 */ // GIR_Coverage, 6608, |
| 61455 | /* 173768 */ GIR_Done, |
| 61456 | /* 173769 */ // Label 3778: @173769 |
| 61457 | /* 173769 */ GIM_Reject, |
| 61458 | /* 173770 */ // Label 3776: @173770 |
| 61459 | /* 173770 */ GIM_Reject, |
| 61460 | /* 173771 */ // Label 3694: @173771 |
| 61461 | /* 173771 */ GIM_Try, /*On fail goto*//*Label 3779*/ GIMT_Encode4(173868), |
| 61462 | /* 173776 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 61463 | /* 173779 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 61464 | /* 173782 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61465 | /* 173786 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61466 | /* 173790 */ GIM_Try, /*On fail goto*//*Label 3780*/ GIMT_Encode4(173844), // Rule ID 6684 // |
| 61467 | /* 173795 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61468 | /* 173798 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 61469 | /* 173802 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61470 | /* 173806 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61471 | /* 173809 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61472 | /* 173813 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61473 | /* 173817 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61474 | /* 173819 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61475 | /* 173826 */ // (fdiv:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61476 | /* 173826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZrm), |
| 61477 | /* 173829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61478 | /* 173831 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61479 | /* 173833 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61480 | /* 173837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61481 | /* 173842 */ GIR_RootConstrainSelectedInstOperands, |
| 61482 | /* 173843 */ // GIR_Coverage, 6684, |
| 61483 | /* 173843 */ GIR_EraseRootFromParent_Done, |
| 61484 | /* 173844 */ // Label 3780: @173844 |
| 61485 | /* 173844 */ GIM_Try, /*On fail goto*//*Label 3781*/ GIMT_Encode4(173867), // Rule ID 6680 // |
| 61486 | /* 173849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61487 | /* 173852 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61488 | /* 173856 */ // (fdiv:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VDIVPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 61489 | /* 173856 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZrr), |
| 61490 | /* 173861 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61491 | /* 173865 */ GIR_RootConstrainSelectedInstOperands, |
| 61492 | /* 173866 */ // GIR_Coverage, 6680, |
| 61493 | /* 173866 */ GIR_Done, |
| 61494 | /* 173867 */ // Label 3781: @173867 |
| 61495 | /* 173867 */ GIM_Reject, |
| 61496 | /* 173868 */ // Label 3779: @173868 |
| 61497 | /* 173868 */ GIM_Reject, |
| 61498 | /* 173869 */ // Label 3695: @173869 |
| 61499 | /* 173869 */ GIM_Reject, |
| 61500 | /* 173870 */ // Label 46: @173870 |
| 61501 | /* 173870 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(6), /*)*//*default:*//*Label 3785*/ GIMT_Encode4(173992), |
| 61502 | /* 173881 */ /*GILLT_s32*//*Label 3782*/ GIMT_Encode4(173893), |
| 61503 | /* 173885 */ /*GILLT_s64*//*Label 3783*/ GIMT_Encode4(173926), |
| 61504 | /* 173889 */ /*GILLT_s80*//*Label 3784*/ GIMT_Encode4(173959), |
| 61505 | /* 173893 */ // Label 3782: @173893 |
| 61506 | /* 173893 */ GIM_Try, /*On fail goto*//*Label 3786*/ GIMT_Encode4(173925), // Rule ID 1042 // |
| 61507 | /* 173898 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 61508 | /* 173901 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61509 | /* 173904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61510 | /* 173908 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61511 | /* 173912 */ // (fneg:{ *:[f32] } RFP32:{ *:[f32] }:$src) => (CHS_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src) |
| 61512 | /* 173912 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CHS_Fp32), |
| 61513 | /* 173917 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 61514 | /* 173923 */ GIR_RootConstrainSelectedInstOperands, |
| 61515 | /* 173924 */ // GIR_Coverage, 1042, |
| 61516 | /* 173924 */ GIR_Done, |
| 61517 | /* 173925 */ // Label 3786: @173925 |
| 61518 | /* 173925 */ GIM_Reject, |
| 61519 | /* 173926 */ // Label 3783: @173926 |
| 61520 | /* 173926 */ GIM_Try, /*On fail goto*//*Label 3787*/ GIMT_Encode4(173958), // Rule ID 1043 // |
| 61521 | /* 173931 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 61522 | /* 173934 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61523 | /* 173937 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61524 | /* 173941 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61525 | /* 173945 */ // (fneg:{ *:[f64] } RFP64:{ *:[f64] }:$src) => (CHS_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src) |
| 61526 | /* 173945 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CHS_Fp64), |
| 61527 | /* 173950 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 61528 | /* 173956 */ GIR_RootConstrainSelectedInstOperands, |
| 61529 | /* 173957 */ // GIR_Coverage, 1043, |
| 61530 | /* 173957 */ GIR_Done, |
| 61531 | /* 173958 */ // Label 3787: @173958 |
| 61532 | /* 173958 */ GIM_Reject, |
| 61533 | /* 173959 */ // Label 3784: @173959 |
| 61534 | /* 173959 */ GIM_Try, /*On fail goto*//*Label 3788*/ GIMT_Encode4(173991), // Rule ID 1044 // |
| 61535 | /* 173964 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 61536 | /* 173967 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 61537 | /* 173970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61538 | /* 173974 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61539 | /* 173978 */ // (fneg:{ *:[f80] } RFP80:{ *:[f80] }:$src) => (CHS_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src) |
| 61540 | /* 173978 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CHS_Fp80), |
| 61541 | /* 173983 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 61542 | /* 173989 */ GIR_RootConstrainSelectedInstOperands, |
| 61543 | /* 173990 */ // GIR_Coverage, 1044, |
| 61544 | /* 173990 */ GIR_Done, |
| 61545 | /* 173991 */ // Label 3788: @173991 |
| 61546 | /* 173991 */ GIM_Reject, |
| 61547 | /* 173992 */ // Label 3785: @173992 |
| 61548 | /* 173992 */ GIM_Reject, |
| 61549 | /* 173993 */ // Label 47: @173993 |
| 61550 | /* 173993 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(20), /*)*//*default:*//*Label 3796*/ GIMT_Encode4(174924), |
| 61551 | /* 174004 */ /*GILLT_s32*//*Label 3789*/ GIMT_Encode4(174072), |
| 61552 | /* 174008 */ /*GILLT_s64*//*Label 3790*/ GIMT_Encode4(174193), |
| 61553 | /* 174012 */ /*GILLT_s80*//*Label 3791*/ GIMT_Encode4(174676), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 61554 | /* 174036 */ /*GILLT_v4s64*//*Label 3792*/ GIMT_Encode4(174737), GIMT_Encode4(0), GIMT_Encode4(0), |
| 61555 | /* 174048 */ /*GILLT_v8s32*//*Label 3793*/ GIMT_Encode4(174801), |
| 61556 | /* 174052 */ /*GILLT_v8s64*//*Label 3794*/ GIMT_Encode4(174832), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 61557 | /* 174068 */ /*GILLT_v16s32*//*Label 3795*/ GIMT_Encode4(174893), |
| 61558 | /* 174072 */ // Label 3789: @174072 |
| 61559 | /* 174072 */ GIM_Try, /*On fail goto*//*Label 3797*/ GIMT_Encode4(174192), |
| 61560 | /* 174077 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 61561 | /* 174080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 61562 | /* 174084 */ GIM_Try, /*On fail goto*//*Label 3798*/ GIMT_Encode4(174153), // Rule ID 21204 // |
| 61563 | /* 174089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_OptForSize), |
| 61564 | /* 174092 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61565 | /* 174096 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61566 | /* 174100 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61567 | /* 174103 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61568 | /* 174107 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61569 | /* 174111 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61570 | /* 174113 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61571 | /* 174120 */ // (fpextend:{ *:[f32] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSH2SSZrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 61572 | /* 174120 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 61573 | /* 174123 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61574 | /* 174127 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61575 | /* 174132 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61576 | /* 174134 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSH2SSZrm), |
| 61577 | /* 174137 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61578 | /* 174139 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61579 | /* 174142 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61580 | /* 174146 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61581 | /* 174151 */ GIR_RootConstrainSelectedInstOperands, |
| 61582 | /* 174152 */ // GIR_Coverage, 21204, |
| 61583 | /* 174152 */ GIR_EraseRootFromParent_Done, |
| 61584 | /* 174153 */ // Label 3798: @174153 |
| 61585 | /* 174153 */ GIM_Try, /*On fail goto*//*Label 3799*/ GIMT_Encode4(174191), // Rule ID 21202 // |
| 61586 | /* 174158 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61587 | /* 174161 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 61588 | /* 174165 */ // (fpextend:{ *:[f32] } FR16X:{ *:[f16] }:$src) => (VCVTSH2SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR16X:{ *:[f16] }:$src) |
| 61589 | /* 174165 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 61590 | /* 174168 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61591 | /* 174172 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61592 | /* 174177 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61593 | /* 174179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSH2SSZrr), |
| 61594 | /* 174182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61595 | /* 174184 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61596 | /* 174187 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61597 | /* 174189 */ GIR_RootConstrainSelectedInstOperands, |
| 61598 | /* 174190 */ // GIR_Coverage, 21202, |
| 61599 | /* 174190 */ GIR_EraseRootFromParent_Done, |
| 61600 | /* 174191 */ // Label 3799: @174191 |
| 61601 | /* 174191 */ GIM_Reject, |
| 61602 | /* 174192 */ // Label 3797: @174192 |
| 61603 | /* 174192 */ GIM_Reject, |
| 61604 | /* 174193 */ // Label 3790: @174193 |
| 61605 | /* 174193 */ GIM_Try, /*On fail goto*//*Label 3800*/ GIMT_Encode4(174252), // Rule ID 1894 // |
| 61606 | /* 174198 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE2), |
| 61607 | /* 174201 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61608 | /* 174204 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61609 | /* 174208 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61610 | /* 174212 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61611 | /* 174216 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61612 | /* 174219 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61613 | /* 174223 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61614 | /* 174227 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61615 | /* 174229 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61616 | /* 174236 */ // (fpextend:{ *:[f64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSS2SDrm:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 61617 | /* 174236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSS2SDrm), |
| 61618 | /* 174239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61619 | /* 174241 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61620 | /* 174245 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61621 | /* 174250 */ GIR_RootConstrainSelectedInstOperands, |
| 61622 | /* 174251 */ // GIR_Coverage, 1894, |
| 61623 | /* 174251 */ GIR_EraseRootFromParent_Done, |
| 61624 | /* 174252 */ // Label 3800: @174252 |
| 61625 | /* 174252 */ GIM_Try, /*On fail goto*//*Label 3801*/ GIMT_Encode4(174328), // Rule ID 18002 // |
| 61626 | /* 174257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseAVX), |
| 61627 | /* 174260 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61628 | /* 174263 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61629 | /* 174267 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61630 | /* 174271 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61631 | /* 174275 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61632 | /* 174278 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61633 | /* 174282 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61634 | /* 174286 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61635 | /* 174288 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61636 | /* 174295 */ // (fpextend:{ *:[f64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SDrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 61637 | /* 174295 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61638 | /* 174298 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61639 | /* 174302 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61640 | /* 174307 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61641 | /* 174309 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SDrm), |
| 61642 | /* 174312 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61643 | /* 174314 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61644 | /* 174317 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61645 | /* 174321 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61646 | /* 174326 */ GIR_RootConstrainSelectedInstOperands, |
| 61647 | /* 174327 */ // GIR_Coverage, 18002, |
| 61648 | /* 174327 */ GIR_EraseRootFromParent_Done, |
| 61649 | /* 174328 */ // Label 3801: @174328 |
| 61650 | /* 174328 */ GIM_Try, /*On fail goto*//*Label 3802*/ GIMT_Encode4(174404), // Rule ID 21198 // |
| 61651 | /* 174333 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_OptForSize), |
| 61652 | /* 174336 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61653 | /* 174339 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61654 | /* 174343 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61655 | /* 174347 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61656 | /* 174351 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61657 | /* 174354 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61658 | /* 174358 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61659 | /* 174362 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61660 | /* 174364 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61661 | /* 174371 */ // (fpextend:{ *:[f64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 61662 | /* 174371 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61663 | /* 174374 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61664 | /* 174378 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61665 | /* 174383 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61666 | /* 174385 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SDZrm), |
| 61667 | /* 174388 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61668 | /* 174390 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61669 | /* 174393 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61670 | /* 174397 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61671 | /* 174402 */ GIR_RootConstrainSelectedInstOperands, |
| 61672 | /* 174403 */ // GIR_Coverage, 21198, |
| 61673 | /* 174403 */ GIR_EraseRootFromParent_Done, |
| 61674 | /* 174404 */ // Label 3802: @174404 |
| 61675 | /* 174404 */ GIM_Try, /*On fail goto*//*Label 3803*/ GIMT_Encode4(174480), // Rule ID 21208 // |
| 61676 | /* 174409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_OptForSize), |
| 61677 | /* 174412 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 61678 | /* 174415 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61679 | /* 174419 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61680 | /* 174423 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61681 | /* 174427 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61682 | /* 174430 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61683 | /* 174434 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61684 | /* 174438 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61685 | /* 174440 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61686 | /* 174447 */ // (fpextend:{ *:[f64] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSH2SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 61687 | /* 174447 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61688 | /* 174450 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61689 | /* 174454 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61690 | /* 174459 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61691 | /* 174461 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSH2SDZrm), |
| 61692 | /* 174464 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61693 | /* 174466 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61694 | /* 174469 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61695 | /* 174473 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61696 | /* 174478 */ GIR_RootConstrainSelectedInstOperands, |
| 61697 | /* 174479 */ // GIR_Coverage, 21208, |
| 61698 | /* 174479 */ GIR_EraseRootFromParent_Done, |
| 61699 | /* 174480 */ // Label 3803: @174480 |
| 61700 | /* 174480 */ GIM_Try, /*On fail goto*//*Label 3804*/ GIMT_Encode4(174510), // Rule ID 1892 // |
| 61701 | /* 174485 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 61702 | /* 174488 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61703 | /* 174491 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61704 | /* 174495 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61705 | /* 174499 */ // (fpextend:{ *:[f64] } FR32:{ *:[f32] }:$src) => (CVTSS2SDrr:{ *:[f64] } FR32:{ *:[f32] }:$src) |
| 61706 | /* 174499 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSS2SDrr), |
| 61707 | /* 174504 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61708 | /* 174508 */ GIR_RootConstrainSelectedInstOperands, |
| 61709 | /* 174509 */ // GIR_Coverage, 1892, |
| 61710 | /* 174509 */ GIR_Done, |
| 61711 | /* 174510 */ // Label 3804: @174510 |
| 61712 | /* 174510 */ GIM_Try, /*On fail goto*//*Label 3805*/ GIMT_Encode4(174540), // Rule ID 17727 // |
| 61713 | /* 174515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 61714 | /* 174518 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61715 | /* 174521 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61716 | /* 174525 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61717 | /* 174529 */ // (fpextend:{ *:[f64] } RFP32:{ *:[f32] }:$src) => (COPY_TO_REGCLASS:{ *:[f64] } RFP32:{ *:[f32] }:$src, RFP64:{ *:[i32] }) |
| 61718 | /* 174529 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61719 | /* 174534 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP64RegClassID), |
| 61720 | /* 174539 */ // GIR_Coverage, 17727, |
| 61721 | /* 174539 */ GIR_Done, |
| 61722 | /* 174540 */ // Label 3805: @174540 |
| 61723 | /* 174540 */ GIM_Try, /*On fail goto*//*Label 3806*/ GIMT_Encode4(174585), // Rule ID 18000 // |
| 61724 | /* 174545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61725 | /* 174548 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61726 | /* 174551 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61727 | /* 174555 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61728 | /* 174559 */ // (fpextend:{ *:[f64] } FR32:{ *:[f32] }:$src) => (VCVTSS2SDrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR32:{ *:[f32] }:$src) |
| 61729 | /* 174559 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61730 | /* 174562 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61731 | /* 174566 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61732 | /* 174571 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61733 | /* 174573 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SDrr), |
| 61734 | /* 174576 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61735 | /* 174578 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61736 | /* 174581 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61737 | /* 174583 */ GIR_RootConstrainSelectedInstOperands, |
| 61738 | /* 174584 */ // GIR_Coverage, 18000, |
| 61739 | /* 174584 */ GIR_EraseRootFromParent_Done, |
| 61740 | /* 174585 */ // Label 3806: @174585 |
| 61741 | /* 174585 */ GIM_Try, /*On fail goto*//*Label 3807*/ GIMT_Encode4(174630), // Rule ID 21196 // |
| 61742 | /* 174590 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61743 | /* 174593 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61744 | /* 174596 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61745 | /* 174600 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 61746 | /* 174604 */ // (fpextend:{ *:[f64] } FR32X:{ *:[f32] }:$src) => (VCVTSS2SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR32X:{ *:[f32] }:$src) |
| 61747 | /* 174604 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61748 | /* 174607 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61749 | /* 174611 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61750 | /* 174616 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61751 | /* 174618 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SDZrr), |
| 61752 | /* 174621 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61753 | /* 174623 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61754 | /* 174626 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61755 | /* 174628 */ GIR_RootConstrainSelectedInstOperands, |
| 61756 | /* 174629 */ // GIR_Coverage, 21196, |
| 61757 | /* 174629 */ GIR_EraseRootFromParent_Done, |
| 61758 | /* 174630 */ // Label 3807: @174630 |
| 61759 | /* 174630 */ GIM_Try, /*On fail goto*//*Label 3808*/ GIMT_Encode4(174675), // Rule ID 21206 // |
| 61760 | /* 174635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61761 | /* 174638 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 61762 | /* 174641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61763 | /* 174645 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 61764 | /* 174649 */ // (fpextend:{ *:[f64] } FR16X:{ *:[f16] }:$src) => (VCVTSH2SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR16X:{ *:[f16] }:$src) |
| 61765 | /* 174649 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61766 | /* 174652 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61767 | /* 174656 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61768 | /* 174661 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61769 | /* 174663 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSH2SDZrr), |
| 61770 | /* 174666 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61771 | /* 174668 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61772 | /* 174671 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61773 | /* 174673 */ GIR_RootConstrainSelectedInstOperands, |
| 61774 | /* 174674 */ // GIR_Coverage, 21206, |
| 61775 | /* 174674 */ GIR_EraseRootFromParent_Done, |
| 61776 | /* 174675 */ // Label 3808: @174675 |
| 61777 | /* 174675 */ GIM_Reject, |
| 61778 | /* 174676 */ // Label 3791: @174676 |
| 61779 | /* 174676 */ GIM_Try, /*On fail goto*//*Label 3809*/ GIMT_Encode4(174706), // Rule ID 17729 // |
| 61780 | /* 174681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 61781 | /* 174684 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61782 | /* 174687 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61783 | /* 174691 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61784 | /* 174695 */ // (fpextend:{ *:[f80] } RFP32:{ *:[f32] }:$src) => (COPY_TO_REGCLASS:{ *:[f80] } RFP32:{ *:[f32] }:$src, RFP80:{ *:[i32] }) |
| 61785 | /* 174695 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61786 | /* 174700 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP80RegClassID), |
| 61787 | /* 174705 */ // GIR_Coverage, 17729, |
| 61788 | /* 174705 */ GIR_Done, |
| 61789 | /* 174706 */ // Label 3809: @174706 |
| 61790 | /* 174706 */ GIM_Try, /*On fail goto*//*Label 3810*/ GIMT_Encode4(174736), // Rule ID 17731 // |
| 61791 | /* 174711 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 61792 | /* 174714 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61793 | /* 174717 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61794 | /* 174721 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61795 | /* 174725 */ // (fpextend:{ *:[f80] } RFP64:{ *:[f64] }:$src) => (COPY_TO_REGCLASS:{ *:[f80] } RFP64:{ *:[f64] }:$src, RFP80:{ *:[i32] }) |
| 61796 | /* 174725 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61797 | /* 174730 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP80RegClassID), |
| 61798 | /* 174735 */ // GIR_Coverage, 17731, |
| 61799 | /* 174735 */ GIR_Done, |
| 61800 | /* 174736 */ // Label 3810: @174736 |
| 61801 | /* 174736 */ GIM_Reject, |
| 61802 | /* 174737 */ // Label 3792: @174737 |
| 61803 | /* 174737 */ GIM_Try, /*On fail goto*//*Label 3811*/ GIMT_Encode4(174800), |
| 61804 | /* 174742 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 61805 | /* 174745 */ GIM_Try, /*On fail goto*//*Label 3812*/ GIMT_Encode4(174772), // Rule ID 1935 // |
| 61806 | /* 174750 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 61807 | /* 174753 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61808 | /* 174757 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61809 | /* 174761 */ // (fpextend:{ *:[v4f64] } VR128:{ *:[v4f32] }:$src) => (VCVTPS2PDYrr:{ *:[v4f64] } VR128:{ *:[v4f32] }:$src) |
| 61810 | /* 174761 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2PDYrr), |
| 61811 | /* 174766 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61812 | /* 174770 */ GIR_RootConstrainSelectedInstOperands, |
| 61813 | /* 174771 */ // GIR_Coverage, 1935, |
| 61814 | /* 174771 */ GIR_Done, |
| 61815 | /* 174772 */ // Label 3812: @174772 |
| 61816 | /* 174772 */ GIM_Try, /*On fail goto*//*Label 3813*/ GIMT_Encode4(174799), // Rule ID 10575 // |
| 61817 | /* 174777 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 61818 | /* 174780 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61819 | /* 174784 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61820 | /* 174788 */ // (fpextend:{ *:[v4f64] } VR128X:{ *:[v4f32] }:$src) => (VCVTPS2PDZ256rr:{ *:[v4f64] } VR128X:{ *:[v4f32] }:$src) |
| 61821 | /* 174788 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2PDZ256rr), |
| 61822 | /* 174793 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61823 | /* 174797 */ GIR_RootConstrainSelectedInstOperands, |
| 61824 | /* 174798 */ // GIR_Coverage, 10575, |
| 61825 | /* 174798 */ GIR_Done, |
| 61826 | /* 174799 */ // Label 3813: @174799 |
| 61827 | /* 174799 */ GIM_Reject, |
| 61828 | /* 174800 */ // Label 3811: @174800 |
| 61829 | /* 174800 */ GIM_Reject, |
| 61830 | /* 174801 */ // Label 3793: @174801 |
| 61831 | /* 174801 */ GIM_Try, /*On fail goto*//*Label 3814*/ GIMT_Encode4(174831), // Rule ID 10638 // |
| 61832 | /* 174806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 61833 | /* 174809 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 61834 | /* 174812 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61835 | /* 174816 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61836 | /* 174820 */ // (fpextend:{ *:[v8f32] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2PSXZ256rr:{ *:[v8f32] } VR128X:{ *:[v8f16] }:$src) |
| 61837 | /* 174820 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2PSXZ256rr), |
| 61838 | /* 174825 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61839 | /* 174829 */ GIR_RootConstrainSelectedInstOperands, |
| 61840 | /* 174830 */ // GIR_Coverage, 10638, |
| 61841 | /* 174830 */ GIR_Done, |
| 61842 | /* 174831 */ // Label 3814: @174831 |
| 61843 | /* 174831 */ GIM_Reject, |
| 61844 | /* 174832 */ // Label 3794: @174832 |
| 61845 | /* 174832 */ GIM_Try, /*On fail goto*//*Label 3815*/ GIMT_Encode4(174862), // Rule ID 10550 // |
| 61846 | /* 174837 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61847 | /* 174840 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 61848 | /* 174843 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61849 | /* 174847 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61850 | /* 174851 */ // (fpextend:{ *:[v8f64] } VR256X:{ *:[v8f32] }:$src) => (VCVTPS2PDZrr:{ *:[v8f64] } VR256X:{ *:[v8f32] }:$src) |
| 61851 | /* 174851 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2PDZrr), |
| 61852 | /* 174856 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61853 | /* 174860 */ GIR_RootConstrainSelectedInstOperands, |
| 61854 | /* 174861 */ // GIR_Coverage, 10550, |
| 61855 | /* 174861 */ GIR_Done, |
| 61856 | /* 174862 */ // Label 3815: @174862 |
| 61857 | /* 174862 */ GIM_Try, /*On fail goto*//*Label 3816*/ GIMT_Encode4(174892), // Rule ID 10664 // |
| 61858 | /* 174867 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61859 | /* 174870 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 61860 | /* 174873 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61861 | /* 174877 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61862 | /* 174881 */ // (fpextend:{ *:[v8f64] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2PDZrr:{ *:[v8f64] } VR128X:{ *:[v8f16] }:$src) |
| 61863 | /* 174881 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2PDZrr), |
| 61864 | /* 174886 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61865 | /* 174890 */ GIR_RootConstrainSelectedInstOperands, |
| 61866 | /* 174891 */ // GIR_Coverage, 10664, |
| 61867 | /* 174891 */ GIR_Done, |
| 61868 | /* 174892 */ // Label 3816: @174892 |
| 61869 | /* 174892 */ GIM_Reject, |
| 61870 | /* 174893 */ // Label 3795: @174893 |
| 61871 | /* 174893 */ GIM_Try, /*On fail goto*//*Label 3817*/ GIMT_Encode4(174923), // Rule ID 10613 // |
| 61872 | /* 174898 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61873 | /* 174901 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 61874 | /* 174904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61875 | /* 174908 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61876 | /* 174912 */ // (fpextend:{ *:[v16f32] } VR256X:{ *:[v16f16] }:$src) => (VCVTPH2PSXZrr:{ *:[v16f32] } VR256X:{ *:[v16f16] }:$src) |
| 61877 | /* 174912 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2PSXZrr), |
| 61878 | /* 174917 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61879 | /* 174921 */ GIR_RootConstrainSelectedInstOperands, |
| 61880 | /* 174922 */ // GIR_Coverage, 10613, |
| 61881 | /* 174922 */ GIR_Done, |
| 61882 | /* 174923 */ // Label 3817: @174923 |
| 61883 | /* 174923 */ GIM_Reject, |
| 61884 | /* 174924 */ // Label 3796: @174924 |
| 61885 | /* 174924 */ GIM_Reject, |
| 61886 | /* 174925 */ // Label 48: @174925 |
| 61887 | /* 174925 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 3821*/ GIMT_Encode4(175310), |
| 61888 | /* 174936 */ /*GILLT_s16*//*Label 3818*/ GIMT_Encode4(174948), |
| 61889 | /* 174940 */ /*GILLT_s32*//*Label 3819*/ GIMT_Encode4(175039), |
| 61890 | /* 174944 */ /*GILLT_s64*//*Label 3820*/ GIMT_Encode4(175279), |
| 61891 | /* 174948 */ // Label 3818: @174948 |
| 61892 | /* 174948 */ GIM_Try, /*On fail goto*//*Label 3822*/ GIMT_Encode4(174993), // Rule ID 21210 // |
| 61893 | /* 174953 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61894 | /* 174956 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61895 | /* 174959 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 61896 | /* 174963 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 61897 | /* 174967 */ // (fpround:{ *:[f16] } FR32X:{ *:[f32] }:$src) => (VCVTSS2SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), FR32X:{ *:[f32] }:$src) |
| 61898 | /* 174967 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 61899 | /* 174970 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61900 | /* 174974 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61901 | /* 174979 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61902 | /* 174981 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SHZrr), |
| 61903 | /* 174984 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61904 | /* 174986 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61905 | /* 174989 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61906 | /* 174991 */ GIR_RootConstrainSelectedInstOperands, |
| 61907 | /* 174992 */ // GIR_Coverage, 21210, |
| 61908 | /* 174992 */ GIR_EraseRootFromParent_Done, |
| 61909 | /* 174993 */ // Label 3822: @174993 |
| 61910 | /* 174993 */ GIM_Try, /*On fail goto*//*Label 3823*/ GIMT_Encode4(175038), // Rule ID 21212 // |
| 61911 | /* 174998 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61912 | /* 175001 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61913 | /* 175004 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 61914 | /* 175008 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61915 | /* 175012 */ // (fpround:{ *:[f16] } FR64X:{ *:[f64] }:$src) => (VCVTSD2SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), FR64X:{ *:[f64] }:$src) |
| 61916 | /* 175012 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 61917 | /* 175015 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61918 | /* 175019 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61919 | /* 175024 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61920 | /* 175026 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SHZrr), |
| 61921 | /* 175029 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61922 | /* 175031 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61923 | /* 175034 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61924 | /* 175036 */ GIR_RootConstrainSelectedInstOperands, |
| 61925 | /* 175037 */ // GIR_Coverage, 21212, |
| 61926 | /* 175037 */ GIR_EraseRootFromParent_Done, |
| 61927 | /* 175038 */ // Label 3823: @175038 |
| 61928 | /* 175038 */ GIM_Reject, |
| 61929 | /* 175039 */ // Label 3819: @175039 |
| 61930 | /* 175039 */ GIM_Try, /*On fail goto*//*Label 3824*/ GIMT_Encode4(175098), // Rule ID 1882 // |
| 61931 | /* 175044 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE2), |
| 61932 | /* 175047 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61933 | /* 175050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61934 | /* 175054 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61935 | /* 175058 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61936 | /* 175062 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61937 | /* 175065 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61938 | /* 175069 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61939 | /* 175073 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61940 | /* 175075 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61941 | /* 175082 */ // (fpround:{ *:[f32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSD2SSrm:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 61942 | /* 175082 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSD2SSrm), |
| 61943 | /* 175085 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61944 | /* 175087 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61945 | /* 175091 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61946 | /* 175096 */ GIR_RootConstrainSelectedInstOperands, |
| 61947 | /* 175097 */ // GIR_Coverage, 1882, |
| 61948 | /* 175097 */ GIR_EraseRootFromParent_Done, |
| 61949 | /* 175098 */ // Label 3824: @175098 |
| 61950 | /* 175098 */ GIM_Try, /*On fail goto*//*Label 3825*/ GIMT_Encode4(175128), // Rule ID 1880 // |
| 61951 | /* 175103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 61952 | /* 175106 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61953 | /* 175109 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61954 | /* 175113 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61955 | /* 175117 */ // (fpround:{ *:[f32] } FR64:{ *:[f64] }:$src) => (CVTSD2SSrr:{ *:[f32] } FR64:{ *:[f64] }:$src) |
| 61956 | /* 175117 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSD2SSrr), |
| 61957 | /* 175122 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61958 | /* 175126 */ GIR_RootConstrainSelectedInstOperands, |
| 61959 | /* 175127 */ // GIR_Coverage, 1880, |
| 61960 | /* 175127 */ GIR_Done, |
| 61961 | /* 175128 */ // Label 3825: @175128 |
| 61962 | /* 175128 */ GIM_Try, /*On fail goto*//*Label 3826*/ GIMT_Encode4(175158), // Rule ID 17733 // |
| 61963 | /* 175133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 61964 | /* 175136 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61965 | /* 175139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61966 | /* 175143 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61967 | /* 175147 */ // (fpround:{ *:[f32] } RFP64:{ *:[f64] }:$src) => (COPY_TO_REGCLASS:{ *:[f32] } RFP64:{ *:[f64] }:$src, RFP32:{ *:[i32] }) |
| 61968 | /* 175147 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61969 | /* 175152 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP32RegClassID), |
| 61970 | /* 175157 */ // GIR_Coverage, 17733, |
| 61971 | /* 175157 */ GIR_Done, |
| 61972 | /* 175158 */ // Label 3826: @175158 |
| 61973 | /* 175158 */ GIM_Try, /*On fail goto*//*Label 3827*/ GIMT_Encode4(175188), // Rule ID 17735 // |
| 61974 | /* 175163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 61975 | /* 175166 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 61976 | /* 175169 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61977 | /* 175173 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61978 | /* 175177 */ // (fpround:{ *:[f32] } RFP80:{ *:[f80] }:$src) => (COPY_TO_REGCLASS:{ *:[f32] } RFP80:{ *:[f80] }:$src, RFP32:{ *:[i32] }) |
| 61979 | /* 175177 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61980 | /* 175182 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP32RegClassID), |
| 61981 | /* 175187 */ // GIR_Coverage, 17735, |
| 61982 | /* 175187 */ GIR_Done, |
| 61983 | /* 175188 */ // Label 3827: @175188 |
| 61984 | /* 175188 */ GIM_Try, /*On fail goto*//*Label 3828*/ GIMT_Encode4(175233), // Rule ID 17998 // |
| 61985 | /* 175193 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61986 | /* 175196 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61987 | /* 175199 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61988 | /* 175203 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61989 | /* 175207 */ // (fpround:{ *:[f32] } FR64:{ *:[f64] }:$src) => (VCVTSD2SSrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR64:{ *:[f64] }:$src) |
| 61990 | /* 175207 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 61991 | /* 175210 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61992 | /* 175214 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 61993 | /* 175219 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61994 | /* 175221 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SSrr), |
| 61995 | /* 175224 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61996 | /* 175226 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61997 | /* 175229 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61998 | /* 175231 */ GIR_RootConstrainSelectedInstOperands, |
| 61999 | /* 175232 */ // GIR_Coverage, 17998, |
| 62000 | /* 175232 */ GIR_EraseRootFromParent_Done, |
| 62001 | /* 175233 */ // Label 3828: @175233 |
| 62002 | /* 175233 */ GIM_Try, /*On fail goto*//*Label 3829*/ GIMT_Encode4(175278), // Rule ID 21200 // |
| 62003 | /* 175238 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62004 | /* 175241 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62005 | /* 175244 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62006 | /* 175248 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62007 | /* 175252 */ // (fpround:{ *:[f32] } FR64X:{ *:[f64] }:$src) => (VCVTSD2SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR64X:{ *:[f64] }:$src) |
| 62008 | /* 175252 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62009 | /* 175255 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62010 | /* 175259 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 62011 | /* 175264 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62012 | /* 175266 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SSZrr), |
| 62013 | /* 175269 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62014 | /* 175271 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62015 | /* 175274 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62016 | /* 175276 */ GIR_RootConstrainSelectedInstOperands, |
| 62017 | /* 175277 */ // GIR_Coverage, 21200, |
| 62018 | /* 175277 */ GIR_EraseRootFromParent_Done, |
| 62019 | /* 175278 */ // Label 3829: @175278 |
| 62020 | /* 175278 */ GIM_Reject, |
| 62021 | /* 175279 */ // Label 3820: @175279 |
| 62022 | /* 175279 */ GIM_Try, /*On fail goto*//*Label 3830*/ GIMT_Encode4(175309), // Rule ID 17737 // |
| 62023 | /* 175284 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 62024 | /* 175287 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 62025 | /* 175290 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 62026 | /* 175294 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 62027 | /* 175298 */ // (fpround:{ *:[f64] } RFP80:{ *:[f80] }:$src) => (COPY_TO_REGCLASS:{ *:[f64] } RFP80:{ *:[f80] }:$src, RFP64:{ *:[i32] }) |
| 62028 | /* 175298 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 62029 | /* 175303 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP64RegClassID), |
| 62030 | /* 175308 */ // GIR_Coverage, 17737, |
| 62031 | /* 175308 */ GIR_Done, |
| 62032 | /* 175309 */ // Label 3830: @175309 |
| 62033 | /* 175309 */ GIM_Reject, |
| 62034 | /* 175310 */ // Label 3821: @175310 |
| 62035 | /* 175310 */ GIM_Reject, |
| 62036 | /* 175311 */ // Label 49: @175311 |
| 62037 | /* 175311 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(11), /*)*//*default:*//*Label 3834*/ GIMT_Encode4(176691), |
| 62038 | /* 175322 */ /*GILLT_s32*//*Label 3831*/ GIMT_Encode4(175354), |
| 62039 | /* 175326 */ /*GILLT_s64*//*Label 3832*/ GIMT_Encode4(175978), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 62040 | /* 175350 */ /*GILLT_v4s32*//*Label 3833*/ GIMT_Encode4(176602), |
| 62041 | /* 175354 */ // Label 3831: @175354 |
| 62042 | /* 175354 */ GIM_Try, /*On fail goto*//*Label 3835*/ GIMT_Encode4(175413), // Rule ID 1742 // |
| 62043 | /* 175359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62044 | /* 175362 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62045 | /* 175365 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62046 | /* 175369 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62047 | /* 175373 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62048 | /* 175377 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62049 | /* 175380 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62050 | /* 175384 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62051 | /* 175388 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62052 | /* 175390 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62053 | /* 175397 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62054 | /* 175397 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SIrm), |
| 62055 | /* 175400 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62056 | /* 175402 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62057 | /* 175406 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62058 | /* 175411 */ GIR_RootConstrainSelectedInstOperands, |
| 62059 | /* 175412 */ // GIR_Coverage, 1742, |
| 62060 | /* 175412 */ GIR_EraseRootFromParent_Done, |
| 62061 | /* 175413 */ // Label 3835: @175413 |
| 62062 | /* 175413 */ GIM_Try, /*On fail goto*//*Label 3836*/ GIMT_Encode4(175472), // Rule ID 1750 // |
| 62063 | /* 175418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62064 | /* 175421 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62065 | /* 175424 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62066 | /* 175428 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62067 | /* 175432 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62068 | /* 175436 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62069 | /* 175439 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62070 | /* 175443 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62071 | /* 175447 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62072 | /* 175449 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62073 | /* 175456 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62074 | /* 175456 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SIrm), |
| 62075 | /* 175459 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62076 | /* 175461 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62077 | /* 175465 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62078 | /* 175470 */ GIR_RootConstrainSelectedInstOperands, |
| 62079 | /* 175471 */ // GIR_Coverage, 1750, |
| 62080 | /* 175471 */ GIR_EraseRootFromParent_Done, |
| 62081 | /* 175472 */ // Label 3836: @175472 |
| 62082 | /* 175472 */ GIM_Try, /*On fail goto*//*Label 3837*/ GIMT_Encode4(175531), // Rule ID 1766 // |
| 62083 | /* 175477 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62084 | /* 175480 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62085 | /* 175483 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62086 | /* 175487 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62087 | /* 175491 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62088 | /* 175495 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62089 | /* 175498 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62090 | /* 175502 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62091 | /* 175506 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62092 | /* 175508 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62093 | /* 175515 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTTSS2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62094 | /* 175515 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTTSS2SIrm), |
| 62095 | /* 175518 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62096 | /* 175520 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62097 | /* 175524 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62098 | /* 175529 */ GIR_RootConstrainSelectedInstOperands, |
| 62099 | /* 175530 */ // GIR_Coverage, 1766, |
| 62100 | /* 175530 */ GIR_EraseRootFromParent_Done, |
| 62101 | /* 175531 */ // Label 3837: @175531 |
| 62102 | /* 175531 */ GIM_Try, /*On fail goto*//*Label 3838*/ GIMT_Encode4(175590), // Rule ID 1774 // |
| 62103 | /* 175536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 62104 | /* 175539 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62105 | /* 175542 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62106 | /* 175546 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62107 | /* 175550 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62108 | /* 175554 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62109 | /* 175557 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62110 | /* 175561 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62111 | /* 175565 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62112 | /* 175567 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62113 | /* 175574 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTTSD2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62114 | /* 175574 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTTSD2SIrm), |
| 62115 | /* 175577 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62116 | /* 175579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62117 | /* 175583 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62118 | /* 175588 */ GIR_RootConstrainSelectedInstOperands, |
| 62119 | /* 175589 */ // GIR_Coverage, 1774, |
| 62120 | /* 175589 */ GIR_EraseRootFromParent_Done, |
| 62121 | /* 175590 */ // Label 3838: @175590 |
| 62122 | /* 175590 */ GIM_Try, /*On fail goto*//*Label 3839*/ GIMT_Encode4(175649), // Rule ID 10363 // |
| 62123 | /* 175595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62124 | /* 175598 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62125 | /* 175601 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62126 | /* 175605 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62127 | /* 175609 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62128 | /* 175613 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62129 | /* 175616 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62130 | /* 175620 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62131 | /* 175624 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62132 | /* 175626 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62133 | /* 175633 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62134 | /* 175633 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SIZrm), |
| 62135 | /* 175636 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62136 | /* 175638 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62137 | /* 175642 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62138 | /* 175647 */ GIR_RootConstrainSelectedInstOperands, |
| 62139 | /* 175648 */ // GIR_Coverage, 10363, |
| 62140 | /* 175648 */ GIR_EraseRootFromParent_Done, |
| 62141 | /* 175649 */ // Label 3839: @175649 |
| 62142 | /* 175649 */ GIM_Try, /*On fail goto*//*Label 3840*/ GIMT_Encode4(175708), // Rule ID 10381 // |
| 62143 | /* 175654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62144 | /* 175657 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62145 | /* 175660 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62146 | /* 175664 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62147 | /* 175668 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62148 | /* 175672 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62149 | /* 175675 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62150 | /* 175679 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62151 | /* 175683 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62152 | /* 175685 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62153 | /* 175692 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62154 | /* 175692 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SIZrm), |
| 62155 | /* 175695 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62156 | /* 175697 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62157 | /* 175701 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62158 | /* 175706 */ GIR_RootConstrainSelectedInstOperands, |
| 62159 | /* 175707 */ // GIR_Coverage, 10381, |
| 62160 | /* 175707 */ GIR_EraseRootFromParent_Done, |
| 62161 | /* 175708 */ // Label 3840: @175708 |
| 62162 | /* 175708 */ GIM_Try, /*On fail goto*//*Label 3841*/ GIMT_Encode4(175767), // Rule ID 15171 // |
| 62163 | /* 175713 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62164 | /* 175716 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62165 | /* 175719 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62166 | /* 175723 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62167 | /* 175727 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62168 | /* 175731 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62169 | /* 175734 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62170 | /* 175738 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62171 | /* 175742 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62172 | /* 175744 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62173 | /* 175751 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62174 | /* 175751 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SIZrm), |
| 62175 | /* 175754 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62176 | /* 175756 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62177 | /* 175760 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62178 | /* 175765 */ GIR_RootConstrainSelectedInstOperands, |
| 62179 | /* 175766 */ // GIR_Coverage, 15171, |
| 62180 | /* 175766 */ GIR_EraseRootFromParent_Done, |
| 62181 | /* 175767 */ // Label 3841: @175767 |
| 62182 | /* 175767 */ GIM_Try, /*On fail goto*//*Label 3842*/ GIMT_Encode4(175797), // Rule ID 1740 // |
| 62183 | /* 175772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62184 | /* 175775 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62185 | /* 175778 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62186 | /* 175782 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62187 | /* 175786 */ // (fp_to_sint:{ *:[i32] } FR32:{ *:[f32] }:$src) => (VCVTTSS2SIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 62188 | /* 175786 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SIrr), |
| 62189 | /* 175791 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62190 | /* 175795 */ GIR_RootConstrainSelectedInstOperands, |
| 62191 | /* 175796 */ // GIR_Coverage, 1740, |
| 62192 | /* 175796 */ GIR_Done, |
| 62193 | /* 175797 */ // Label 3842: @175797 |
| 62194 | /* 175797 */ GIM_Try, /*On fail goto*//*Label 3843*/ GIMT_Encode4(175827), // Rule ID 1748 // |
| 62195 | /* 175802 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62196 | /* 175805 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62197 | /* 175808 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62198 | /* 175812 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62199 | /* 175816 */ // (fp_to_sint:{ *:[i32] } FR64:{ *:[f64] }:$src) => (VCVTTSD2SIrr:{ *:[i32] } FR64:{ *:[f64] }:$src) |
| 62200 | /* 175816 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SIrr), |
| 62201 | /* 175821 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62202 | /* 175825 */ GIR_RootConstrainSelectedInstOperands, |
| 62203 | /* 175826 */ // GIR_Coverage, 1748, |
| 62204 | /* 175826 */ GIR_Done, |
| 62205 | /* 175827 */ // Label 3843: @175827 |
| 62206 | /* 175827 */ GIM_Try, /*On fail goto*//*Label 3844*/ GIMT_Encode4(175857), // Rule ID 1764 // |
| 62207 | /* 175832 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62208 | /* 175835 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62209 | /* 175838 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62210 | /* 175842 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62211 | /* 175846 */ // (fp_to_sint:{ *:[i32] } FR32:{ *:[f32] }:$src) => (CVTTSS2SIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 62212 | /* 175846 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTTSS2SIrr), |
| 62213 | /* 175851 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62214 | /* 175855 */ GIR_RootConstrainSelectedInstOperands, |
| 62215 | /* 175856 */ // GIR_Coverage, 1764, |
| 62216 | /* 175856 */ GIR_Done, |
| 62217 | /* 175857 */ // Label 3844: @175857 |
| 62218 | /* 175857 */ GIM_Try, /*On fail goto*//*Label 3845*/ GIMT_Encode4(175887), // Rule ID 1772 // |
| 62219 | /* 175862 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 62220 | /* 175865 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62221 | /* 175868 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62222 | /* 175872 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62223 | /* 175876 */ // (fp_to_sint:{ *:[i32] } FR64:{ *:[f64] }:$src) => (CVTTSD2SIrr:{ *:[i32] } FR64:{ *:[f64] }:$src) |
| 62224 | /* 175876 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTTSD2SIrr), |
| 62225 | /* 175881 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62226 | /* 175885 */ GIR_RootConstrainSelectedInstOperands, |
| 62227 | /* 175886 */ // GIR_Coverage, 1772, |
| 62228 | /* 175886 */ GIR_Done, |
| 62229 | /* 175887 */ // Label 3845: @175887 |
| 62230 | /* 175887 */ GIM_Try, /*On fail goto*//*Label 3846*/ GIMT_Encode4(175917), // Rule ID 10361 // |
| 62231 | /* 175892 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62232 | /* 175895 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62233 | /* 175898 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62234 | /* 175902 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62235 | /* 175906 */ // (fp_to_sint:{ *:[i32] } FR32X:{ *:[f32] }:$src) => (VCVTTSS2SIZrr:{ *:[i32] } FR32X:{ *:[f32] }:$src) |
| 62236 | /* 175906 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SIZrr), |
| 62237 | /* 175911 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62238 | /* 175915 */ GIR_RootConstrainSelectedInstOperands, |
| 62239 | /* 175916 */ // GIR_Coverage, 10361, |
| 62240 | /* 175916 */ GIR_Done, |
| 62241 | /* 175917 */ // Label 3846: @175917 |
| 62242 | /* 175917 */ GIM_Try, /*On fail goto*//*Label 3847*/ GIMT_Encode4(175947), // Rule ID 10379 // |
| 62243 | /* 175922 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62244 | /* 175925 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62245 | /* 175928 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62246 | /* 175932 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62247 | /* 175936 */ // (fp_to_sint:{ *:[i32] } FR64X:{ *:[f64] }:$src) => (VCVTTSD2SIZrr:{ *:[i32] } FR64X:{ *:[f64] }:$src) |
| 62248 | /* 175936 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SIZrr), |
| 62249 | /* 175941 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62250 | /* 175945 */ GIR_RootConstrainSelectedInstOperands, |
| 62251 | /* 175946 */ // GIR_Coverage, 10379, |
| 62252 | /* 175946 */ GIR_Done, |
| 62253 | /* 175947 */ // Label 3847: @175947 |
| 62254 | /* 175947 */ GIM_Try, /*On fail goto*//*Label 3848*/ GIMT_Encode4(175977), // Rule ID 15169 // |
| 62255 | /* 175952 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62256 | /* 175955 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62257 | /* 175958 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62258 | /* 175962 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62259 | /* 175966 */ // (fp_to_sint:{ *:[i32] } FR16X:{ *:[f16] }:$src) => (VCVTTSH2SIZrr:{ *:[i32] } FR16X:{ *:[f16] }:$src) |
| 62260 | /* 175966 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SIZrr), |
| 62261 | /* 175971 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62262 | /* 175975 */ GIR_RootConstrainSelectedInstOperands, |
| 62263 | /* 175976 */ // GIR_Coverage, 15169, |
| 62264 | /* 175976 */ GIR_Done, |
| 62265 | /* 175977 */ // Label 3848: @175977 |
| 62266 | /* 175977 */ GIM_Reject, |
| 62267 | /* 175978 */ // Label 3832: @175978 |
| 62268 | /* 175978 */ GIM_Try, /*On fail goto*//*Label 3849*/ GIMT_Encode4(176037), // Rule ID 1746 // |
| 62269 | /* 175983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62270 | /* 175986 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62271 | /* 175989 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62272 | /* 175993 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62273 | /* 175997 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62274 | /* 176001 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62275 | /* 176004 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62276 | /* 176008 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62277 | /* 176012 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62278 | /* 176014 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62279 | /* 176021 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62280 | /* 176021 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SI64rm), |
| 62281 | /* 176024 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62282 | /* 176026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62283 | /* 176030 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62284 | /* 176035 */ GIR_RootConstrainSelectedInstOperands, |
| 62285 | /* 176036 */ // GIR_Coverage, 1746, |
| 62286 | /* 176036 */ GIR_EraseRootFromParent_Done, |
| 62287 | /* 176037 */ // Label 3849: @176037 |
| 62288 | /* 176037 */ GIM_Try, /*On fail goto*//*Label 3850*/ GIMT_Encode4(176096), // Rule ID 1754 // |
| 62289 | /* 176042 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62290 | /* 176045 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62291 | /* 176048 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62292 | /* 176052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62293 | /* 176056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62294 | /* 176060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62295 | /* 176063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62296 | /* 176067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62297 | /* 176071 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62298 | /* 176073 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62299 | /* 176080 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62300 | /* 176080 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SI64rm), |
| 62301 | /* 176083 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62302 | /* 176085 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62303 | /* 176089 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62304 | /* 176094 */ GIR_RootConstrainSelectedInstOperands, |
| 62305 | /* 176095 */ // GIR_Coverage, 1754, |
| 62306 | /* 176095 */ GIR_EraseRootFromParent_Done, |
| 62307 | /* 176096 */ // Label 3850: @176096 |
| 62308 | /* 176096 */ GIM_Try, /*On fail goto*//*Label 3851*/ GIMT_Encode4(176155), // Rule ID 1770 // |
| 62309 | /* 176101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62310 | /* 176104 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62311 | /* 176107 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62312 | /* 176111 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62313 | /* 176115 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62314 | /* 176119 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62315 | /* 176122 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62316 | /* 176126 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62317 | /* 176130 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62318 | /* 176132 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62319 | /* 176139 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62320 | /* 176139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTTSS2SI64rm), |
| 62321 | /* 176142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62322 | /* 176144 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62323 | /* 176148 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62324 | /* 176153 */ GIR_RootConstrainSelectedInstOperands, |
| 62325 | /* 176154 */ // GIR_Coverage, 1770, |
| 62326 | /* 176154 */ GIR_EraseRootFromParent_Done, |
| 62327 | /* 176155 */ // Label 3851: @176155 |
| 62328 | /* 176155 */ GIM_Try, /*On fail goto*//*Label 3852*/ GIMT_Encode4(176214), // Rule ID 1778 // |
| 62329 | /* 176160 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 62330 | /* 176163 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62331 | /* 176166 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62332 | /* 176170 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62333 | /* 176174 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62334 | /* 176178 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62335 | /* 176181 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62336 | /* 176185 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62337 | /* 176189 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62338 | /* 176191 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62339 | /* 176198 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62340 | /* 176198 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTTSD2SI64rm), |
| 62341 | /* 176201 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62342 | /* 176203 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62343 | /* 176207 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62344 | /* 176212 */ GIR_RootConstrainSelectedInstOperands, |
| 62345 | /* 176213 */ // GIR_Coverage, 1778, |
| 62346 | /* 176213 */ GIR_EraseRootFromParent_Done, |
| 62347 | /* 176214 */ // Label 3852: @176214 |
| 62348 | /* 176214 */ GIM_Try, /*On fail goto*//*Label 3853*/ GIMT_Encode4(176273), // Rule ID 10372 // |
| 62349 | /* 176219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62350 | /* 176222 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62351 | /* 176225 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62352 | /* 176229 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62353 | /* 176233 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62354 | /* 176237 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62355 | /* 176240 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62356 | /* 176244 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62357 | /* 176248 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62358 | /* 176250 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62359 | /* 176257 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62360 | /* 176257 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SI64Zrm), |
| 62361 | /* 176260 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62362 | /* 176262 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62363 | /* 176266 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62364 | /* 176271 */ GIR_RootConstrainSelectedInstOperands, |
| 62365 | /* 176272 */ // GIR_Coverage, 10372, |
| 62366 | /* 176272 */ GIR_EraseRootFromParent_Done, |
| 62367 | /* 176273 */ // Label 3853: @176273 |
| 62368 | /* 176273 */ GIM_Try, /*On fail goto*//*Label 3854*/ GIMT_Encode4(176332), // Rule ID 10390 // |
| 62369 | /* 176278 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62370 | /* 176281 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62371 | /* 176284 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62372 | /* 176288 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62373 | /* 176292 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62374 | /* 176296 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62375 | /* 176299 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62376 | /* 176303 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62377 | /* 176307 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62378 | /* 176309 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62379 | /* 176316 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62380 | /* 176316 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SI64Zrm), |
| 62381 | /* 176319 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62382 | /* 176321 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62383 | /* 176325 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62384 | /* 176330 */ GIR_RootConstrainSelectedInstOperands, |
| 62385 | /* 176331 */ // GIR_Coverage, 10390, |
| 62386 | /* 176331 */ GIR_EraseRootFromParent_Done, |
| 62387 | /* 176332 */ // Label 3854: @176332 |
| 62388 | /* 176332 */ GIM_Try, /*On fail goto*//*Label 3855*/ GIMT_Encode4(176391), // Rule ID 15180 // |
| 62389 | /* 176337 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62390 | /* 176340 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62391 | /* 176343 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62392 | /* 176347 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62393 | /* 176351 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62394 | /* 176355 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62395 | /* 176358 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62396 | /* 176362 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62397 | /* 176366 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62398 | /* 176368 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62399 | /* 176375 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62400 | /* 176375 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrm), |
| 62401 | /* 176378 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62402 | /* 176380 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62403 | /* 176384 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62404 | /* 176389 */ GIR_RootConstrainSelectedInstOperands, |
| 62405 | /* 176390 */ // GIR_Coverage, 15180, |
| 62406 | /* 176390 */ GIR_EraseRootFromParent_Done, |
| 62407 | /* 176391 */ // Label 3855: @176391 |
| 62408 | /* 176391 */ GIM_Try, /*On fail goto*//*Label 3856*/ GIMT_Encode4(176421), // Rule ID 1744 // |
| 62409 | /* 176396 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62410 | /* 176399 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62411 | /* 176402 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62412 | /* 176406 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62413 | /* 176410 */ // (fp_to_sint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (VCVTTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 62414 | /* 176410 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SI64rr), |
| 62415 | /* 176415 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62416 | /* 176419 */ GIR_RootConstrainSelectedInstOperands, |
| 62417 | /* 176420 */ // GIR_Coverage, 1744, |
| 62418 | /* 176420 */ GIR_Done, |
| 62419 | /* 176421 */ // Label 3856: @176421 |
| 62420 | /* 176421 */ GIM_Try, /*On fail goto*//*Label 3857*/ GIMT_Encode4(176451), // Rule ID 1752 // |
| 62421 | /* 176426 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62422 | /* 176429 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62423 | /* 176432 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62424 | /* 176436 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62425 | /* 176440 */ // (fp_to_sint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (VCVTTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 62426 | /* 176440 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SI64rr), |
| 62427 | /* 176445 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62428 | /* 176449 */ GIR_RootConstrainSelectedInstOperands, |
| 62429 | /* 176450 */ // GIR_Coverage, 1752, |
| 62430 | /* 176450 */ GIR_Done, |
| 62431 | /* 176451 */ // Label 3857: @176451 |
| 62432 | /* 176451 */ GIM_Try, /*On fail goto*//*Label 3858*/ GIMT_Encode4(176481), // Rule ID 1768 // |
| 62433 | /* 176456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62434 | /* 176459 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62435 | /* 176462 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62436 | /* 176466 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62437 | /* 176470 */ // (fp_to_sint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (CVTTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 62438 | /* 176470 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTTSS2SI64rr), |
| 62439 | /* 176475 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62440 | /* 176479 */ GIR_RootConstrainSelectedInstOperands, |
| 62441 | /* 176480 */ // GIR_Coverage, 1768, |
| 62442 | /* 176480 */ GIR_Done, |
| 62443 | /* 176481 */ // Label 3858: @176481 |
| 62444 | /* 176481 */ GIM_Try, /*On fail goto*//*Label 3859*/ GIMT_Encode4(176511), // Rule ID 1776 // |
| 62445 | /* 176486 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 62446 | /* 176489 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62447 | /* 176492 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62448 | /* 176496 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62449 | /* 176500 */ // (fp_to_sint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (CVTTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 62450 | /* 176500 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTTSD2SI64rr), |
| 62451 | /* 176505 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62452 | /* 176509 */ GIR_RootConstrainSelectedInstOperands, |
| 62453 | /* 176510 */ // GIR_Coverage, 1776, |
| 62454 | /* 176510 */ GIR_Done, |
| 62455 | /* 176511 */ // Label 3859: @176511 |
| 62456 | /* 176511 */ GIM_Try, /*On fail goto*//*Label 3860*/ GIMT_Encode4(176541), // Rule ID 10370 // |
| 62457 | /* 176516 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62458 | /* 176519 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62459 | /* 176522 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62460 | /* 176526 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62461 | /* 176530 */ // (fp_to_sint:{ *:[i64] } FR32X:{ *:[f32] }:$src) => (VCVTTSS2SI64Zrr:{ *:[i64] } FR32X:{ *:[f32] }:$src) |
| 62462 | /* 176530 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SI64Zrr), |
| 62463 | /* 176535 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62464 | /* 176539 */ GIR_RootConstrainSelectedInstOperands, |
| 62465 | /* 176540 */ // GIR_Coverage, 10370, |
| 62466 | /* 176540 */ GIR_Done, |
| 62467 | /* 176541 */ // Label 3860: @176541 |
| 62468 | /* 176541 */ GIM_Try, /*On fail goto*//*Label 3861*/ GIMT_Encode4(176571), // Rule ID 10388 // |
| 62469 | /* 176546 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62470 | /* 176549 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62471 | /* 176552 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62472 | /* 176556 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62473 | /* 176560 */ // (fp_to_sint:{ *:[i64] } FR64X:{ *:[f64] }:$src) => (VCVTTSD2SI64Zrr:{ *:[i64] } FR64X:{ *:[f64] }:$src) |
| 62474 | /* 176560 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SI64Zrr), |
| 62475 | /* 176565 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62476 | /* 176569 */ GIR_RootConstrainSelectedInstOperands, |
| 62477 | /* 176570 */ // GIR_Coverage, 10388, |
| 62478 | /* 176570 */ GIR_Done, |
| 62479 | /* 176571 */ // Label 3861: @176571 |
| 62480 | /* 176571 */ GIM_Try, /*On fail goto*//*Label 3862*/ GIMT_Encode4(176601), // Rule ID 15178 // |
| 62481 | /* 176576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62482 | /* 176579 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62483 | /* 176582 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62484 | /* 176586 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62485 | /* 176590 */ // (fp_to_sint:{ *:[i64] } FR16X:{ *:[f16] }:$src) => (VCVTTSH2SI64Zrr:{ *:[i64] } FR16X:{ *:[f16] }:$src) |
| 62486 | /* 176590 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrr), |
| 62487 | /* 176595 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62488 | /* 176599 */ GIR_RootConstrainSelectedInstOperands, |
| 62489 | /* 176600 */ // GIR_Coverage, 15178, |
| 62490 | /* 176600 */ GIR_Done, |
| 62491 | /* 176601 */ // Label 3862: @176601 |
| 62492 | /* 176601 */ GIM_Reject, |
| 62493 | /* 176602 */ // Label 3833: @176602 |
| 62494 | /* 176602 */ GIM_Try, /*On fail goto*//*Label 3863*/ GIMT_Encode4(176690), |
| 62495 | /* 176607 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 62496 | /* 176610 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 62497 | /* 176614 */ GIM_Try, /*On fail goto*//*Label 3864*/ GIMT_Encode4(176666), // Rule ID 18054 // |
| 62498 | /* 176619 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 62499 | /* 176622 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62500 | /* 176626 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62501 | /* 176630 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62502 | /* 176633 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62503 | /* 176637 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62504 | /* 176641 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62505 | /* 176643 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62506 | /* 176650 */ // (fp_to_sint:{ *:[v4i32] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTPD2DQYrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 62507 | /* 176650 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTPD2DQYrm), |
| 62508 | /* 176653 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62509 | /* 176655 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62510 | /* 176659 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62511 | /* 176664 */ GIR_RootConstrainSelectedInstOperands, |
| 62512 | /* 176665 */ // GIR_Coverage, 18054, |
| 62513 | /* 176665 */ GIR_EraseRootFromParent_Done, |
| 62514 | /* 176666 */ // Label 3864: @176666 |
| 62515 | /* 176666 */ GIM_Try, /*On fail goto*//*Label 3865*/ GIMT_Encode4(176689), // Rule ID 18052 // |
| 62516 | /* 176671 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 62517 | /* 176674 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 62518 | /* 176678 */ // (fp_to_sint:{ *:[v4i32] } VR256:{ *:[v4f64] }:$src) => (VCVTTPD2DQYrr:{ *:[v4i32] } VR256:{ *:[v4f64] }:$src) |
| 62519 | /* 176678 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTPD2DQYrr), |
| 62520 | /* 176683 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62521 | /* 176687 */ GIR_RootConstrainSelectedInstOperands, |
| 62522 | /* 176688 */ // GIR_Coverage, 18052, |
| 62523 | /* 176688 */ GIR_Done, |
| 62524 | /* 176689 */ // Label 3865: @176689 |
| 62525 | /* 176689 */ GIM_Reject, |
| 62526 | /* 176690 */ // Label 3863: @176690 |
| 62527 | /* 176690 */ GIM_Reject, |
| 62528 | /* 176691 */ // Label 3834: @176691 |
| 62529 | /* 176691 */ GIM_Reject, |
| 62530 | /* 176692 */ // Label 50: @176692 |
| 62531 | /* 176692 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(5), /*)*//*default:*//*Label 3868*/ GIMT_Encode4(177247), |
| 62532 | /* 176703 */ /*GILLT_s32*//*Label 3866*/ GIMT_Encode4(176711), |
| 62533 | /* 176707 */ /*GILLT_s64*//*Label 3867*/ GIMT_Encode4(176979), |
| 62534 | /* 176711 */ // Label 3866: @176711 |
| 62535 | /* 176711 */ GIM_Try, /*On fail goto*//*Label 3869*/ GIMT_Encode4(176770), // Rule ID 10399 // |
| 62536 | /* 176716 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62537 | /* 176719 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62538 | /* 176722 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62539 | /* 176726 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62540 | /* 176730 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62541 | /* 176734 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62542 | /* 176737 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62543 | /* 176741 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62544 | /* 176745 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62545 | /* 176747 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62546 | /* 176754 */ // (fp_to_uint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2USIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62547 | /* 176754 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2USIZrm), |
| 62548 | /* 176757 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62549 | /* 176759 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62550 | /* 176763 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62551 | /* 176768 */ GIR_RootConstrainSelectedInstOperands, |
| 62552 | /* 176769 */ // GIR_Coverage, 10399, |
| 62553 | /* 176769 */ GIR_EraseRootFromParent_Done, |
| 62554 | /* 176770 */ // Label 3869: @176770 |
| 62555 | /* 176770 */ GIM_Try, /*On fail goto*//*Label 3870*/ GIMT_Encode4(176829), // Rule ID 10417 // |
| 62556 | /* 176775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62557 | /* 176778 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62558 | /* 176781 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62559 | /* 176785 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62560 | /* 176789 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62561 | /* 176793 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62562 | /* 176796 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62563 | /* 176800 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62564 | /* 176804 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62565 | /* 176806 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62566 | /* 176813 */ // (fp_to_uint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2USIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62567 | /* 176813 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2USIZrm), |
| 62568 | /* 176816 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62569 | /* 176818 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62570 | /* 176822 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62571 | /* 176827 */ GIR_RootConstrainSelectedInstOperands, |
| 62572 | /* 176828 */ // GIR_Coverage, 10417, |
| 62573 | /* 176828 */ GIR_EraseRootFromParent_Done, |
| 62574 | /* 176829 */ // Label 3870: @176829 |
| 62575 | /* 176829 */ GIM_Try, /*On fail goto*//*Label 3871*/ GIMT_Encode4(176888), // Rule ID 15189 // |
| 62576 | /* 176834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62577 | /* 176837 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62578 | /* 176840 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62579 | /* 176844 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62580 | /* 176848 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62581 | /* 176852 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62582 | /* 176855 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62583 | /* 176859 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62584 | /* 176863 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62585 | /* 176865 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62586 | /* 176872 */ // (fp_to_uint:{ *:[i32] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2USIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62587 | /* 176872 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2USIZrm), |
| 62588 | /* 176875 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62589 | /* 176877 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62590 | /* 176881 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62591 | /* 176886 */ GIR_RootConstrainSelectedInstOperands, |
| 62592 | /* 176887 */ // GIR_Coverage, 15189, |
| 62593 | /* 176887 */ GIR_EraseRootFromParent_Done, |
| 62594 | /* 176888 */ // Label 3871: @176888 |
| 62595 | /* 176888 */ GIM_Try, /*On fail goto*//*Label 3872*/ GIMT_Encode4(176918), // Rule ID 10397 // |
| 62596 | /* 176893 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62597 | /* 176896 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62598 | /* 176899 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62599 | /* 176903 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62600 | /* 176907 */ // (fp_to_uint:{ *:[i32] } FR32X:{ *:[f32] }:$src) => (VCVTTSS2USIZrr:{ *:[i32] } FR32X:{ *:[f32] }:$src) |
| 62601 | /* 176907 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2USIZrr), |
| 62602 | /* 176912 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62603 | /* 176916 */ GIR_RootConstrainSelectedInstOperands, |
| 62604 | /* 176917 */ // GIR_Coverage, 10397, |
| 62605 | /* 176917 */ GIR_Done, |
| 62606 | /* 176918 */ // Label 3872: @176918 |
| 62607 | /* 176918 */ GIM_Try, /*On fail goto*//*Label 3873*/ GIMT_Encode4(176948), // Rule ID 10415 // |
| 62608 | /* 176923 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62609 | /* 176926 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62610 | /* 176929 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62611 | /* 176933 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62612 | /* 176937 */ // (fp_to_uint:{ *:[i32] } FR64X:{ *:[f64] }:$src) => (VCVTTSD2USIZrr:{ *:[i32] } FR64X:{ *:[f64] }:$src) |
| 62613 | /* 176937 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2USIZrr), |
| 62614 | /* 176942 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62615 | /* 176946 */ GIR_RootConstrainSelectedInstOperands, |
| 62616 | /* 176947 */ // GIR_Coverage, 10415, |
| 62617 | /* 176947 */ GIR_Done, |
| 62618 | /* 176948 */ // Label 3873: @176948 |
| 62619 | /* 176948 */ GIM_Try, /*On fail goto*//*Label 3874*/ GIMT_Encode4(176978), // Rule ID 15187 // |
| 62620 | /* 176953 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62621 | /* 176956 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62622 | /* 176959 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62623 | /* 176963 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62624 | /* 176967 */ // (fp_to_uint:{ *:[i32] } FR16X:{ *:[f16] }:$src) => (VCVTTSH2USIZrr:{ *:[i32] } FR16X:{ *:[f16] }:$src) |
| 62625 | /* 176967 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2USIZrr), |
| 62626 | /* 176972 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62627 | /* 176976 */ GIR_RootConstrainSelectedInstOperands, |
| 62628 | /* 176977 */ // GIR_Coverage, 15187, |
| 62629 | /* 176977 */ GIR_Done, |
| 62630 | /* 176978 */ // Label 3874: @176978 |
| 62631 | /* 176978 */ GIM_Reject, |
| 62632 | /* 176979 */ // Label 3867: @176979 |
| 62633 | /* 176979 */ GIM_Try, /*On fail goto*//*Label 3875*/ GIMT_Encode4(177038), // Rule ID 10408 // |
| 62634 | /* 176984 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62635 | /* 176987 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62636 | /* 176990 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62637 | /* 176994 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62638 | /* 176998 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62639 | /* 177002 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62640 | /* 177005 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62641 | /* 177009 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62642 | /* 177013 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62643 | /* 177015 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62644 | /* 177022 */ // (fp_to_uint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2USI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62645 | /* 177022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2USI64Zrm), |
| 62646 | /* 177025 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62647 | /* 177027 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62648 | /* 177031 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62649 | /* 177036 */ GIR_RootConstrainSelectedInstOperands, |
| 62650 | /* 177037 */ // GIR_Coverage, 10408, |
| 62651 | /* 177037 */ GIR_EraseRootFromParent_Done, |
| 62652 | /* 177038 */ // Label 3875: @177038 |
| 62653 | /* 177038 */ GIM_Try, /*On fail goto*//*Label 3876*/ GIMT_Encode4(177097), // Rule ID 10426 // |
| 62654 | /* 177043 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62655 | /* 177046 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62656 | /* 177049 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62657 | /* 177053 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62658 | /* 177057 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62659 | /* 177061 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62660 | /* 177064 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62661 | /* 177068 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62662 | /* 177072 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62663 | /* 177074 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62664 | /* 177081 */ // (fp_to_uint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2USI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62665 | /* 177081 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2USI64Zrm), |
| 62666 | /* 177084 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62667 | /* 177086 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62668 | /* 177090 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62669 | /* 177095 */ GIR_RootConstrainSelectedInstOperands, |
| 62670 | /* 177096 */ // GIR_Coverage, 10426, |
| 62671 | /* 177096 */ GIR_EraseRootFromParent_Done, |
| 62672 | /* 177097 */ // Label 3876: @177097 |
| 62673 | /* 177097 */ GIM_Try, /*On fail goto*//*Label 3877*/ GIMT_Encode4(177156), // Rule ID 15198 // |
| 62674 | /* 177102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62675 | /* 177105 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62676 | /* 177108 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62677 | /* 177112 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62678 | /* 177116 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62679 | /* 177120 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62680 | /* 177123 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62681 | /* 177127 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62682 | /* 177131 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62683 | /* 177133 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62684 | /* 177140 */ // (fp_to_uint:{ *:[i64] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2USI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62685 | /* 177140 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2USI64Zrm), |
| 62686 | /* 177143 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62687 | /* 177145 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62688 | /* 177149 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62689 | /* 177154 */ GIR_RootConstrainSelectedInstOperands, |
| 62690 | /* 177155 */ // GIR_Coverage, 15198, |
| 62691 | /* 177155 */ GIR_EraseRootFromParent_Done, |
| 62692 | /* 177156 */ // Label 3877: @177156 |
| 62693 | /* 177156 */ GIM_Try, /*On fail goto*//*Label 3878*/ GIMT_Encode4(177186), // Rule ID 10406 // |
| 62694 | /* 177161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62695 | /* 177164 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62696 | /* 177167 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62697 | /* 177171 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62698 | /* 177175 */ // (fp_to_uint:{ *:[i64] } FR32X:{ *:[f32] }:$src) => (VCVTTSS2USI64Zrr:{ *:[i64] } FR32X:{ *:[f32] }:$src) |
| 62699 | /* 177175 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2USI64Zrr), |
| 62700 | /* 177180 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62701 | /* 177184 */ GIR_RootConstrainSelectedInstOperands, |
| 62702 | /* 177185 */ // GIR_Coverage, 10406, |
| 62703 | /* 177185 */ GIR_Done, |
| 62704 | /* 177186 */ // Label 3878: @177186 |
| 62705 | /* 177186 */ GIM_Try, /*On fail goto*//*Label 3879*/ GIMT_Encode4(177216), // Rule ID 10424 // |
| 62706 | /* 177191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62707 | /* 177194 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62708 | /* 177197 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62709 | /* 177201 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62710 | /* 177205 */ // (fp_to_uint:{ *:[i64] } FR64X:{ *:[f64] }:$src) => (VCVTTSD2USI64Zrr:{ *:[i64] } FR64X:{ *:[f64] }:$src) |
| 62711 | /* 177205 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2USI64Zrr), |
| 62712 | /* 177210 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62713 | /* 177214 */ GIR_RootConstrainSelectedInstOperands, |
| 62714 | /* 177215 */ // GIR_Coverage, 10424, |
| 62715 | /* 177215 */ GIR_Done, |
| 62716 | /* 177216 */ // Label 3879: @177216 |
| 62717 | /* 177216 */ GIM_Try, /*On fail goto*//*Label 3880*/ GIMT_Encode4(177246), // Rule ID 15196 // |
| 62718 | /* 177221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62719 | /* 177224 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62720 | /* 177227 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62721 | /* 177231 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62722 | /* 177235 */ // (fp_to_uint:{ *:[i64] } FR16X:{ *:[f16] }:$src) => (VCVTTSH2USI64Zrr:{ *:[i64] } FR16X:{ *:[f16] }:$src) |
| 62723 | /* 177235 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2USI64Zrr), |
| 62724 | /* 177240 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62725 | /* 177244 */ GIR_RootConstrainSelectedInstOperands, |
| 62726 | /* 177245 */ // GIR_Coverage, 15196, |
| 62727 | /* 177245 */ GIR_Done, |
| 62728 | /* 177246 */ // Label 3880: @177246 |
| 62729 | /* 177246 */ GIM_Reject, |
| 62730 | /* 177247 */ // Label 3868: @177247 |
| 62731 | /* 177247 */ GIM_Reject, |
| 62732 | /* 177248 */ // Label 51: @177248 |
| 62733 | /* 177248 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3893*/ GIMT_Encode4(180623), |
| 62734 | /* 177259 */ /*GILLT_s16*//*Label 3881*/ GIMT_Encode4(177343), |
| 62735 | /* 177263 */ /*GILLT_s32*//*Label 3882*/ GIMT_Encode4(177586), |
| 62736 | /* 177267 */ /*GILLT_s64*//*Label 3883*/ GIMT_Encode4(178249), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 62737 | /* 177283 */ /*GILLT_v2s64*//*Label 3884*/ GIMT_Encode4(178908), GIMT_Encode4(0), |
| 62738 | /* 177291 */ /*GILLT_v4s32*//*Label 3885*/ GIMT_Encode4(178997), |
| 62739 | /* 177295 */ /*GILLT_v4s64*//*Label 3886*/ GIMT_Encode4(179295), GIMT_Encode4(0), |
| 62740 | /* 177303 */ /*GILLT_v8s16*//*Label 3887*/ GIMT_Encode4(179555), |
| 62741 | /* 177307 */ /*GILLT_v8s32*//*Label 3888*/ GIMT_Encode4(179823), |
| 62742 | /* 177311 */ /*GILLT_v8s64*//*Label 3889*/ GIMT_Encode4(180091), GIMT_Encode4(0), GIMT_Encode4(0), |
| 62743 | /* 177323 */ /*GILLT_v16s16*//*Label 3890*/ GIMT_Encode4(180266), |
| 62744 | /* 177327 */ /*GILLT_v16s32*//*Label 3891*/ GIMT_Encode4(180445), GIMT_Encode4(0), GIMT_Encode4(0), |
| 62745 | /* 177339 */ /*GILLT_v32s16*//*Label 3892*/ GIMT_Encode4(180534), |
| 62746 | /* 177343 */ // Label 3881: @177343 |
| 62747 | /* 177343 */ GIM_Try, /*On fail goto*//*Label 3894*/ GIMT_Encode4(177419), // Rule ID 22179 // |
| 62748 | /* 177348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62749 | /* 177351 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62750 | /* 177354 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62751 | /* 177358 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62752 | /* 177362 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62753 | /* 177366 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62754 | /* 177369 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62755 | /* 177373 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62756 | /* 177377 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62757 | /* 177379 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62758 | /* 177386 */ // (sint_to_fp:{ *:[f16] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSI642SHZrm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 62759 | /* 177386 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 62760 | /* 177389 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62761 | /* 177393 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 62762 | /* 177398 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62763 | /* 177400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SHZrm), |
| 62764 | /* 177403 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62765 | /* 177405 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62766 | /* 177408 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62767 | /* 177412 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62768 | /* 177417 */ GIR_RootConstrainSelectedInstOperands, |
| 62769 | /* 177418 */ // GIR_Coverage, 22179, |
| 62770 | /* 177418 */ GIR_EraseRootFromParent_Done, |
| 62771 | /* 177419 */ // Label 3894: @177419 |
| 62772 | /* 177419 */ GIM_Try, /*On fail goto*//*Label 3895*/ GIMT_Encode4(177495), // Rule ID 22177 // |
| 62773 | /* 177424 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62774 | /* 177427 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62775 | /* 177430 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62776 | /* 177434 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62777 | /* 177438 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62778 | /* 177442 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62779 | /* 177445 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62780 | /* 177449 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62781 | /* 177453 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62782 | /* 177455 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62783 | /* 177462 */ // (sint_to_fp:{ *:[f16] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTSI2SHZrm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 62784 | /* 177462 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 62785 | /* 177465 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62786 | /* 177469 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 62787 | /* 177474 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62788 | /* 177476 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SHZrm), |
| 62789 | /* 177479 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62790 | /* 177481 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62791 | /* 177484 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62792 | /* 177488 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62793 | /* 177493 */ GIR_RootConstrainSelectedInstOperands, |
| 62794 | /* 177494 */ // GIR_Coverage, 22177, |
| 62795 | /* 177494 */ GIR_EraseRootFromParent_Done, |
| 62796 | /* 177495 */ // Label 3895: @177495 |
| 62797 | /* 177495 */ GIM_Try, /*On fail goto*//*Label 3896*/ GIMT_Encode4(177540), // Rule ID 22181 // |
| 62798 | /* 177500 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62799 | /* 177503 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62800 | /* 177506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62801 | /* 177510 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62802 | /* 177514 */ // (sint_to_fp:{ *:[f16] } GR32:{ *:[i32] }:$src) => (VCVTSI2SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), GR32:{ *:[i32] }:$src) |
| 62803 | /* 177514 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 62804 | /* 177517 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62805 | /* 177521 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 62806 | /* 177526 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62807 | /* 177528 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SHZrr), |
| 62808 | /* 177531 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62809 | /* 177533 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62810 | /* 177536 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62811 | /* 177538 */ GIR_RootConstrainSelectedInstOperands, |
| 62812 | /* 177539 */ // GIR_Coverage, 22181, |
| 62813 | /* 177539 */ GIR_EraseRootFromParent_Done, |
| 62814 | /* 177540 */ // Label 3896: @177540 |
| 62815 | /* 177540 */ GIM_Try, /*On fail goto*//*Label 3897*/ GIMT_Encode4(177585), // Rule ID 22183 // |
| 62816 | /* 177545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62817 | /* 177548 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62818 | /* 177551 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62819 | /* 177555 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62820 | /* 177559 */ // (sint_to_fp:{ *:[f16] } GR64:{ *:[i64] }:$src) => (VCVTSI642SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), GR64:{ *:[i64] }:$src) |
| 62821 | /* 177559 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 62822 | /* 177562 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62823 | /* 177566 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 62824 | /* 177571 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62825 | /* 177573 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SHZrr), |
| 62826 | /* 177576 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62827 | /* 177578 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62828 | /* 177581 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62829 | /* 177583 */ GIR_RootConstrainSelectedInstOperands, |
| 62830 | /* 177584 */ // GIR_Coverage, 22183, |
| 62831 | /* 177584 */ GIR_EraseRootFromParent_Done, |
| 62832 | /* 177585 */ // Label 3897: @177585 |
| 62833 | /* 177585 */ GIM_Reject, |
| 62834 | /* 177586 */ // Label 3882: @177586 |
| 62835 | /* 177586 */ GIM_Try, /*On fail goto*//*Label 3898*/ GIMT_Encode4(177645), // Rule ID 1794 // |
| 62836 | /* 177591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62837 | /* 177594 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62838 | /* 177597 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62839 | /* 177601 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62840 | /* 177605 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62841 | /* 177609 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62842 | /* 177612 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62843 | /* 177616 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62844 | /* 177620 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62845 | /* 177622 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62846 | /* 177629 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSI642SSrm:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 62847 | /* 177629 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSI642SSrm), |
| 62848 | /* 177632 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62849 | /* 177634 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62850 | /* 177638 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62851 | /* 177643 */ GIR_RootConstrainSelectedInstOperands, |
| 62852 | /* 177644 */ // GIR_Coverage, 1794, |
| 62853 | /* 177644 */ GIR_EraseRootFromParent_Done, |
| 62854 | /* 177645 */ // Label 3898: @177645 |
| 62855 | /* 177645 */ GIM_Try, /*On fail goto*//*Label 3899*/ GIMT_Encode4(177721), // Rule ID 17976 // |
| 62856 | /* 177650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62857 | /* 177653 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62858 | /* 177656 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62859 | /* 177660 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62860 | /* 177664 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62861 | /* 177668 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62862 | /* 177671 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62863 | /* 177675 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62864 | /* 177679 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62865 | /* 177681 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62866 | /* 177688 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSI642SSrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 62867 | /* 177688 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62868 | /* 177691 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62869 | /* 177695 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 62870 | /* 177700 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62871 | /* 177702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SSrm), |
| 62872 | /* 177705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62873 | /* 177707 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62874 | /* 177710 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62875 | /* 177714 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62876 | /* 177719 */ GIR_RootConstrainSelectedInstOperands, |
| 62877 | /* 177720 */ // GIR_Coverage, 17976, |
| 62878 | /* 177720 */ GIR_EraseRootFromParent_Done, |
| 62879 | /* 177721 */ // Label 3899: @177721 |
| 62880 | /* 177721 */ GIM_Try, /*On fail goto*//*Label 3900*/ GIMT_Encode4(177797), // Rule ID 21130 // |
| 62881 | /* 177726 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62882 | /* 177729 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62883 | /* 177732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62884 | /* 177736 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62885 | /* 177740 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62886 | /* 177744 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62887 | /* 177747 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62888 | /* 177751 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62889 | /* 177755 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62890 | /* 177757 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62891 | /* 177764 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSI642SSZrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 62892 | /* 177764 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62893 | /* 177767 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62894 | /* 177771 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 62895 | /* 177776 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62896 | /* 177778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SSZrm), |
| 62897 | /* 177781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62898 | /* 177783 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62899 | /* 177786 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62900 | /* 177790 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62901 | /* 177795 */ GIR_RootConstrainSelectedInstOperands, |
| 62902 | /* 177796 */ // GIR_Coverage, 21130, |
| 62903 | /* 177796 */ GIR_EraseRootFromParent_Done, |
| 62904 | /* 177797 */ // Label 3900: @177797 |
| 62905 | /* 177797 */ GIM_Try, /*On fail goto*//*Label 3901*/ GIMT_Encode4(177856), // Rule ID 1790 // |
| 62906 | /* 177802 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62907 | /* 177805 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62908 | /* 177808 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62909 | /* 177812 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62910 | /* 177816 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62911 | /* 177820 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62912 | /* 177823 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62913 | /* 177827 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62914 | /* 177831 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62915 | /* 177833 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62916 | /* 177840 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (CVTSI2SSrm:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 62917 | /* 177840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSI2SSrm), |
| 62918 | /* 177843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62919 | /* 177845 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62920 | /* 177849 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62921 | /* 177854 */ GIR_RootConstrainSelectedInstOperands, |
| 62922 | /* 177855 */ // GIR_Coverage, 1790, |
| 62923 | /* 177855 */ GIR_EraseRootFromParent_Done, |
| 62924 | /* 177856 */ // Label 3901: @177856 |
| 62925 | /* 177856 */ GIM_Try, /*On fail goto*//*Label 3902*/ GIMT_Encode4(177932), // Rule ID 17974 // |
| 62926 | /* 177861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62927 | /* 177864 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62928 | /* 177867 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62929 | /* 177871 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62930 | /* 177875 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62931 | /* 177879 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62932 | /* 177882 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62933 | /* 177886 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62934 | /* 177890 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62935 | /* 177892 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62936 | /* 177899 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTSI2SSrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 62937 | /* 177899 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62938 | /* 177902 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62939 | /* 177906 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 62940 | /* 177911 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62941 | /* 177913 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SSrm), |
| 62942 | /* 177916 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62943 | /* 177918 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62944 | /* 177921 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62945 | /* 177925 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62946 | /* 177930 */ GIR_RootConstrainSelectedInstOperands, |
| 62947 | /* 177931 */ // GIR_Coverage, 17974, |
| 62948 | /* 177931 */ GIR_EraseRootFromParent_Done, |
| 62949 | /* 177932 */ // Label 3902: @177932 |
| 62950 | /* 177932 */ GIM_Try, /*On fail goto*//*Label 3903*/ GIMT_Encode4(178008), // Rule ID 21128 // |
| 62951 | /* 177937 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62952 | /* 177940 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62953 | /* 177943 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62954 | /* 177947 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62955 | /* 177951 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62956 | /* 177955 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62957 | /* 177958 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62958 | /* 177962 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62959 | /* 177966 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62960 | /* 177968 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62961 | /* 177975 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTSI2SSZrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 62962 | /* 177975 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62963 | /* 177978 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62964 | /* 177982 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 62965 | /* 177987 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62966 | /* 177989 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SSZrm), |
| 62967 | /* 177992 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62968 | /* 177994 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62969 | /* 177997 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62970 | /* 178001 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62971 | /* 178006 */ GIR_RootConstrainSelectedInstOperands, |
| 62972 | /* 178007 */ // GIR_Coverage, 21128, |
| 62973 | /* 178007 */ GIR_EraseRootFromParent_Done, |
| 62974 | /* 178008 */ // Label 3903: @178008 |
| 62975 | /* 178008 */ GIM_Try, /*On fail goto*//*Label 3904*/ GIMT_Encode4(178038), // Rule ID 1788 // |
| 62976 | /* 178013 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62977 | /* 178016 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62978 | /* 178019 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62979 | /* 178023 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62980 | /* 178027 */ // (sint_to_fp:{ *:[f32] } GR32:{ *:[i32] }:$src) => (CVTSI2SSrr:{ *:[f32] } GR32:{ *:[i32] }:$src) |
| 62981 | /* 178027 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSI2SSrr), |
| 62982 | /* 178032 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62983 | /* 178036 */ GIR_RootConstrainSelectedInstOperands, |
| 62984 | /* 178037 */ // GIR_Coverage, 1788, |
| 62985 | /* 178037 */ GIR_Done, |
| 62986 | /* 178038 */ // Label 3904: @178038 |
| 62987 | /* 178038 */ GIM_Try, /*On fail goto*//*Label 3905*/ GIMT_Encode4(178068), // Rule ID 1792 // |
| 62988 | /* 178043 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62989 | /* 178046 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62990 | /* 178049 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62991 | /* 178053 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62992 | /* 178057 */ // (sint_to_fp:{ *:[f32] } GR64:{ *:[i64] }:$src) => (CVTSI642SSrr:{ *:[f32] } GR64:{ *:[i64] }:$src) |
| 62993 | /* 178057 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSI642SSrr), |
| 62994 | /* 178062 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62995 | /* 178066 */ GIR_RootConstrainSelectedInstOperands, |
| 62996 | /* 178067 */ // GIR_Coverage, 1792, |
| 62997 | /* 178067 */ GIR_Done, |
| 62998 | /* 178068 */ // Label 3905: @178068 |
| 62999 | /* 178068 */ GIM_Try, /*On fail goto*//*Label 3906*/ GIMT_Encode4(178113), // Rule ID 17982 // |
| 63000 | /* 178073 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 63001 | /* 178076 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63002 | /* 178079 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 63003 | /* 178083 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 63004 | /* 178087 */ // (sint_to_fp:{ *:[f32] } GR32:{ *:[i32] }:$src) => (VCVTSI2SSrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR32:{ *:[i32] }:$src) |
| 63005 | /* 178087 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 63006 | /* 178090 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63007 | /* 178094 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63008 | /* 178099 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63009 | /* 178101 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SSrr), |
| 63010 | /* 178104 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63011 | /* 178106 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63012 | /* 178109 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63013 | /* 178111 */ GIR_RootConstrainSelectedInstOperands, |
| 63014 | /* 178112 */ // GIR_Coverage, 17982, |
| 63015 | /* 178112 */ GIR_EraseRootFromParent_Done, |
| 63016 | /* 178113 */ // Label 3906: @178113 |
| 63017 | /* 178113 */ GIM_Try, /*On fail goto*//*Label 3907*/ GIMT_Encode4(178158), // Rule ID 17984 // |
| 63018 | /* 178118 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 63019 | /* 178121 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63020 | /* 178124 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 63021 | /* 178128 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 63022 | /* 178132 */ // (sint_to_fp:{ *:[f32] } GR64:{ *:[i64] }:$src) => (VCVTSI642SSrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR64:{ *:[i64] }:$src) |
| 63023 | /* 178132 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 63024 | /* 178135 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63025 | /* 178139 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63026 | /* 178144 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63027 | /* 178146 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SSrr), |
| 63028 | /* 178149 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63029 | /* 178151 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63030 | /* 178154 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63031 | /* 178156 */ GIR_RootConstrainSelectedInstOperands, |
| 63032 | /* 178157 */ // GIR_Coverage, 17984, |
| 63033 | /* 178157 */ GIR_EraseRootFromParent_Done, |
| 63034 | /* 178158 */ // Label 3907: @178158 |
| 63035 | /* 178158 */ GIM_Try, /*On fail goto*//*Label 3908*/ GIMT_Encode4(178203), // Rule ID 21136 // |
| 63036 | /* 178163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63037 | /* 178166 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63038 | /* 178169 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 63039 | /* 178173 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 63040 | /* 178177 */ // (sint_to_fp:{ *:[f32] } GR32:{ *:[i32] }:$src) => (VCVTSI2SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR32:{ *:[i32] }:$src) |
| 63041 | /* 178177 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 63042 | /* 178180 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63043 | /* 178184 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63044 | /* 178189 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63045 | /* 178191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SSZrr), |
| 63046 | /* 178194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63047 | /* 178196 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63048 | /* 178199 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63049 | /* 178201 */ GIR_RootConstrainSelectedInstOperands, |
| 63050 | /* 178202 */ // GIR_Coverage, 21136, |
| 63051 | /* 178202 */ GIR_EraseRootFromParent_Done, |
| 63052 | /* 178203 */ // Label 3908: @178203 |
| 63053 | /* 178203 */ GIM_Try, /*On fail goto*//*Label 3909*/ GIMT_Encode4(178248), // Rule ID 21138 // |
| 63054 | /* 178208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63055 | /* 178211 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63056 | /* 178214 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 63057 | /* 178218 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 63058 | /* 178222 */ // (sint_to_fp:{ *:[f32] } GR64:{ *:[i64] }:$src) => (VCVTSI642SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR64:{ *:[i64] }:$src) |
| 63059 | /* 178222 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 63060 | /* 178225 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63061 | /* 178229 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63062 | /* 178234 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63063 | /* 178236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SSZrr), |
| 63064 | /* 178239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63065 | /* 178241 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63066 | /* 178244 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63067 | /* 178246 */ GIR_RootConstrainSelectedInstOperands, |
| 63068 | /* 178247 */ // GIR_Coverage, 21138, |
| 63069 | /* 178247 */ GIR_EraseRootFromParent_Done, |
| 63070 | /* 178248 */ // Label 3909: @178248 |
| 63071 | /* 178248 */ GIM_Reject, |
| 63072 | /* 178249 */ // Label 3883: @178249 |
| 63073 | /* 178249 */ GIM_Try, /*On fail goto*//*Label 3910*/ GIMT_Encode4(178308), // Rule ID 1802 // |
| 63074 | /* 178254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 63075 | /* 178257 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63076 | /* 178260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 63077 | /* 178264 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63078 | /* 178268 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63079 | /* 178272 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63080 | /* 178275 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63081 | /* 178279 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63082 | /* 178283 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63083 | /* 178285 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63084 | /* 178292 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSI642SDrm:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 63085 | /* 178292 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSI642SDrm), |
| 63086 | /* 178295 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63087 | /* 178297 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63088 | /* 178301 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63089 | /* 178306 */ GIR_RootConstrainSelectedInstOperands, |
| 63090 | /* 178307 */ // GIR_Coverage, 1802, |
| 63091 | /* 178307 */ GIR_EraseRootFromParent_Done, |
| 63092 | /* 178308 */ // Label 3910: @178308 |
| 63093 | /* 178308 */ GIM_Try, /*On fail goto*//*Label 3911*/ GIMT_Encode4(178384), // Rule ID 17980 // |
| 63094 | /* 178313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 63095 | /* 178316 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63096 | /* 178319 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 63097 | /* 178323 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63098 | /* 178327 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63099 | /* 178331 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63100 | /* 178334 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63101 | /* 178338 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63102 | /* 178342 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63103 | /* 178344 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63104 | /* 178351 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSI642SDrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 63105 | /* 178351 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63106 | /* 178354 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63107 | /* 178358 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63108 | /* 178363 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63109 | /* 178365 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SDrm), |
| 63110 | /* 178368 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63111 | /* 178370 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63112 | /* 178373 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63113 | /* 178377 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63114 | /* 178382 */ GIR_RootConstrainSelectedInstOperands, |
| 63115 | /* 178383 */ // GIR_Coverage, 17980, |
| 63116 | /* 178383 */ GIR_EraseRootFromParent_Done, |
| 63117 | /* 178384 */ // Label 3911: @178384 |
| 63118 | /* 178384 */ GIM_Try, /*On fail goto*//*Label 3912*/ GIMT_Encode4(178460), // Rule ID 21134 // |
| 63119 | /* 178389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63120 | /* 178392 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63121 | /* 178395 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 63122 | /* 178399 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63123 | /* 178403 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63124 | /* 178407 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63125 | /* 178410 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63126 | /* 178414 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63127 | /* 178418 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63128 | /* 178420 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63129 | /* 178427 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSI642SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 63130 | /* 178427 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63131 | /* 178430 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63132 | /* 178434 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63133 | /* 178439 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63134 | /* 178441 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SDZrm), |
| 63135 | /* 178444 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63136 | /* 178446 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63137 | /* 178449 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63138 | /* 178453 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63139 | /* 178458 */ GIR_RootConstrainSelectedInstOperands, |
| 63140 | /* 178459 */ // GIR_Coverage, 21134, |
| 63141 | /* 178459 */ GIR_EraseRootFromParent_Done, |
| 63142 | /* 178460 */ // Label 3912: @178460 |
| 63143 | /* 178460 */ GIM_Try, /*On fail goto*//*Label 3913*/ GIMT_Encode4(178519), // Rule ID 1798 // |
| 63144 | /* 178465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 63145 | /* 178468 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63146 | /* 178471 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 63147 | /* 178475 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63148 | /* 178479 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63149 | /* 178483 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63150 | /* 178486 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63151 | /* 178490 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 63152 | /* 178494 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63153 | /* 178496 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63154 | /* 178503 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (CVTSI2SDrm:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 63155 | /* 178503 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSI2SDrm), |
| 63156 | /* 178506 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63157 | /* 178508 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63158 | /* 178512 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63159 | /* 178517 */ GIR_RootConstrainSelectedInstOperands, |
| 63160 | /* 178518 */ // GIR_Coverage, 1798, |
| 63161 | /* 178518 */ GIR_EraseRootFromParent_Done, |
| 63162 | /* 178519 */ // Label 3913: @178519 |
| 63163 | /* 178519 */ GIM_Try, /*On fail goto*//*Label 3914*/ GIMT_Encode4(178595), // Rule ID 17978 // |
| 63164 | /* 178524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 63165 | /* 178527 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63166 | /* 178530 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 63167 | /* 178534 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63168 | /* 178538 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63169 | /* 178542 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63170 | /* 178545 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63171 | /* 178549 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 63172 | /* 178553 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63173 | /* 178555 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63174 | /* 178562 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTSI2SDrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 63175 | /* 178562 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63176 | /* 178565 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63177 | /* 178569 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63178 | /* 178574 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63179 | /* 178576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SDrm), |
| 63180 | /* 178579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63181 | /* 178581 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63182 | /* 178584 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63183 | /* 178588 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63184 | /* 178593 */ GIR_RootConstrainSelectedInstOperands, |
| 63185 | /* 178594 */ // GIR_Coverage, 17978, |
| 63186 | /* 178594 */ GIR_EraseRootFromParent_Done, |
| 63187 | /* 178595 */ // Label 3914: @178595 |
| 63188 | /* 178595 */ GIM_Try, /*On fail goto*//*Label 3915*/ GIMT_Encode4(178671), // Rule ID 21132 // |
| 63189 | /* 178600 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63190 | /* 178603 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63191 | /* 178606 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 63192 | /* 178610 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63193 | /* 178614 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63194 | /* 178618 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63195 | /* 178621 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63196 | /* 178625 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 63197 | /* 178629 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63198 | /* 178631 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63199 | /* 178638 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTSI2SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 63200 | /* 178638 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63201 | /* 178641 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63202 | /* 178645 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63203 | /* 178650 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63204 | /* 178652 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SDZrm), |
| 63205 | /* 178655 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63206 | /* 178657 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63207 | /* 178660 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63208 | /* 178664 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63209 | /* 178669 */ GIR_RootConstrainSelectedInstOperands, |
| 63210 | /* 178670 */ // GIR_Coverage, 21132, |
| 63211 | /* 178670 */ GIR_EraseRootFromParent_Done, |
| 63212 | /* 178671 */ // Label 3915: @178671 |
| 63213 | /* 178671 */ GIM_Try, /*On fail goto*//*Label 3916*/ GIMT_Encode4(178697), // Rule ID 1796 // |
| 63214 | /* 178676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 63215 | /* 178679 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63216 | /* 178682 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 63217 | /* 178686 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 63218 | /* 178690 */ // (sint_to_fp:{ *:[f64] } GR32:{ *:[i32] }:$src) => (CVTSI2SDrr:{ *:[f64] } GR32:{ *:[i32] }:$src) |
| 63219 | /* 178690 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSI2SDrr), |
| 63220 | /* 178695 */ GIR_RootConstrainSelectedInstOperands, |
| 63221 | /* 178696 */ // GIR_Coverage, 1796, |
| 63222 | /* 178696 */ GIR_Done, |
| 63223 | /* 178697 */ // Label 3916: @178697 |
| 63224 | /* 178697 */ GIM_Try, /*On fail goto*//*Label 3917*/ GIMT_Encode4(178727), // Rule ID 1800 // |
| 63225 | /* 178702 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 63226 | /* 178705 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63227 | /* 178708 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 63228 | /* 178712 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 63229 | /* 178716 */ // (sint_to_fp:{ *:[f64] } GR64:{ *:[i64] }:$src) => (CVTSI642SDrr:{ *:[f64] } GR64:{ *:[i64] }:$src) |
| 63230 | /* 178716 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSI642SDrr), |
| 63231 | /* 178721 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63232 | /* 178725 */ GIR_RootConstrainSelectedInstOperands, |
| 63233 | /* 178726 */ // GIR_Coverage, 1800, |
| 63234 | /* 178726 */ GIR_Done, |
| 63235 | /* 178727 */ // Label 3917: @178727 |
| 63236 | /* 178727 */ GIM_Try, /*On fail goto*//*Label 3918*/ GIMT_Encode4(178772), // Rule ID 17986 // |
| 63237 | /* 178732 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 63238 | /* 178735 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63239 | /* 178738 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 63240 | /* 178742 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 63241 | /* 178746 */ // (sint_to_fp:{ *:[f64] } GR32:{ *:[i32] }:$src) => (VCVTSI2SDrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR32:{ *:[i32] }:$src) |
| 63242 | /* 178746 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63243 | /* 178749 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63244 | /* 178753 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63245 | /* 178758 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63246 | /* 178760 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SDrr), |
| 63247 | /* 178763 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63248 | /* 178765 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63249 | /* 178768 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63250 | /* 178770 */ GIR_RootConstrainSelectedInstOperands, |
| 63251 | /* 178771 */ // GIR_Coverage, 17986, |
| 63252 | /* 178771 */ GIR_EraseRootFromParent_Done, |
| 63253 | /* 178772 */ // Label 3918: @178772 |
| 63254 | /* 178772 */ GIM_Try, /*On fail goto*//*Label 3919*/ GIMT_Encode4(178817), // Rule ID 17988 // |
| 63255 | /* 178777 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 63256 | /* 178780 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63257 | /* 178783 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 63258 | /* 178787 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 63259 | /* 178791 */ // (sint_to_fp:{ *:[f64] } GR64:{ *:[i64] }:$src) => (VCVTSI642SDrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR64:{ *:[i64] }:$src) |
| 63260 | /* 178791 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63261 | /* 178794 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63262 | /* 178798 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63263 | /* 178803 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63264 | /* 178805 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SDrr), |
| 63265 | /* 178808 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63266 | /* 178810 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63267 | /* 178813 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63268 | /* 178815 */ GIR_RootConstrainSelectedInstOperands, |
| 63269 | /* 178816 */ // GIR_Coverage, 17988, |
| 63270 | /* 178816 */ GIR_EraseRootFromParent_Done, |
| 63271 | /* 178817 */ // Label 3919: @178817 |
| 63272 | /* 178817 */ GIM_Try, /*On fail goto*//*Label 3920*/ GIMT_Encode4(178862), // Rule ID 21140 // |
| 63273 | /* 178822 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63274 | /* 178825 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63275 | /* 178828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 63276 | /* 178832 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 63277 | /* 178836 */ // (sint_to_fp:{ *:[f64] } GR32:{ *:[i32] }:$src) => (VCVTSI2SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR32:{ *:[i32] }:$src) |
| 63278 | /* 178836 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63279 | /* 178839 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63280 | /* 178843 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63281 | /* 178848 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63282 | /* 178850 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SDZrr), |
| 63283 | /* 178853 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63284 | /* 178855 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63285 | /* 178858 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63286 | /* 178860 */ GIR_RootConstrainSelectedInstOperands, |
| 63287 | /* 178861 */ // GIR_Coverage, 21140, |
| 63288 | /* 178861 */ GIR_EraseRootFromParent_Done, |
| 63289 | /* 178862 */ // Label 3920: @178862 |
| 63290 | /* 178862 */ GIM_Try, /*On fail goto*//*Label 3921*/ GIMT_Encode4(178907), // Rule ID 21142 // |
| 63291 | /* 178867 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63292 | /* 178870 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63293 | /* 178873 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 63294 | /* 178877 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 63295 | /* 178881 */ // (sint_to_fp:{ *:[f64] } GR64:{ *:[i64] }:$src) => (VCVTSI642SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR64:{ *:[i64] }:$src) |
| 63296 | /* 178881 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63297 | /* 178884 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63298 | /* 178888 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63299 | /* 178893 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63300 | /* 178895 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SDZrr), |
| 63301 | /* 178898 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63302 | /* 178900 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63303 | /* 178903 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63304 | /* 178905 */ GIR_RootConstrainSelectedInstOperands, |
| 63305 | /* 178906 */ // GIR_Coverage, 21142, |
| 63306 | /* 178906 */ GIR_EraseRootFromParent_Done, |
| 63307 | /* 178907 */ // Label 3921: @178907 |
| 63308 | /* 178907 */ GIM_Reject, |
| 63309 | /* 178908 */ // Label 3884: @178908 |
| 63310 | /* 178908 */ GIM_Try, /*On fail goto*//*Label 3922*/ GIMT_Encode4(178996), |
| 63311 | /* 178913 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 63312 | /* 178916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63313 | /* 178920 */ GIM_Try, /*On fail goto*//*Label 3923*/ GIMT_Encode4(178972), // Rule ID 11379 // |
| 63314 | /* 178925 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63315 | /* 178928 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63316 | /* 178932 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63317 | /* 178936 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63318 | /* 178939 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63319 | /* 178943 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63320 | /* 178947 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63321 | /* 178949 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63322 | /* 178956 */ // (sint_to_fp:{ *:[v2f64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PDZ128rm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 63323 | /* 178956 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZ128rm), |
| 63324 | /* 178959 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63325 | /* 178961 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63326 | /* 178965 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63327 | /* 178970 */ GIR_RootConstrainSelectedInstOperands, |
| 63328 | /* 178971 */ // GIR_Coverage, 11379, |
| 63329 | /* 178971 */ GIR_EraseRootFromParent_Done, |
| 63330 | /* 178972 */ // Label 3923: @178972 |
| 63331 | /* 178972 */ GIM_Try, /*On fail goto*//*Label 3924*/ GIMT_Encode4(178995), // Rule ID 11375 // |
| 63332 | /* 178977 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63333 | /* 178980 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63334 | /* 178984 */ // (sint_to_fp:{ *:[v2f64] } VR128X:{ *:[v2i64] }:$src) => (VCVTQQ2PDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2i64] }:$src) |
| 63335 | /* 178984 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZ128rr), |
| 63336 | /* 178989 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63337 | /* 178993 */ GIR_RootConstrainSelectedInstOperands, |
| 63338 | /* 178994 */ // GIR_Coverage, 11375, |
| 63339 | /* 178994 */ GIR_Done, |
| 63340 | /* 178995 */ // Label 3924: @178995 |
| 63341 | /* 178995 */ GIM_Reject, |
| 63342 | /* 178996 */ // Label 3922: @178996 |
| 63343 | /* 178996 */ GIM_Reject, |
| 63344 | /* 178997 */ // Label 3885: @178997 |
| 63345 | /* 178997 */ GIM_Try, /*On fail goto*//*Label 3925*/ GIMT_Encode4(179056), // Rule ID 1870 // |
| 63346 | /* 179002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 63347 | /* 179005 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63348 | /* 179008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 63349 | /* 179012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63350 | /* 179016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63351 | /* 179020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63352 | /* 179023 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63353 | /* 179027 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63354 | /* 179031 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63355 | /* 179033 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63356 | /* 179040 */ // (sint_to_fp:{ *:[v4f32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 63357 | /* 179040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSrm), |
| 63358 | /* 179043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63359 | /* 179045 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63360 | /* 179049 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63361 | /* 179054 */ GIR_RootConstrainSelectedInstOperands, |
| 63362 | /* 179055 */ // GIR_Coverage, 1870, |
| 63363 | /* 179055 */ GIR_EraseRootFromParent_Done, |
| 63364 | /* 179056 */ // Label 3925: @179056 |
| 63365 | /* 179056 */ GIM_Try, /*On fail goto*//*Label 3926*/ GIMT_Encode4(179115), // Rule ID 10755 // |
| 63366 | /* 179061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63367 | /* 179064 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63368 | /* 179067 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63369 | /* 179071 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63370 | /* 179075 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63371 | /* 179079 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63372 | /* 179082 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63373 | /* 179086 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63374 | /* 179090 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63375 | /* 179092 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63376 | /* 179099 */ // (sint_to_fp:{ *:[v4f32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PSZ128rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 63377 | /* 179099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZ128rm), |
| 63378 | /* 179102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63379 | /* 179104 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63380 | /* 179108 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63381 | /* 179113 */ GIR_RootConstrainSelectedInstOperands, |
| 63382 | /* 179114 */ // GIR_Coverage, 10755, |
| 63383 | /* 179114 */ GIR_EraseRootFromParent_Done, |
| 63384 | /* 179115 */ // Label 3926: @179115 |
| 63385 | /* 179115 */ GIM_Try, /*On fail goto*//*Label 3927*/ GIMT_Encode4(179174), // Rule ID 11511 // |
| 63386 | /* 179120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63387 | /* 179123 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 63388 | /* 179126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63389 | /* 179130 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63390 | /* 179134 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63391 | /* 179138 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63392 | /* 179141 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63393 | /* 179145 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63394 | /* 179149 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63395 | /* 179151 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63396 | /* 179158 */ // (sint_to_fp:{ *:[v4f32] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PSZ256rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 63397 | /* 179158 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PSZ256rm), |
| 63398 | /* 179161 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63399 | /* 179163 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63400 | /* 179167 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63401 | /* 179172 */ GIR_RootConstrainSelectedInstOperands, |
| 63402 | /* 179173 */ // GIR_Coverage, 11511, |
| 63403 | /* 179173 */ GIR_EraseRootFromParent_Done, |
| 63404 | /* 179174 */ // Label 3927: @179174 |
| 63405 | /* 179174 */ GIM_Try, /*On fail goto*//*Label 3928*/ GIMT_Encode4(179204), // Rule ID 1868 // |
| 63406 | /* 179179 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 63407 | /* 179182 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63408 | /* 179185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 63409 | /* 179189 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 63410 | /* 179193 */ // (sint_to_fp:{ *:[v4f32] } VR128:{ *:[v4i32] }:$src) => (VCVTDQ2PSrr:{ *:[v4f32] } VR128:{ *:[v4i32] }:$src) |
| 63411 | /* 179193 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSrr), |
| 63412 | /* 179198 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63413 | /* 179202 */ GIR_RootConstrainSelectedInstOperands, |
| 63414 | /* 179203 */ // GIR_Coverage, 1868, |
| 63415 | /* 179203 */ GIR_Done, |
| 63416 | /* 179204 */ // Label 3928: @179204 |
| 63417 | /* 179204 */ GIM_Try, /*On fail goto*//*Label 3929*/ GIMT_Encode4(179234), // Rule ID 1876 // |
| 63418 | /* 179209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 63419 | /* 179212 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63420 | /* 179215 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 63421 | /* 179219 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 63422 | /* 179223 */ // (sint_to_fp:{ *:[v4f32] } VR128:{ *:[v4i32] }:$src) => (CVTDQ2PSrr:{ *:[v4f32] } VR128:{ *:[v4i32] }:$src) |
| 63423 | /* 179223 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTDQ2PSrr), |
| 63424 | /* 179228 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63425 | /* 179232 */ GIR_RootConstrainSelectedInstOperands, |
| 63426 | /* 179233 */ // GIR_Coverage, 1876, |
| 63427 | /* 179233 */ GIR_Done, |
| 63428 | /* 179234 */ // Label 3929: @179234 |
| 63429 | /* 179234 */ GIM_Try, /*On fail goto*//*Label 3930*/ GIMT_Encode4(179264), // Rule ID 10751 // |
| 63430 | /* 179239 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63431 | /* 179242 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63432 | /* 179245 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63433 | /* 179249 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63434 | /* 179253 */ // (sint_to_fp:{ *:[v4f32] } VR128X:{ *:[v4i32] }:$src) => (VCVTDQ2PSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4i32] }:$src) |
| 63435 | /* 179253 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZ128rr), |
| 63436 | /* 179258 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63437 | /* 179262 */ GIR_RootConstrainSelectedInstOperands, |
| 63438 | /* 179263 */ // GIR_Coverage, 10751, |
| 63439 | /* 179263 */ GIR_Done, |
| 63440 | /* 179264 */ // Label 3930: @179264 |
| 63441 | /* 179264 */ GIM_Try, /*On fail goto*//*Label 3931*/ GIMT_Encode4(179294), // Rule ID 11507 // |
| 63442 | /* 179269 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63443 | /* 179272 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 63444 | /* 179275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63445 | /* 179279 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63446 | /* 179283 */ // (sint_to_fp:{ *:[v4f32] } VR256X:{ *:[v4i64] }:$src) => (VCVTQQ2PSZ256rr:{ *:[v4f32] } VR256X:{ *:[v4i64] }:$src) |
| 63447 | /* 179283 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PSZ256rr), |
| 63448 | /* 179288 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63449 | /* 179292 */ GIR_RootConstrainSelectedInstOperands, |
| 63450 | /* 179293 */ // GIR_Coverage, 11507, |
| 63451 | /* 179293 */ GIR_Done, |
| 63452 | /* 179294 */ // Label 3931: @179294 |
| 63453 | /* 179294 */ GIM_Reject, |
| 63454 | /* 179295 */ // Label 3886: @179295 |
| 63455 | /* 179295 */ GIM_Try, /*On fail goto*//*Label 3932*/ GIMT_Encode4(179354), // Rule ID 1945 // |
| 63456 | /* 179300 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 63457 | /* 179303 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63458 | /* 179306 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 63459 | /* 179310 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63460 | /* 179314 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63461 | /* 179318 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63462 | /* 179321 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63463 | /* 179325 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63464 | /* 179329 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63465 | /* 179331 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63466 | /* 179338 */ // (sint_to_fp:{ *:[v4f64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PDYrm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 63467 | /* 179338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDYrm), |
| 63468 | /* 179341 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63469 | /* 179343 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63470 | /* 179347 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63471 | /* 179352 */ GIR_RootConstrainSelectedInstOperands, |
| 63472 | /* 179353 */ // GIR_Coverage, 1945, |
| 63473 | /* 179353 */ GIR_EraseRootFromParent_Done, |
| 63474 | /* 179354 */ // Label 3932: @179354 |
| 63475 | /* 179354 */ GIM_Try, /*On fail goto*//*Label 3933*/ GIMT_Encode4(179413), // Rule ID 10728 // |
| 63476 | /* 179359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63477 | /* 179362 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63478 | /* 179365 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63479 | /* 179369 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63480 | /* 179373 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63481 | /* 179377 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63482 | /* 179380 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63483 | /* 179384 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63484 | /* 179388 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63485 | /* 179390 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63486 | /* 179397 */ // (sint_to_fp:{ *:[v4f64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 63487 | /* 179397 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDZ256rm), |
| 63488 | /* 179400 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63489 | /* 179402 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63490 | /* 179406 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63491 | /* 179411 */ GIR_RootConstrainSelectedInstOperands, |
| 63492 | /* 179412 */ // GIR_Coverage, 10728, |
| 63493 | /* 179412 */ GIR_EraseRootFromParent_Done, |
| 63494 | /* 179413 */ // Label 3933: @179413 |
| 63495 | /* 179413 */ GIM_Try, /*On fail goto*//*Label 3934*/ GIMT_Encode4(179472), // Rule ID 11391 // |
| 63496 | /* 179418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63497 | /* 179421 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 63498 | /* 179424 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63499 | /* 179428 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63500 | /* 179432 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63501 | /* 179436 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63502 | /* 179439 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63503 | /* 179443 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63504 | /* 179447 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63505 | /* 179449 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63506 | /* 179456 */ // (sint_to_fp:{ *:[v4f64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 63507 | /* 179456 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZ256rm), |
| 63508 | /* 179459 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63509 | /* 179461 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63510 | /* 179465 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63511 | /* 179470 */ GIR_RootConstrainSelectedInstOperands, |
| 63512 | /* 179471 */ // GIR_Coverage, 11391, |
| 63513 | /* 179471 */ GIR_EraseRootFromParent_Done, |
| 63514 | /* 179472 */ // Label 3934: @179472 |
| 63515 | /* 179472 */ GIM_Try, /*On fail goto*//*Label 3935*/ GIMT_Encode4(179498), // Rule ID 1947 // |
| 63516 | /* 179477 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 63517 | /* 179480 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63518 | /* 179483 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 63519 | /* 179487 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 63520 | /* 179491 */ // (sint_to_fp:{ *:[v4f64] } VR128:{ *:[v4i32] }:$src) => (VCVTDQ2PDYrr:{ *:[v4f64] } VR128:{ *:[v4i32] }:$src) |
| 63521 | /* 179491 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDYrr), |
| 63522 | /* 179496 */ GIR_RootConstrainSelectedInstOperands, |
| 63523 | /* 179497 */ // GIR_Coverage, 1947, |
| 63524 | /* 179497 */ GIR_Done, |
| 63525 | /* 179498 */ // Label 3935: @179498 |
| 63526 | /* 179498 */ GIM_Try, /*On fail goto*//*Label 3936*/ GIMT_Encode4(179524), // Rule ID 10724 // |
| 63527 | /* 179503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63528 | /* 179506 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63529 | /* 179509 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63530 | /* 179513 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63531 | /* 179517 */ // (sint_to_fp:{ *:[v4f64] } VR128X:{ *:[v4i32] }:$src) => (VCVTDQ2PDZ256rr:{ *:[v4f64] } VR128X:{ *:[v4i32] }:$src) |
| 63532 | /* 179517 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDZ256rr), |
| 63533 | /* 179522 */ GIR_RootConstrainSelectedInstOperands, |
| 63534 | /* 179523 */ // GIR_Coverage, 10724, |
| 63535 | /* 179523 */ GIR_Done, |
| 63536 | /* 179524 */ // Label 3936: @179524 |
| 63537 | /* 179524 */ GIM_Try, /*On fail goto*//*Label 3937*/ GIMT_Encode4(179554), // Rule ID 11387 // |
| 63538 | /* 179529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63539 | /* 179532 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 63540 | /* 179535 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63541 | /* 179539 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63542 | /* 179543 */ // (sint_to_fp:{ *:[v4f64] } VR256X:{ *:[v4i64] }:$src) => (VCVTQQ2PDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4i64] }:$src) |
| 63543 | /* 179543 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZ256rr), |
| 63544 | /* 179548 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63545 | /* 179552 */ GIR_RootConstrainSelectedInstOperands, |
| 63546 | /* 179553 */ // GIR_Coverage, 11387, |
| 63547 | /* 179553 */ GIR_Done, |
| 63548 | /* 179554 */ // Label 3937: @179554 |
| 63549 | /* 179554 */ GIM_Reject, |
| 63550 | /* 179555 */ // Label 3887: @179555 |
| 63551 | /* 179555 */ GIM_Try, /*On fail goto*//*Label 3938*/ GIMT_Encode4(179614), // Rule ID 11457 // |
| 63552 | /* 179560 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63553 | /* 179563 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63554 | /* 179566 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63555 | /* 179570 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63556 | /* 179574 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63557 | /* 179578 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63558 | /* 179581 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63559 | /* 179585 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63560 | /* 179589 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63561 | /* 179591 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63562 | /* 179598 */ // (sint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PHZ256rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 63563 | /* 179598 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PHZ256rm), |
| 63564 | /* 179601 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63565 | /* 179603 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63566 | /* 179607 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63567 | /* 179612 */ GIR_RootConstrainSelectedInstOperands, |
| 63568 | /* 179613 */ // GIR_Coverage, 11457, |
| 63569 | /* 179613 */ GIR_EraseRootFromParent_Done, |
| 63570 | /* 179614 */ // Label 3938: @179614 |
| 63571 | /* 179614 */ GIM_Try, /*On fail goto*//*Label 3939*/ GIMT_Encode4(179673), // Rule ID 14823 // |
| 63572 | /* 179619 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63573 | /* 179622 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 63574 | /* 179625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63575 | /* 179629 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63576 | /* 179633 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63577 | /* 179637 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63578 | /* 179640 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63579 | /* 179644 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63580 | /* 179648 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63581 | /* 179650 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63582 | /* 179657 */ // (sint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTW2PHZ128rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 63583 | /* 179657 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZ128rm), |
| 63584 | /* 179660 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63585 | /* 179662 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63586 | /* 179666 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63587 | /* 179671 */ GIR_RootConstrainSelectedInstOperands, |
| 63588 | /* 179672 */ // GIR_Coverage, 14823, |
| 63589 | /* 179672 */ GIR_EraseRootFromParent_Done, |
| 63590 | /* 179673 */ // Label 3939: @179673 |
| 63591 | /* 179673 */ GIM_Try, /*On fail goto*//*Label 3940*/ GIMT_Encode4(179732), // Rule ID 15123 // |
| 63592 | /* 179678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63593 | /* 179681 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63594 | /* 179684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63595 | /* 179688 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63596 | /* 179692 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63597 | /* 179696 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63598 | /* 179699 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63599 | /* 179703 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63600 | /* 179707 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63601 | /* 179709 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63602 | /* 179716 */ // (sint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PHZrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 63603 | /* 179716 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PHZrm), |
| 63604 | /* 179719 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63605 | /* 179721 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63606 | /* 179725 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63607 | /* 179730 */ GIR_RootConstrainSelectedInstOperands, |
| 63608 | /* 179731 */ // GIR_Coverage, 15123, |
| 63609 | /* 179731 */ GIR_EraseRootFromParent_Done, |
| 63610 | /* 179732 */ // Label 3940: @179732 |
| 63611 | /* 179732 */ GIM_Try, /*On fail goto*//*Label 3941*/ GIMT_Encode4(179762), // Rule ID 11453 // |
| 63612 | /* 179737 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63613 | /* 179740 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63614 | /* 179743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63615 | /* 179747 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63616 | /* 179751 */ // (sint_to_fp:{ *:[v8f16] } VR256X:{ *:[v8i32] }:$src) => (VCVTDQ2PHZ256rr:{ *:[v8f16] } VR256X:{ *:[v8i32] }:$src) |
| 63617 | /* 179751 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PHZ256rr), |
| 63618 | /* 179756 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63619 | /* 179760 */ GIR_RootConstrainSelectedInstOperands, |
| 63620 | /* 179761 */ // GIR_Coverage, 11453, |
| 63621 | /* 179761 */ GIR_Done, |
| 63622 | /* 179762 */ // Label 3941: @179762 |
| 63623 | /* 179762 */ GIM_Try, /*On fail goto*//*Label 3942*/ GIMT_Encode4(179792), // Rule ID 14819 // |
| 63624 | /* 179767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63625 | /* 179770 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 63626 | /* 179773 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63627 | /* 179777 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63628 | /* 179781 */ // (sint_to_fp:{ *:[v8f16] } VR128X:{ *:[v8i16] }:$src) => (VCVTW2PHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8i16] }:$src) |
| 63629 | /* 179781 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZ128rr), |
| 63630 | /* 179786 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63631 | /* 179790 */ GIR_RootConstrainSelectedInstOperands, |
| 63632 | /* 179791 */ // GIR_Coverage, 14819, |
| 63633 | /* 179791 */ GIR_Done, |
| 63634 | /* 179792 */ // Label 3942: @179792 |
| 63635 | /* 179792 */ GIM_Try, /*On fail goto*//*Label 3943*/ GIMT_Encode4(179822), // Rule ID 15119 // |
| 63636 | /* 179797 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63637 | /* 179800 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63638 | /* 179803 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63639 | /* 179807 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63640 | /* 179811 */ // (sint_to_fp:{ *:[v8f16] } VR512:{ *:[v8i64] }:$src) => (VCVTQQ2PHZrr:{ *:[v8f16] } VR512:{ *:[v8i64] }:$src) |
| 63641 | /* 179811 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PHZrr), |
| 63642 | /* 179816 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63643 | /* 179820 */ GIR_RootConstrainSelectedInstOperands, |
| 63644 | /* 179821 */ // GIR_Coverage, 15119, |
| 63645 | /* 179821 */ GIR_Done, |
| 63646 | /* 179822 */ // Label 3943: @179822 |
| 63647 | /* 179822 */ GIM_Reject, |
| 63648 | /* 179823 */ // Label 3888: @179823 |
| 63649 | /* 179823 */ GIM_Try, /*On fail goto*//*Label 3944*/ GIMT_Encode4(179882), // Rule ID 1874 // |
| 63650 | /* 179828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 63651 | /* 179831 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63652 | /* 179834 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 63653 | /* 179838 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63654 | /* 179842 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63655 | /* 179846 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63656 | /* 179849 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63657 | /* 179853 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63658 | /* 179857 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63659 | /* 179859 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63660 | /* 179866 */ // (sint_to_fp:{ *:[v8f32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 63661 | /* 179866 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSYrm), |
| 63662 | /* 179869 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63663 | /* 179871 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63664 | /* 179875 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63665 | /* 179880 */ GIR_RootConstrainSelectedInstOperands, |
| 63666 | /* 179881 */ // GIR_Coverage, 1874, |
| 63667 | /* 179881 */ GIR_EraseRootFromParent_Done, |
| 63668 | /* 179882 */ // Label 3944: @179882 |
| 63669 | /* 179882 */ GIM_Try, /*On fail goto*//*Label 3945*/ GIMT_Encode4(179941), // Rule ID 10767 // |
| 63670 | /* 179887 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63671 | /* 179890 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63672 | /* 179893 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63673 | /* 179897 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63674 | /* 179901 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63675 | /* 179905 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63676 | /* 179908 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63677 | /* 179912 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63678 | /* 179916 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63679 | /* 179918 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63680 | /* 179925 */ // (sint_to_fp:{ *:[v8f32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PSZ256rm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 63681 | /* 179925 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZ256rm), |
| 63682 | /* 179928 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63683 | /* 179930 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63684 | /* 179934 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63685 | /* 179939 */ GIR_RootConstrainSelectedInstOperands, |
| 63686 | /* 179940 */ // GIR_Coverage, 10767, |
| 63687 | /* 179940 */ GIR_EraseRootFromParent_Done, |
| 63688 | /* 179941 */ // Label 3945: @179941 |
| 63689 | /* 179941 */ GIM_Try, /*On fail goto*//*Label 3946*/ GIMT_Encode4(180000), // Rule ID 11496 // |
| 63690 | /* 179946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 63691 | /* 179949 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63692 | /* 179952 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63693 | /* 179956 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63694 | /* 179960 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63695 | /* 179964 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63696 | /* 179967 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63697 | /* 179971 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63698 | /* 179975 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63699 | /* 179977 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63700 | /* 179984 */ // (sint_to_fp:{ *:[v8f32] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PSZrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 63701 | /* 179984 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PSZrm), |
| 63702 | /* 179987 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63703 | /* 179989 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63704 | /* 179993 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63705 | /* 179998 */ GIR_RootConstrainSelectedInstOperands, |
| 63706 | /* 179999 */ // GIR_Coverage, 11496, |
| 63707 | /* 179999 */ GIR_EraseRootFromParent_Done, |
| 63708 | /* 180000 */ // Label 3946: @180000 |
| 63709 | /* 180000 */ GIM_Try, /*On fail goto*//*Label 3947*/ GIMT_Encode4(180030), // Rule ID 1872 // |
| 63710 | /* 180005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 63711 | /* 180008 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63712 | /* 180011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 63713 | /* 180015 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 63714 | /* 180019 */ // (sint_to_fp:{ *:[v8f32] } VR256:{ *:[v8i32] }:$src) => (VCVTDQ2PSYrr:{ *:[v8f32] } VR256:{ *:[v8i32] }:$src) |
| 63715 | /* 180019 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSYrr), |
| 63716 | /* 180024 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63717 | /* 180028 */ GIR_RootConstrainSelectedInstOperands, |
| 63718 | /* 180029 */ // GIR_Coverage, 1872, |
| 63719 | /* 180029 */ GIR_Done, |
| 63720 | /* 180030 */ // Label 3947: @180030 |
| 63721 | /* 180030 */ GIM_Try, /*On fail goto*//*Label 3948*/ GIMT_Encode4(180060), // Rule ID 10763 // |
| 63722 | /* 180035 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63723 | /* 180038 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63724 | /* 180041 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63725 | /* 180045 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63726 | /* 180049 */ // (sint_to_fp:{ *:[v8f32] } VR256X:{ *:[v8i32] }:$src) => (VCVTDQ2PSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8i32] }:$src) |
| 63727 | /* 180049 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZ256rr), |
| 63728 | /* 180054 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63729 | /* 180058 */ GIR_RootConstrainSelectedInstOperands, |
| 63730 | /* 180059 */ // GIR_Coverage, 10763, |
| 63731 | /* 180059 */ GIR_Done, |
| 63732 | /* 180060 */ // Label 3948: @180060 |
| 63733 | /* 180060 */ GIM_Try, /*On fail goto*//*Label 3949*/ GIMT_Encode4(180090), // Rule ID 11492 // |
| 63734 | /* 180065 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 63735 | /* 180068 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63736 | /* 180071 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63737 | /* 180075 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63738 | /* 180079 */ // (sint_to_fp:{ *:[v8f32] } VR512:{ *:[v8i64] }:$src) => (VCVTQQ2PSZrr:{ *:[v8f32] } VR512:{ *:[v8i64] }:$src) |
| 63739 | /* 180079 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PSZrr), |
| 63740 | /* 180084 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63741 | /* 180088 */ GIR_RootConstrainSelectedInstOperands, |
| 63742 | /* 180089 */ // GIR_Coverage, 11492, |
| 63743 | /* 180089 */ GIR_Done, |
| 63744 | /* 180090 */ // Label 3949: @180090 |
| 63745 | /* 180090 */ GIM_Reject, |
| 63746 | /* 180091 */ // Label 3889: @180091 |
| 63747 | /* 180091 */ GIM_Try, /*On fail goto*//*Label 3950*/ GIMT_Encode4(180150), // Rule ID 10704 // |
| 63748 | /* 180096 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63749 | /* 180099 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63750 | /* 180102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63751 | /* 180106 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63752 | /* 180110 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63753 | /* 180114 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63754 | /* 180117 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63755 | /* 180121 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63756 | /* 180125 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63757 | /* 180127 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63758 | /* 180134 */ // (sint_to_fp:{ *:[v8f64] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 63759 | /* 180134 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDZrm), |
| 63760 | /* 180137 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63761 | /* 180139 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63762 | /* 180143 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63763 | /* 180148 */ GIR_RootConstrainSelectedInstOperands, |
| 63764 | /* 180149 */ // GIR_Coverage, 10704, |
| 63765 | /* 180149 */ GIR_EraseRootFromParent_Done, |
| 63766 | /* 180150 */ // Label 3950: @180150 |
| 63767 | /* 180150 */ GIM_Try, /*On fail goto*//*Label 3951*/ GIMT_Encode4(180209), // Rule ID 11364 // |
| 63768 | /* 180155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 63769 | /* 180158 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63770 | /* 180161 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63771 | /* 180165 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63772 | /* 180169 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63773 | /* 180173 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63774 | /* 180176 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63775 | /* 180180 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63776 | /* 180184 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63777 | /* 180186 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63778 | /* 180193 */ // (sint_to_fp:{ *:[v8f64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 63779 | /* 180193 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZrm), |
| 63780 | /* 180196 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63781 | /* 180198 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63782 | /* 180202 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63783 | /* 180207 */ GIR_RootConstrainSelectedInstOperands, |
| 63784 | /* 180208 */ // GIR_Coverage, 11364, |
| 63785 | /* 180208 */ GIR_EraseRootFromParent_Done, |
| 63786 | /* 180209 */ // Label 3951: @180209 |
| 63787 | /* 180209 */ GIM_Try, /*On fail goto*//*Label 3952*/ GIMT_Encode4(180235), // Rule ID 10700 // |
| 63788 | /* 180214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63789 | /* 180217 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63790 | /* 180220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63791 | /* 180224 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63792 | /* 180228 */ // (sint_to_fp:{ *:[v8f64] } VR256X:{ *:[v8i32] }:$src) => (VCVTDQ2PDZrr:{ *:[v8f64] } VR256X:{ *:[v8i32] }:$src) |
| 63793 | /* 180228 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDZrr), |
| 63794 | /* 180233 */ GIR_RootConstrainSelectedInstOperands, |
| 63795 | /* 180234 */ // GIR_Coverage, 10700, |
| 63796 | /* 180234 */ GIR_Done, |
| 63797 | /* 180235 */ // Label 3952: @180235 |
| 63798 | /* 180235 */ GIM_Try, /*On fail goto*//*Label 3953*/ GIMT_Encode4(180265), // Rule ID 11360 // |
| 63799 | /* 180240 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 63800 | /* 180243 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63801 | /* 180246 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63802 | /* 180250 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63803 | /* 180254 */ // (sint_to_fp:{ *:[v8f64] } VR512:{ *:[v8i64] }:$src) => (VCVTQQ2PDZrr:{ *:[v8f64] } VR512:{ *:[v8i64] }:$src) |
| 63804 | /* 180254 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZrr), |
| 63805 | /* 180259 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63806 | /* 180263 */ GIR_RootConstrainSelectedInstOperands, |
| 63807 | /* 180264 */ // GIR_Coverage, 11360, |
| 63808 | /* 180264 */ GIR_Done, |
| 63809 | /* 180265 */ // Label 3953: @180265 |
| 63810 | /* 180265 */ GIM_Reject, |
| 63811 | /* 180266 */ // Label 3890: @180266 |
| 63812 | /* 180266 */ GIM_Try, /*On fail goto*//*Label 3954*/ GIMT_Encode4(180325), // Rule ID 11442 // |
| 63813 | /* 180271 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63814 | /* 180274 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 63815 | /* 180277 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63816 | /* 180281 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63817 | /* 180285 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63818 | /* 180289 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63819 | /* 180292 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63820 | /* 180296 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63821 | /* 180300 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63822 | /* 180302 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63823 | /* 180309 */ // (sint_to_fp:{ *:[v16f16] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PHZrm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 63824 | /* 180309 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PHZrm), |
| 63825 | /* 180312 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63826 | /* 180314 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63827 | /* 180318 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63828 | /* 180323 */ GIR_RootConstrainSelectedInstOperands, |
| 63829 | /* 180324 */ // GIR_Coverage, 11442, |
| 63830 | /* 180324 */ GIR_EraseRootFromParent_Done, |
| 63831 | /* 180325 */ // Label 3954: @180325 |
| 63832 | /* 180325 */ GIM_Try, /*On fail goto*//*Label 3955*/ GIMT_Encode4(180384), // Rule ID 14835 // |
| 63833 | /* 180330 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63834 | /* 180333 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 63835 | /* 180336 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63836 | /* 180340 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63837 | /* 180344 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63838 | /* 180348 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63839 | /* 180351 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63840 | /* 180355 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63841 | /* 180359 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63842 | /* 180361 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63843 | /* 180368 */ // (sint_to_fp:{ *:[v16f16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTW2PHZ256rm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 63844 | /* 180368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZ256rm), |
| 63845 | /* 180371 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63846 | /* 180373 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63847 | /* 180377 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63848 | /* 180382 */ GIR_RootConstrainSelectedInstOperands, |
| 63849 | /* 180383 */ // GIR_Coverage, 14835, |
| 63850 | /* 180383 */ GIR_EraseRootFromParent_Done, |
| 63851 | /* 180384 */ // Label 3955: @180384 |
| 63852 | /* 180384 */ GIM_Try, /*On fail goto*//*Label 3956*/ GIMT_Encode4(180414), // Rule ID 11438 // |
| 63853 | /* 180389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63854 | /* 180392 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 63855 | /* 180395 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63856 | /* 180399 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63857 | /* 180403 */ // (sint_to_fp:{ *:[v16f16] } VR512:{ *:[v16i32] }:$src) => (VCVTDQ2PHZrr:{ *:[v16f16] } VR512:{ *:[v16i32] }:$src) |
| 63858 | /* 180403 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PHZrr), |
| 63859 | /* 180408 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63860 | /* 180412 */ GIR_RootConstrainSelectedInstOperands, |
| 63861 | /* 180413 */ // GIR_Coverage, 11438, |
| 63862 | /* 180413 */ GIR_Done, |
| 63863 | /* 180414 */ // Label 3956: @180414 |
| 63864 | /* 180414 */ GIM_Try, /*On fail goto*//*Label 3957*/ GIMT_Encode4(180444), // Rule ID 14831 // |
| 63865 | /* 180419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63866 | /* 180422 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 63867 | /* 180425 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63868 | /* 180429 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63869 | /* 180433 */ // (sint_to_fp:{ *:[v16f16] } VR256X:{ *:[v16i16] }:$src) => (VCVTW2PHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16i16] }:$src) |
| 63870 | /* 180433 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZ256rr), |
| 63871 | /* 180438 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63872 | /* 180442 */ GIR_RootConstrainSelectedInstOperands, |
| 63873 | /* 180443 */ // GIR_Coverage, 14831, |
| 63874 | /* 180443 */ GIR_Done, |
| 63875 | /* 180444 */ // Label 3957: @180444 |
| 63876 | /* 180444 */ GIM_Reject, |
| 63877 | /* 180445 */ // Label 3891: @180445 |
| 63878 | /* 180445 */ GIM_Try, /*On fail goto*//*Label 3958*/ GIMT_Encode4(180533), |
| 63879 | /* 180450 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 63880 | /* 180453 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63881 | /* 180457 */ GIM_Try, /*On fail goto*//*Label 3959*/ GIMT_Encode4(180509), // Rule ID 10740 // |
| 63882 | /* 180462 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63883 | /* 180465 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63884 | /* 180469 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63885 | /* 180473 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63886 | /* 180476 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63887 | /* 180480 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63888 | /* 180484 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63889 | /* 180486 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63890 | /* 180493 */ // (sint_to_fp:{ *:[v16f32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PSZrm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 63891 | /* 180493 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZrm), |
| 63892 | /* 180496 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63893 | /* 180498 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63894 | /* 180502 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63895 | /* 180507 */ GIR_RootConstrainSelectedInstOperands, |
| 63896 | /* 180508 */ // GIR_Coverage, 10740, |
| 63897 | /* 180508 */ GIR_EraseRootFromParent_Done, |
| 63898 | /* 180509 */ // Label 3959: @180509 |
| 63899 | /* 180509 */ GIM_Try, /*On fail goto*//*Label 3960*/ GIMT_Encode4(180532), // Rule ID 10736 // |
| 63900 | /* 180514 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63901 | /* 180517 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63902 | /* 180521 */ // (sint_to_fp:{ *:[v16f32] } VR512:{ *:[v16i32] }:$src) => (VCVTDQ2PSZrr:{ *:[v16f32] } VR512:{ *:[v16i32] }:$src) |
| 63903 | /* 180521 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZrr), |
| 63904 | /* 180526 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63905 | /* 180530 */ GIR_RootConstrainSelectedInstOperands, |
| 63906 | /* 180531 */ // GIR_Coverage, 10736, |
| 63907 | /* 180531 */ GIR_Done, |
| 63908 | /* 180532 */ // Label 3960: @180532 |
| 63909 | /* 180532 */ GIM_Reject, |
| 63910 | /* 180533 */ // Label 3958: @180533 |
| 63911 | /* 180533 */ GIM_Reject, |
| 63912 | /* 180534 */ // Label 3892: @180534 |
| 63913 | /* 180534 */ GIM_Try, /*On fail goto*//*Label 3961*/ GIMT_Encode4(180622), |
| 63914 | /* 180539 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 63915 | /* 180542 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63916 | /* 180546 */ GIM_Try, /*On fail goto*//*Label 3962*/ GIMT_Encode4(180598), // Rule ID 14808 // |
| 63917 | /* 180551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63918 | /* 180554 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63919 | /* 180558 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63920 | /* 180562 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63921 | /* 180565 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63922 | /* 180569 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63923 | /* 180573 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63924 | /* 180575 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63925 | /* 180582 */ // (sint_to_fp:{ *:[v32f16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTW2PHZrm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 63926 | /* 180582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZrm), |
| 63927 | /* 180585 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63928 | /* 180587 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63929 | /* 180591 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63930 | /* 180596 */ GIR_RootConstrainSelectedInstOperands, |
| 63931 | /* 180597 */ // GIR_Coverage, 14808, |
| 63932 | /* 180597 */ GIR_EraseRootFromParent_Done, |
| 63933 | /* 180598 */ // Label 3962: @180598 |
| 63934 | /* 180598 */ GIM_Try, /*On fail goto*//*Label 3963*/ GIMT_Encode4(180621), // Rule ID 14804 // |
| 63935 | /* 180603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63936 | /* 180606 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63937 | /* 180610 */ // (sint_to_fp:{ *:[v32f16] } VR512:{ *:[v32i16] }:$src) => (VCVTW2PHZrr:{ *:[v32f16] } VR512:{ *:[v32i16] }:$src) |
| 63938 | /* 180610 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZrr), |
| 63939 | /* 180615 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63940 | /* 180619 */ GIR_RootConstrainSelectedInstOperands, |
| 63941 | /* 180620 */ // GIR_Coverage, 14804, |
| 63942 | /* 180620 */ GIR_Done, |
| 63943 | /* 180621 */ // Label 3963: @180621 |
| 63944 | /* 180621 */ GIM_Reject, |
| 63945 | /* 180622 */ // Label 3961: @180622 |
| 63946 | /* 180622 */ GIM_Reject, |
| 63947 | /* 180623 */ // Label 3893: @180623 |
| 63948 | /* 180623 */ GIM_Reject, |
| 63949 | /* 180624 */ // Label 52: @180624 |
| 63950 | /* 180624 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3976*/ GIMT_Encode4(182870), |
| 63951 | /* 180635 */ /*GILLT_s16*//*Label 3964*/ GIMT_Encode4(180719), |
| 63952 | /* 180639 */ /*GILLT_s32*//*Label 3965*/ GIMT_Encode4(180962), |
| 63953 | /* 180643 */ /*GILLT_s64*//*Label 3966*/ GIMT_Encode4(181205), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 63954 | /* 180659 */ /*GILLT_v2s64*//*Label 3967*/ GIMT_Encode4(181448), GIMT_Encode4(0), |
| 63955 | /* 180667 */ /*GILLT_v4s32*//*Label 3968*/ GIMT_Encode4(181537), |
| 63956 | /* 180671 */ /*GILLT_v4s64*//*Label 3969*/ GIMT_Encode4(181716), GIMT_Encode4(0), |
| 63957 | /* 180679 */ /*GILLT_v8s16*//*Label 3970*/ GIMT_Encode4(181891), |
| 63958 | /* 180683 */ /*GILLT_v8s32*//*Label 3971*/ GIMT_Encode4(182159), |
| 63959 | /* 180687 */ /*GILLT_v8s64*//*Label 3972*/ GIMT_Encode4(182338), GIMT_Encode4(0), GIMT_Encode4(0), |
| 63960 | /* 180699 */ /*GILLT_v16s16*//*Label 3973*/ GIMT_Encode4(182513), |
| 63961 | /* 180703 */ /*GILLT_v16s32*//*Label 3974*/ GIMT_Encode4(182692), GIMT_Encode4(0), GIMT_Encode4(0), |
| 63962 | /* 180715 */ /*GILLT_v32s16*//*Label 3975*/ GIMT_Encode4(182781), |
| 63963 | /* 180719 */ // Label 3964: @180719 |
| 63964 | /* 180719 */ GIM_Try, /*On fail goto*//*Label 3977*/ GIMT_Encode4(180795), // Rule ID 22187 // |
| 63965 | /* 180724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63966 | /* 180727 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63967 | /* 180730 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 63968 | /* 180734 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63969 | /* 180738 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63970 | /* 180742 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63971 | /* 180745 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63972 | /* 180749 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63973 | /* 180753 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63974 | /* 180755 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63975 | /* 180762 */ // (uint_to_fp:{ *:[f16] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUSI642SHZrm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 63976 | /* 180762 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 63977 | /* 180765 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63978 | /* 180769 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 63979 | /* 180774 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63980 | /* 180776 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SHZrm), |
| 63981 | /* 180779 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63982 | /* 180781 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63983 | /* 180784 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63984 | /* 180788 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63985 | /* 180793 */ GIR_RootConstrainSelectedInstOperands, |
| 63986 | /* 180794 */ // GIR_Coverage, 22187, |
| 63987 | /* 180794 */ GIR_EraseRootFromParent_Done, |
| 63988 | /* 180795 */ // Label 3977: @180795 |
| 63989 | /* 180795 */ GIM_Try, /*On fail goto*//*Label 3978*/ GIMT_Encode4(180871), // Rule ID 22185 // |
| 63990 | /* 180800 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63991 | /* 180803 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63992 | /* 180806 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 63993 | /* 180810 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63994 | /* 180814 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63995 | /* 180818 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63996 | /* 180821 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63997 | /* 180825 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 63998 | /* 180829 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63999 | /* 180831 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64000 | /* 180838 */ // (uint_to_fp:{ *:[f16] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTUSI2SHZrm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 64001 | /* 180838 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 64002 | /* 180841 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64003 | /* 180845 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64004 | /* 180850 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64005 | /* 180852 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SHZrm), |
| 64006 | /* 180855 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64007 | /* 180857 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64008 | /* 180860 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64009 | /* 180864 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64010 | /* 180869 */ GIR_RootConstrainSelectedInstOperands, |
| 64011 | /* 180870 */ // GIR_Coverage, 22185, |
| 64012 | /* 180870 */ GIR_EraseRootFromParent_Done, |
| 64013 | /* 180871 */ // Label 3978: @180871 |
| 64014 | /* 180871 */ GIM_Try, /*On fail goto*//*Label 3979*/ GIMT_Encode4(180916), // Rule ID 22189 // |
| 64015 | /* 180876 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64016 | /* 180879 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 64017 | /* 180882 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 64018 | /* 180886 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 64019 | /* 180890 */ // (uint_to_fp:{ *:[f16] } GR32:{ *:[i32] }:$src) => (VCVTUSI2SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), GR32:{ *:[i32] }:$src) |
| 64020 | /* 180890 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 64021 | /* 180893 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64022 | /* 180897 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64023 | /* 180902 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64024 | /* 180904 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SHZrr), |
| 64025 | /* 180907 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64026 | /* 180909 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64027 | /* 180912 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 64028 | /* 180914 */ GIR_RootConstrainSelectedInstOperands, |
| 64029 | /* 180915 */ // GIR_Coverage, 22189, |
| 64030 | /* 180915 */ GIR_EraseRootFromParent_Done, |
| 64031 | /* 180916 */ // Label 3979: @180916 |
| 64032 | /* 180916 */ GIM_Try, /*On fail goto*//*Label 3980*/ GIMT_Encode4(180961), // Rule ID 22191 // |
| 64033 | /* 180921 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64034 | /* 180924 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 64035 | /* 180927 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 64036 | /* 180931 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 64037 | /* 180935 */ // (uint_to_fp:{ *:[f16] } GR64:{ *:[i64] }:$src) => (VCVTUSI642SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), GR64:{ *:[i64] }:$src) |
| 64038 | /* 180935 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 64039 | /* 180938 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64040 | /* 180942 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64041 | /* 180947 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64042 | /* 180949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SHZrr), |
| 64043 | /* 180952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64044 | /* 180954 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64045 | /* 180957 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 64046 | /* 180959 */ GIR_RootConstrainSelectedInstOperands, |
| 64047 | /* 180960 */ // GIR_Coverage, 22191, |
| 64048 | /* 180960 */ GIR_EraseRootFromParent_Done, |
| 64049 | /* 180961 */ // Label 3980: @180961 |
| 64050 | /* 180961 */ GIM_Reject, |
| 64051 | /* 180962 */ // Label 3965: @180962 |
| 64052 | /* 180962 */ GIM_Try, /*On fail goto*//*Label 3981*/ GIMT_Encode4(181038), // Rule ID 21146 // |
| 64053 | /* 180967 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64054 | /* 180970 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 64055 | /* 180973 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 64056 | /* 180977 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64057 | /* 180981 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64058 | /* 180985 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64059 | /* 180988 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64060 | /* 180992 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64061 | /* 180996 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64062 | /* 180998 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64063 | /* 181005 */ // (uint_to_fp:{ *:[f32] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUSI642SSZrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 64064 | /* 181005 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 64065 | /* 181008 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64066 | /* 181012 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64067 | /* 181017 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64068 | /* 181019 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SSZrm), |
| 64069 | /* 181022 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64070 | /* 181024 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64071 | /* 181027 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64072 | /* 181031 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64073 | /* 181036 */ GIR_RootConstrainSelectedInstOperands, |
| 64074 | /* 181037 */ // GIR_Coverage, 21146, |
| 64075 | /* 181037 */ GIR_EraseRootFromParent_Done, |
| 64076 | /* 181038 */ // Label 3981: @181038 |
| 64077 | /* 181038 */ GIM_Try, /*On fail goto*//*Label 3982*/ GIMT_Encode4(181114), // Rule ID 21144 // |
| 64078 | /* 181043 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64079 | /* 181046 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 64080 | /* 181049 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 64081 | /* 181053 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64082 | /* 181057 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64083 | /* 181061 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64084 | /* 181064 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64085 | /* 181068 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 64086 | /* 181072 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64087 | /* 181074 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64088 | /* 181081 */ // (uint_to_fp:{ *:[f32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTUSI2SSZrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 64089 | /* 181081 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 64090 | /* 181084 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64091 | /* 181088 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64092 | /* 181093 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64093 | /* 181095 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SSZrm), |
| 64094 | /* 181098 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64095 | /* 181100 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64096 | /* 181103 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64097 | /* 181107 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64098 | /* 181112 */ GIR_RootConstrainSelectedInstOperands, |
| 64099 | /* 181113 */ // GIR_Coverage, 21144, |
| 64100 | /* 181113 */ GIR_EraseRootFromParent_Done, |
| 64101 | /* 181114 */ // Label 3982: @181114 |
| 64102 | /* 181114 */ GIM_Try, /*On fail goto*//*Label 3983*/ GIMT_Encode4(181159), // Rule ID 21152 // |
| 64103 | /* 181119 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64104 | /* 181122 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 64105 | /* 181125 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 64106 | /* 181129 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 64107 | /* 181133 */ // (uint_to_fp:{ *:[f32] } GR32:{ *:[i32] }:$src) => (VCVTUSI2SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR32:{ *:[i32] }:$src) |
| 64108 | /* 181133 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 64109 | /* 181136 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64110 | /* 181140 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64111 | /* 181145 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64112 | /* 181147 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SSZrr), |
| 64113 | /* 181150 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64114 | /* 181152 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64115 | /* 181155 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 64116 | /* 181157 */ GIR_RootConstrainSelectedInstOperands, |
| 64117 | /* 181158 */ // GIR_Coverage, 21152, |
| 64118 | /* 181158 */ GIR_EraseRootFromParent_Done, |
| 64119 | /* 181159 */ // Label 3983: @181159 |
| 64120 | /* 181159 */ GIM_Try, /*On fail goto*//*Label 3984*/ GIMT_Encode4(181204), // Rule ID 21154 // |
| 64121 | /* 181164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64122 | /* 181167 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 64123 | /* 181170 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 64124 | /* 181174 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 64125 | /* 181178 */ // (uint_to_fp:{ *:[f32] } GR64:{ *:[i64] }:$src) => (VCVTUSI642SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR64:{ *:[i64] }:$src) |
| 64126 | /* 181178 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 64127 | /* 181181 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64128 | /* 181185 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64129 | /* 181190 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64130 | /* 181192 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SSZrr), |
| 64131 | /* 181195 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64132 | /* 181197 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64133 | /* 181200 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 64134 | /* 181202 */ GIR_RootConstrainSelectedInstOperands, |
| 64135 | /* 181203 */ // GIR_Coverage, 21154, |
| 64136 | /* 181203 */ GIR_EraseRootFromParent_Done, |
| 64137 | /* 181204 */ // Label 3984: @181204 |
| 64138 | /* 181204 */ GIM_Reject, |
| 64139 | /* 181205 */ // Label 3966: @181205 |
| 64140 | /* 181205 */ GIM_Try, /*On fail goto*//*Label 3985*/ GIMT_Encode4(181281), // Rule ID 21150 // |
| 64141 | /* 181210 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64142 | /* 181213 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 64143 | /* 181216 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 64144 | /* 181220 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64145 | /* 181224 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64146 | /* 181228 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64147 | /* 181231 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64148 | /* 181235 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64149 | /* 181239 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64150 | /* 181241 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64151 | /* 181248 */ // (uint_to_fp:{ *:[f64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUSI642SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 64152 | /* 181248 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 64153 | /* 181251 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64154 | /* 181255 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64155 | /* 181260 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64156 | /* 181262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SDZrm), |
| 64157 | /* 181265 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64158 | /* 181267 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64159 | /* 181270 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64160 | /* 181274 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64161 | /* 181279 */ GIR_RootConstrainSelectedInstOperands, |
| 64162 | /* 181280 */ // GIR_Coverage, 21150, |
| 64163 | /* 181280 */ GIR_EraseRootFromParent_Done, |
| 64164 | /* 181281 */ // Label 3985: @181281 |
| 64165 | /* 181281 */ GIM_Try, /*On fail goto*//*Label 3986*/ GIMT_Encode4(181357), // Rule ID 21148 // |
| 64166 | /* 181286 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64167 | /* 181289 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 64168 | /* 181292 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 64169 | /* 181296 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64170 | /* 181300 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64171 | /* 181304 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64172 | /* 181307 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64173 | /* 181311 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 64174 | /* 181315 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64175 | /* 181317 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64176 | /* 181324 */ // (uint_to_fp:{ *:[f64] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTUSI2SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 64177 | /* 181324 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 64178 | /* 181327 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64179 | /* 181331 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64180 | /* 181336 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64181 | /* 181338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SDZrm), |
| 64182 | /* 181341 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64183 | /* 181343 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64184 | /* 181346 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64185 | /* 181350 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64186 | /* 181355 */ GIR_RootConstrainSelectedInstOperands, |
| 64187 | /* 181356 */ // GIR_Coverage, 21148, |
| 64188 | /* 181356 */ GIR_EraseRootFromParent_Done, |
| 64189 | /* 181357 */ // Label 3986: @181357 |
| 64190 | /* 181357 */ GIM_Try, /*On fail goto*//*Label 3987*/ GIMT_Encode4(181402), // Rule ID 21156 // |
| 64191 | /* 181362 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64192 | /* 181365 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 64193 | /* 181368 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 64194 | /* 181372 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 64195 | /* 181376 */ // (uint_to_fp:{ *:[f64] } GR32:{ *:[i32] }:$src) => (VCVTUSI2SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR32:{ *:[i32] }:$src) |
| 64196 | /* 181376 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 64197 | /* 181379 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64198 | /* 181383 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64199 | /* 181388 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64200 | /* 181390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SDZrr), |
| 64201 | /* 181393 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64202 | /* 181395 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64203 | /* 181398 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 64204 | /* 181400 */ GIR_RootConstrainSelectedInstOperands, |
| 64205 | /* 181401 */ // GIR_Coverage, 21156, |
| 64206 | /* 181401 */ GIR_EraseRootFromParent_Done, |
| 64207 | /* 181402 */ // Label 3987: @181402 |
| 64208 | /* 181402 */ GIM_Try, /*On fail goto*//*Label 3988*/ GIMT_Encode4(181447), // Rule ID 21158 // |
| 64209 | /* 181407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64210 | /* 181410 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 64211 | /* 181413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 64212 | /* 181417 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 64213 | /* 181421 */ // (uint_to_fp:{ *:[f64] } GR64:{ *:[i64] }:$src) => (VCVTUSI642SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR64:{ *:[i64] }:$src) |
| 64214 | /* 181421 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 64215 | /* 181424 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64216 | /* 181428 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64217 | /* 181433 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64218 | /* 181435 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SDZrr), |
| 64219 | /* 181438 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64220 | /* 181440 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 64221 | /* 181443 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 64222 | /* 181445 */ GIR_RootConstrainSelectedInstOperands, |
| 64223 | /* 181446 */ // GIR_Coverage, 21158, |
| 64224 | /* 181446 */ GIR_EraseRootFromParent_Done, |
| 64225 | /* 181447 */ // Label 3988: @181447 |
| 64226 | /* 181447 */ GIM_Reject, |
| 64227 | /* 181448 */ // Label 3967: @181448 |
| 64228 | /* 181448 */ GIM_Try, /*On fail goto*//*Label 3989*/ GIMT_Encode4(181536), |
| 64229 | /* 181453 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 64230 | /* 181456 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64231 | /* 181460 */ GIM_Try, /*On fail goto*//*Label 3990*/ GIMT_Encode4(181512), // Rule ID 11418 // |
| 64232 | /* 181465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 64233 | /* 181468 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64234 | /* 181472 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64235 | /* 181476 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64236 | /* 181479 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64237 | /* 181483 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64238 | /* 181487 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64239 | /* 181489 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64240 | /* 181496 */ // (uint_to_fp:{ *:[v2f64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PDZ128rm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 64241 | /* 181496 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZ128rm), |
| 64242 | /* 181499 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64243 | /* 181501 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64244 | /* 181505 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64245 | /* 181510 */ GIR_RootConstrainSelectedInstOperands, |
| 64246 | /* 181511 */ // GIR_Coverage, 11418, |
| 64247 | /* 181511 */ GIR_EraseRootFromParent_Done, |
| 64248 | /* 181512 */ // Label 3990: @181512 |
| 64249 | /* 181512 */ GIM_Try, /*On fail goto*//*Label 3991*/ GIMT_Encode4(181535), // Rule ID 11414 // |
| 64250 | /* 181517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 64251 | /* 181520 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64252 | /* 181524 */ // (uint_to_fp:{ *:[v2f64] } VR128X:{ *:[v2i64] }:$src) => (VCVTUQQ2PDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2i64] }:$src) |
| 64253 | /* 181524 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZ128rr), |
| 64254 | /* 181529 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64255 | /* 181533 */ GIR_RootConstrainSelectedInstOperands, |
| 64256 | /* 181534 */ // GIR_Coverage, 11414, |
| 64257 | /* 181534 */ GIR_Done, |
| 64258 | /* 181535 */ // Label 3991: @181535 |
| 64259 | /* 181535 */ GIM_Reject, |
| 64260 | /* 181536 */ // Label 3989: @181536 |
| 64261 | /* 181536 */ GIM_Reject, |
| 64262 | /* 181537 */ // Label 3968: @181537 |
| 64263 | /* 181537 */ GIM_Try, /*On fail goto*//*Label 3992*/ GIMT_Encode4(181596), // Rule ID 10962 // |
| 64264 | /* 181542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 64265 | /* 181545 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 64266 | /* 181548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64267 | /* 181552 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64268 | /* 181556 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64269 | /* 181560 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64270 | /* 181563 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64271 | /* 181567 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64272 | /* 181571 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64273 | /* 181573 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64274 | /* 181580 */ // (uint_to_fp:{ *:[v4f32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PSZ128rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 64275 | /* 181580 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZ128rm), |
| 64276 | /* 181583 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64277 | /* 181585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64278 | /* 181589 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64279 | /* 181594 */ GIR_RootConstrainSelectedInstOperands, |
| 64280 | /* 181595 */ // GIR_Coverage, 10962, |
| 64281 | /* 181595 */ GIR_EraseRootFromParent_Done, |
| 64282 | /* 181596 */ // Label 3992: @181596 |
| 64283 | /* 181596 */ GIM_Try, /*On fail goto*//*Label 3993*/ GIMT_Encode4(181655), // Rule ID 11538 // |
| 64284 | /* 181601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 64285 | /* 181604 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 64286 | /* 181607 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64287 | /* 181611 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64288 | /* 181615 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64289 | /* 181619 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64290 | /* 181622 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64291 | /* 181626 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64292 | /* 181630 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64293 | /* 181632 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64294 | /* 181639 */ // (uint_to_fp:{ *:[v4f32] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PSZ256rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 64295 | /* 181639 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PSZ256rm), |
| 64296 | /* 181642 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64297 | /* 181644 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64298 | /* 181648 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64299 | /* 181653 */ GIR_RootConstrainSelectedInstOperands, |
| 64300 | /* 181654 */ // GIR_Coverage, 11538, |
| 64301 | /* 181654 */ GIR_EraseRootFromParent_Done, |
| 64302 | /* 181655 */ // Label 3993: @181655 |
| 64303 | /* 181655 */ GIM_Try, /*On fail goto*//*Label 3994*/ GIMT_Encode4(181685), // Rule ID 10958 // |
| 64304 | /* 181660 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 64305 | /* 181663 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 64306 | /* 181666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64307 | /* 181670 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64308 | /* 181674 */ // (uint_to_fp:{ *:[v4f32] } VR128X:{ *:[v4i32] }:$src) => (VCVTUDQ2PSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4i32] }:$src) |
| 64309 | /* 181674 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZ128rr), |
| 64310 | /* 181679 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64311 | /* 181683 */ GIR_RootConstrainSelectedInstOperands, |
| 64312 | /* 181684 */ // GIR_Coverage, 10958, |
| 64313 | /* 181684 */ GIR_Done, |
| 64314 | /* 181685 */ // Label 3994: @181685 |
| 64315 | /* 181685 */ GIM_Try, /*On fail goto*//*Label 3995*/ GIMT_Encode4(181715), // Rule ID 11534 // |
| 64316 | /* 181690 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 64317 | /* 181693 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 64318 | /* 181696 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64319 | /* 181700 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64320 | /* 181704 */ // (uint_to_fp:{ *:[v4f32] } VR256X:{ *:[v4i64] }:$src) => (VCVTUQQ2PSZ256rr:{ *:[v4f32] } VR256X:{ *:[v4i64] }:$src) |
| 64321 | /* 181704 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PSZ256rr), |
| 64322 | /* 181709 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64323 | /* 181713 */ GIR_RootConstrainSelectedInstOperands, |
| 64324 | /* 181714 */ // GIR_Coverage, 11534, |
| 64325 | /* 181714 */ GIR_Done, |
| 64326 | /* 181715 */ // Label 3995: @181715 |
| 64327 | /* 181715 */ GIM_Reject, |
| 64328 | /* 181716 */ // Label 3969: @181716 |
| 64329 | /* 181716 */ GIM_Try, /*On fail goto*//*Label 3996*/ GIMT_Encode4(181775), // Rule ID 10935 // |
| 64330 | /* 181721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 64331 | /* 181724 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 64332 | /* 181727 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64333 | /* 181731 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64334 | /* 181735 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64335 | /* 181739 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64336 | /* 181742 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64337 | /* 181746 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64338 | /* 181750 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64339 | /* 181752 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64340 | /* 181759 */ // (uint_to_fp:{ *:[v4f64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 64341 | /* 181759 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PDZ256rm), |
| 64342 | /* 181762 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64343 | /* 181764 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64344 | /* 181768 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64345 | /* 181773 */ GIR_RootConstrainSelectedInstOperands, |
| 64346 | /* 181774 */ // GIR_Coverage, 10935, |
| 64347 | /* 181774 */ GIR_EraseRootFromParent_Done, |
| 64348 | /* 181775 */ // Label 3996: @181775 |
| 64349 | /* 181775 */ GIM_Try, /*On fail goto*//*Label 3997*/ GIMT_Encode4(181834), // Rule ID 11430 // |
| 64350 | /* 181780 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 64351 | /* 181783 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 64352 | /* 181786 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64353 | /* 181790 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64354 | /* 181794 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64355 | /* 181798 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64356 | /* 181801 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64357 | /* 181805 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64358 | /* 181809 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64359 | /* 181811 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64360 | /* 181818 */ // (uint_to_fp:{ *:[v4f64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 64361 | /* 181818 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZ256rm), |
| 64362 | /* 181821 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64363 | /* 181823 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64364 | /* 181827 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64365 | /* 181832 */ GIR_RootConstrainSelectedInstOperands, |
| 64366 | /* 181833 */ // GIR_Coverage, 11430, |
| 64367 | /* 181833 */ GIR_EraseRootFromParent_Done, |
| 64368 | /* 181834 */ // Label 3997: @181834 |
| 64369 | /* 181834 */ GIM_Try, /*On fail goto*//*Label 3998*/ GIMT_Encode4(181860), // Rule ID 10931 // |
| 64370 | /* 181839 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 64371 | /* 181842 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 64372 | /* 181845 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64373 | /* 181849 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64374 | /* 181853 */ // (uint_to_fp:{ *:[v4f64] } VR128X:{ *:[v4i32] }:$src) => (VCVTUDQ2PDZ256rr:{ *:[v4f64] } VR128X:{ *:[v4i32] }:$src) |
| 64375 | /* 181853 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PDZ256rr), |
| 64376 | /* 181858 */ GIR_RootConstrainSelectedInstOperands, |
| 64377 | /* 181859 */ // GIR_Coverage, 10931, |
| 64378 | /* 181859 */ GIR_Done, |
| 64379 | /* 181860 */ // Label 3998: @181860 |
| 64380 | /* 181860 */ GIM_Try, /*On fail goto*//*Label 3999*/ GIMT_Encode4(181890), // Rule ID 11426 // |
| 64381 | /* 181865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 64382 | /* 181868 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 64383 | /* 181871 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64384 | /* 181875 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64385 | /* 181879 */ // (uint_to_fp:{ *:[v4f64] } VR256X:{ *:[v4i64] }:$src) => (VCVTUQQ2PDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4i64] }:$src) |
| 64386 | /* 181879 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZ256rr), |
| 64387 | /* 181884 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64388 | /* 181888 */ GIR_RootConstrainSelectedInstOperands, |
| 64389 | /* 181889 */ // GIR_Coverage, 11426, |
| 64390 | /* 181889 */ GIR_Done, |
| 64391 | /* 181890 */ // Label 3999: @181890 |
| 64392 | /* 181890 */ GIM_Reject, |
| 64393 | /* 181891 */ // Label 3970: @181891 |
| 64394 | /* 181891 */ GIM_Try, /*On fail goto*//*Label 4000*/ GIMT_Encode4(181950), // Rule ID 11484 // |
| 64395 | /* 181896 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 64396 | /* 181899 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64397 | /* 181902 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64398 | /* 181906 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64399 | /* 181910 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64400 | /* 181914 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64401 | /* 181917 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64402 | /* 181921 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64403 | /* 181925 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64404 | /* 181927 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64405 | /* 181934 */ // (uint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PHZ256rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 64406 | /* 181934 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PHZ256rm), |
| 64407 | /* 181937 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64408 | /* 181939 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64409 | /* 181943 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64410 | /* 181948 */ GIR_RootConstrainSelectedInstOperands, |
| 64411 | /* 181949 */ // GIR_Coverage, 11484, |
| 64412 | /* 181949 */ GIR_EraseRootFromParent_Done, |
| 64413 | /* 181950 */ // Label 4000: @181950 |
| 64414 | /* 181950 */ GIM_Try, /*On fail goto*//*Label 4001*/ GIMT_Encode4(182009), // Rule ID 14676 // |
| 64415 | /* 181955 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 64416 | /* 181958 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 64417 | /* 181961 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64418 | /* 181965 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64419 | /* 181969 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64420 | /* 181973 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64421 | /* 181976 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64422 | /* 181980 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64423 | /* 181984 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64424 | /* 181986 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64425 | /* 181993 */ // (uint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUW2PHZ128rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 64426 | /* 181993 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZ128rm), |
| 64427 | /* 181996 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64428 | /* 181998 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64429 | /* 182002 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64430 | /* 182007 */ GIR_RootConstrainSelectedInstOperands, |
| 64431 | /* 182008 */ // GIR_Coverage, 14676, |
| 64432 | /* 182008 */ GIR_EraseRootFromParent_Done, |
| 64433 | /* 182009 */ // Label 4001: @182009 |
| 64434 | /* 182009 */ GIM_Try, /*On fail goto*//*Label 4002*/ GIMT_Encode4(182068), // Rule ID 15138 // |
| 64435 | /* 182014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64436 | /* 182017 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64437 | /* 182020 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64438 | /* 182024 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64439 | /* 182028 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64440 | /* 182032 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64441 | /* 182035 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64442 | /* 182039 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64443 | /* 182043 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64444 | /* 182045 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64445 | /* 182052 */ // (uint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PHZrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 64446 | /* 182052 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PHZrm), |
| 64447 | /* 182055 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64448 | /* 182057 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64449 | /* 182061 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64450 | /* 182066 */ GIR_RootConstrainSelectedInstOperands, |
| 64451 | /* 182067 */ // GIR_Coverage, 15138, |
| 64452 | /* 182067 */ GIR_EraseRootFromParent_Done, |
| 64453 | /* 182068 */ // Label 4002: @182068 |
| 64454 | /* 182068 */ GIM_Try, /*On fail goto*//*Label 4003*/ GIMT_Encode4(182098), // Rule ID 11480 // |
| 64455 | /* 182073 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 64456 | /* 182076 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64457 | /* 182079 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64458 | /* 182083 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64459 | /* 182087 */ // (uint_to_fp:{ *:[v8f16] } VR256X:{ *:[v8i32] }:$src) => (VCVTUDQ2PHZ256rr:{ *:[v8f16] } VR256X:{ *:[v8i32] }:$src) |
| 64460 | /* 182087 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PHZ256rr), |
| 64461 | /* 182092 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64462 | /* 182096 */ GIR_RootConstrainSelectedInstOperands, |
| 64463 | /* 182097 */ // GIR_Coverage, 11480, |
| 64464 | /* 182097 */ GIR_Done, |
| 64465 | /* 182098 */ // Label 4003: @182098 |
| 64466 | /* 182098 */ GIM_Try, /*On fail goto*//*Label 4004*/ GIMT_Encode4(182128), // Rule ID 14672 // |
| 64467 | /* 182103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 64468 | /* 182106 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 64469 | /* 182109 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64470 | /* 182113 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64471 | /* 182117 */ // (uint_to_fp:{ *:[v8f16] } VR128X:{ *:[v8i16] }:$src) => (VCVTUW2PHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8i16] }:$src) |
| 64472 | /* 182117 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZ128rr), |
| 64473 | /* 182122 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64474 | /* 182126 */ GIR_RootConstrainSelectedInstOperands, |
| 64475 | /* 182127 */ // GIR_Coverage, 14672, |
| 64476 | /* 182127 */ GIR_Done, |
| 64477 | /* 182128 */ // Label 4004: @182128 |
| 64478 | /* 182128 */ GIM_Try, /*On fail goto*//*Label 4005*/ GIMT_Encode4(182158), // Rule ID 15134 // |
| 64479 | /* 182133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64480 | /* 182136 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64481 | /* 182139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64482 | /* 182143 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64483 | /* 182147 */ // (uint_to_fp:{ *:[v8f16] } VR512:{ *:[v8i64] }:$src) => (VCVTUQQ2PHZrr:{ *:[v8f16] } VR512:{ *:[v8i64] }:$src) |
| 64484 | /* 182147 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PHZrr), |
| 64485 | /* 182152 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64486 | /* 182156 */ GIR_RootConstrainSelectedInstOperands, |
| 64487 | /* 182157 */ // GIR_Coverage, 15134, |
| 64488 | /* 182157 */ GIR_Done, |
| 64489 | /* 182158 */ // Label 4005: @182158 |
| 64490 | /* 182158 */ GIM_Reject, |
| 64491 | /* 182159 */ // Label 3971: @182159 |
| 64492 | /* 182159 */ GIM_Try, /*On fail goto*//*Label 4006*/ GIMT_Encode4(182218), // Rule ID 10974 // |
| 64493 | /* 182164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 64494 | /* 182167 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64495 | /* 182170 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64496 | /* 182174 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64497 | /* 182178 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64498 | /* 182182 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64499 | /* 182185 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64500 | /* 182189 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64501 | /* 182193 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64502 | /* 182195 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64503 | /* 182202 */ // (uint_to_fp:{ *:[v8f32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PSZ256rm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 64504 | /* 182202 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZ256rm), |
| 64505 | /* 182205 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64506 | /* 182207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64507 | /* 182211 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64508 | /* 182216 */ GIR_RootConstrainSelectedInstOperands, |
| 64509 | /* 182217 */ // GIR_Coverage, 10974, |
| 64510 | /* 182217 */ GIR_EraseRootFromParent_Done, |
| 64511 | /* 182218 */ // Label 4006: @182218 |
| 64512 | /* 182218 */ GIM_Try, /*On fail goto*//*Label 4007*/ GIMT_Encode4(182277), // Rule ID 11523 // |
| 64513 | /* 182223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 64514 | /* 182226 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64515 | /* 182229 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64516 | /* 182233 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64517 | /* 182237 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64518 | /* 182241 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64519 | /* 182244 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64520 | /* 182248 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64521 | /* 182252 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64522 | /* 182254 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64523 | /* 182261 */ // (uint_to_fp:{ *:[v8f32] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PSZrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 64524 | /* 182261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PSZrm), |
| 64525 | /* 182264 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64526 | /* 182266 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64527 | /* 182270 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64528 | /* 182275 */ GIR_RootConstrainSelectedInstOperands, |
| 64529 | /* 182276 */ // GIR_Coverage, 11523, |
| 64530 | /* 182276 */ GIR_EraseRootFromParent_Done, |
| 64531 | /* 182277 */ // Label 4007: @182277 |
| 64532 | /* 182277 */ GIM_Try, /*On fail goto*//*Label 4008*/ GIMT_Encode4(182307), // Rule ID 10970 // |
| 64533 | /* 182282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 64534 | /* 182285 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64535 | /* 182288 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64536 | /* 182292 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64537 | /* 182296 */ // (uint_to_fp:{ *:[v8f32] } VR256X:{ *:[v8i32] }:$src) => (VCVTUDQ2PSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8i32] }:$src) |
| 64538 | /* 182296 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZ256rr), |
| 64539 | /* 182301 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64540 | /* 182305 */ GIR_RootConstrainSelectedInstOperands, |
| 64541 | /* 182306 */ // GIR_Coverage, 10970, |
| 64542 | /* 182306 */ GIR_Done, |
| 64543 | /* 182307 */ // Label 4008: @182307 |
| 64544 | /* 182307 */ GIM_Try, /*On fail goto*//*Label 4009*/ GIMT_Encode4(182337), // Rule ID 11519 // |
| 64545 | /* 182312 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 64546 | /* 182315 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64547 | /* 182318 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64548 | /* 182322 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64549 | /* 182326 */ // (uint_to_fp:{ *:[v8f32] } VR512:{ *:[v8i64] }:$src) => (VCVTUQQ2PSZrr:{ *:[v8f32] } VR512:{ *:[v8i64] }:$src) |
| 64550 | /* 182326 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PSZrr), |
| 64551 | /* 182331 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64552 | /* 182335 */ GIR_RootConstrainSelectedInstOperands, |
| 64553 | /* 182336 */ // GIR_Coverage, 11519, |
| 64554 | /* 182336 */ GIR_Done, |
| 64555 | /* 182337 */ // Label 4009: @182337 |
| 64556 | /* 182337 */ GIM_Reject, |
| 64557 | /* 182338 */ // Label 3972: @182338 |
| 64558 | /* 182338 */ GIM_Try, /*On fail goto*//*Label 4010*/ GIMT_Encode4(182397), // Rule ID 10911 // |
| 64559 | /* 182343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64560 | /* 182346 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64561 | /* 182349 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64562 | /* 182353 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64563 | /* 182357 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64564 | /* 182361 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64565 | /* 182364 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64566 | /* 182368 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64567 | /* 182372 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64568 | /* 182374 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64569 | /* 182381 */ // (uint_to_fp:{ *:[v8f64] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 64570 | /* 182381 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PDZrm), |
| 64571 | /* 182384 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64572 | /* 182386 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64573 | /* 182390 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64574 | /* 182395 */ GIR_RootConstrainSelectedInstOperands, |
| 64575 | /* 182396 */ // GIR_Coverage, 10911, |
| 64576 | /* 182396 */ GIR_EraseRootFromParent_Done, |
| 64577 | /* 182397 */ // Label 4010: @182397 |
| 64578 | /* 182397 */ GIM_Try, /*On fail goto*//*Label 4011*/ GIMT_Encode4(182456), // Rule ID 11403 // |
| 64579 | /* 182402 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 64580 | /* 182405 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64581 | /* 182408 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64582 | /* 182412 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64583 | /* 182416 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64584 | /* 182420 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64585 | /* 182423 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64586 | /* 182427 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64587 | /* 182431 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64588 | /* 182433 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64589 | /* 182440 */ // (uint_to_fp:{ *:[v8f64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 64590 | /* 182440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZrm), |
| 64591 | /* 182443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64592 | /* 182445 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64593 | /* 182449 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64594 | /* 182454 */ GIR_RootConstrainSelectedInstOperands, |
| 64595 | /* 182455 */ // GIR_Coverage, 11403, |
| 64596 | /* 182455 */ GIR_EraseRootFromParent_Done, |
| 64597 | /* 182456 */ // Label 4011: @182456 |
| 64598 | /* 182456 */ GIM_Try, /*On fail goto*//*Label 4012*/ GIMT_Encode4(182482), // Rule ID 10907 // |
| 64599 | /* 182461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64600 | /* 182464 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64601 | /* 182467 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64602 | /* 182471 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64603 | /* 182475 */ // (uint_to_fp:{ *:[v8f64] } VR256X:{ *:[v8i32] }:$src) => (VCVTUDQ2PDZrr:{ *:[v8f64] } VR256X:{ *:[v8i32] }:$src) |
| 64604 | /* 182475 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PDZrr), |
| 64605 | /* 182480 */ GIR_RootConstrainSelectedInstOperands, |
| 64606 | /* 182481 */ // GIR_Coverage, 10907, |
| 64607 | /* 182481 */ GIR_Done, |
| 64608 | /* 182482 */ // Label 4012: @182482 |
| 64609 | /* 182482 */ GIM_Try, /*On fail goto*//*Label 4013*/ GIMT_Encode4(182512), // Rule ID 11399 // |
| 64610 | /* 182487 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 64611 | /* 182490 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64612 | /* 182493 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64613 | /* 182497 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64614 | /* 182501 */ // (uint_to_fp:{ *:[v8f64] } VR512:{ *:[v8i64] }:$src) => (VCVTUQQ2PDZrr:{ *:[v8f64] } VR512:{ *:[v8i64] }:$src) |
| 64615 | /* 182501 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZrr), |
| 64616 | /* 182506 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64617 | /* 182510 */ GIR_RootConstrainSelectedInstOperands, |
| 64618 | /* 182511 */ // GIR_Coverage, 11399, |
| 64619 | /* 182511 */ GIR_Done, |
| 64620 | /* 182512 */ // Label 4013: @182512 |
| 64621 | /* 182512 */ GIM_Reject, |
| 64622 | /* 182513 */ // Label 3973: @182513 |
| 64623 | /* 182513 */ GIM_Try, /*On fail goto*//*Label 4014*/ GIMT_Encode4(182572), // Rule ID 11469 // |
| 64624 | /* 182518 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64625 | /* 182521 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 64626 | /* 182524 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64627 | /* 182528 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64628 | /* 182532 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64629 | /* 182536 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64630 | /* 182539 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64631 | /* 182543 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64632 | /* 182547 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64633 | /* 182549 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64634 | /* 182556 */ // (uint_to_fp:{ *:[v16f16] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PHZrm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 64635 | /* 182556 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PHZrm), |
| 64636 | /* 182559 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64637 | /* 182561 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64638 | /* 182565 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64639 | /* 182570 */ GIR_RootConstrainSelectedInstOperands, |
| 64640 | /* 182571 */ // GIR_Coverage, 11469, |
| 64641 | /* 182571 */ GIR_EraseRootFromParent_Done, |
| 64642 | /* 182572 */ // Label 4014: @182572 |
| 64643 | /* 182572 */ GIM_Try, /*On fail goto*//*Label 4015*/ GIMT_Encode4(182631), // Rule ID 14688 // |
| 64644 | /* 182577 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 64645 | /* 182580 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 64646 | /* 182583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64647 | /* 182587 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64648 | /* 182591 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64649 | /* 182595 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64650 | /* 182598 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64651 | /* 182602 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64652 | /* 182606 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64653 | /* 182608 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64654 | /* 182615 */ // (uint_to_fp:{ *:[v16f16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUW2PHZ256rm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 64655 | /* 182615 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZ256rm), |
| 64656 | /* 182618 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64657 | /* 182620 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64658 | /* 182624 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64659 | /* 182629 */ GIR_RootConstrainSelectedInstOperands, |
| 64660 | /* 182630 */ // GIR_Coverage, 14688, |
| 64661 | /* 182630 */ GIR_EraseRootFromParent_Done, |
| 64662 | /* 182631 */ // Label 4015: @182631 |
| 64663 | /* 182631 */ GIM_Try, /*On fail goto*//*Label 4016*/ GIMT_Encode4(182661), // Rule ID 11465 // |
| 64664 | /* 182636 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64665 | /* 182639 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 64666 | /* 182642 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64667 | /* 182646 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64668 | /* 182650 */ // (uint_to_fp:{ *:[v16f16] } VR512:{ *:[v16i32] }:$src) => (VCVTUDQ2PHZrr:{ *:[v16f16] } VR512:{ *:[v16i32] }:$src) |
| 64669 | /* 182650 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PHZrr), |
| 64670 | /* 182655 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64671 | /* 182659 */ GIR_RootConstrainSelectedInstOperands, |
| 64672 | /* 182660 */ // GIR_Coverage, 11465, |
| 64673 | /* 182660 */ GIR_Done, |
| 64674 | /* 182661 */ // Label 4016: @182661 |
| 64675 | /* 182661 */ GIM_Try, /*On fail goto*//*Label 4017*/ GIMT_Encode4(182691), // Rule ID 14684 // |
| 64676 | /* 182666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 64677 | /* 182669 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 64678 | /* 182672 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64679 | /* 182676 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64680 | /* 182680 */ // (uint_to_fp:{ *:[v16f16] } VR256X:{ *:[v16i16] }:$src) => (VCVTUW2PHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16i16] }:$src) |
| 64681 | /* 182680 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZ256rr), |
| 64682 | /* 182685 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64683 | /* 182689 */ GIR_RootConstrainSelectedInstOperands, |
| 64684 | /* 182690 */ // GIR_Coverage, 14684, |
| 64685 | /* 182690 */ GIR_Done, |
| 64686 | /* 182691 */ // Label 4017: @182691 |
| 64687 | /* 182691 */ GIM_Reject, |
| 64688 | /* 182692 */ // Label 3974: @182692 |
| 64689 | /* 182692 */ GIM_Try, /*On fail goto*//*Label 4018*/ GIMT_Encode4(182780), |
| 64690 | /* 182697 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 64691 | /* 182700 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64692 | /* 182704 */ GIM_Try, /*On fail goto*//*Label 4019*/ GIMT_Encode4(182756), // Rule ID 10947 // |
| 64693 | /* 182709 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64694 | /* 182712 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64695 | /* 182716 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64696 | /* 182720 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64697 | /* 182723 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64698 | /* 182727 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64699 | /* 182731 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64700 | /* 182733 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64701 | /* 182740 */ // (uint_to_fp:{ *:[v16f32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PSZrm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 64702 | /* 182740 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZrm), |
| 64703 | /* 182743 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64704 | /* 182745 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64705 | /* 182749 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64706 | /* 182754 */ GIR_RootConstrainSelectedInstOperands, |
| 64707 | /* 182755 */ // GIR_Coverage, 10947, |
| 64708 | /* 182755 */ GIR_EraseRootFromParent_Done, |
| 64709 | /* 182756 */ // Label 4019: @182756 |
| 64710 | /* 182756 */ GIM_Try, /*On fail goto*//*Label 4020*/ GIMT_Encode4(182779), // Rule ID 10943 // |
| 64711 | /* 182761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64712 | /* 182764 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64713 | /* 182768 */ // (uint_to_fp:{ *:[v16f32] } VR512:{ *:[v16i32] }:$src) => (VCVTUDQ2PSZrr:{ *:[v16f32] } VR512:{ *:[v16i32] }:$src) |
| 64714 | /* 182768 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZrr), |
| 64715 | /* 182773 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64716 | /* 182777 */ GIR_RootConstrainSelectedInstOperands, |
| 64717 | /* 182778 */ // GIR_Coverage, 10943, |
| 64718 | /* 182778 */ GIR_Done, |
| 64719 | /* 182779 */ // Label 4020: @182779 |
| 64720 | /* 182779 */ GIM_Reject, |
| 64721 | /* 182780 */ // Label 4018: @182780 |
| 64722 | /* 182780 */ GIM_Reject, |
| 64723 | /* 182781 */ // Label 3975: @182781 |
| 64724 | /* 182781 */ GIM_Try, /*On fail goto*//*Label 4021*/ GIMT_Encode4(182869), |
| 64725 | /* 182786 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 64726 | /* 182789 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64727 | /* 182793 */ GIM_Try, /*On fail goto*//*Label 4022*/ GIMT_Encode4(182845), // Rule ID 14661 // |
| 64728 | /* 182798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64729 | /* 182801 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64730 | /* 182805 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64731 | /* 182809 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64732 | /* 182812 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64733 | /* 182816 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64734 | /* 182820 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64735 | /* 182822 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64736 | /* 182829 */ // (uint_to_fp:{ *:[v32f16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUW2PHZrm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 64737 | /* 182829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZrm), |
| 64738 | /* 182832 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64739 | /* 182834 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64740 | /* 182838 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64741 | /* 182843 */ GIR_RootConstrainSelectedInstOperands, |
| 64742 | /* 182844 */ // GIR_Coverage, 14661, |
| 64743 | /* 182844 */ GIR_EraseRootFromParent_Done, |
| 64744 | /* 182845 */ // Label 4022: @182845 |
| 64745 | /* 182845 */ GIM_Try, /*On fail goto*//*Label 4023*/ GIMT_Encode4(182868), // Rule ID 14657 // |
| 64746 | /* 182850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64747 | /* 182853 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64748 | /* 182857 */ // (uint_to_fp:{ *:[v32f16] } VR512:{ *:[v32i16] }:$src) => (VCVTUW2PHZrr:{ *:[v32f16] } VR512:{ *:[v32i16] }:$src) |
| 64749 | /* 182857 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZrr), |
| 64750 | /* 182862 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64751 | /* 182866 */ GIR_RootConstrainSelectedInstOperands, |
| 64752 | /* 182867 */ // GIR_Coverage, 14657, |
| 64753 | /* 182867 */ GIR_Done, |
| 64754 | /* 182868 */ // Label 4023: @182868 |
| 64755 | /* 182868 */ GIM_Reject, |
| 64756 | /* 182869 */ // Label 4021: @182869 |
| 64757 | /* 182869 */ GIM_Reject, |
| 64758 | /* 182870 */ // Label 3976: @182870 |
| 64759 | /* 182870 */ GIM_Reject, |
| 64760 | /* 182871 */ // Label 53: @182871 |
| 64761 | /* 182871 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(6), /*)*//*default:*//*Label 4027*/ GIMT_Encode4(182993), |
| 64762 | /* 182882 */ /*GILLT_s32*//*Label 4024*/ GIMT_Encode4(182894), |
| 64763 | /* 182886 */ /*GILLT_s64*//*Label 4025*/ GIMT_Encode4(182927), |
| 64764 | /* 182890 */ /*GILLT_s80*//*Label 4026*/ GIMT_Encode4(182960), |
| 64765 | /* 182894 */ // Label 4024: @182894 |
| 64766 | /* 182894 */ GIM_Try, /*On fail goto*//*Label 4028*/ GIMT_Encode4(182926), // Rule ID 1045 // |
| 64767 | /* 182899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 64768 | /* 182902 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 64769 | /* 182905 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 64770 | /* 182909 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 64771 | /* 182913 */ // (fabs:{ *:[f32] } RFP32:{ *:[f32] }:$src) => (ABS_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src) |
| 64772 | /* 182913 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ABS_Fp32), |
| 64773 | /* 182918 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 64774 | /* 182924 */ GIR_RootConstrainSelectedInstOperands, |
| 64775 | /* 182925 */ // GIR_Coverage, 1045, |
| 64776 | /* 182925 */ GIR_Done, |
| 64777 | /* 182926 */ // Label 4028: @182926 |
| 64778 | /* 182926 */ GIM_Reject, |
| 64779 | /* 182927 */ // Label 4025: @182927 |
| 64780 | /* 182927 */ GIM_Try, /*On fail goto*//*Label 4029*/ GIMT_Encode4(182959), // Rule ID 1046 // |
| 64781 | /* 182932 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 64782 | /* 182935 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 64783 | /* 182938 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 64784 | /* 182942 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 64785 | /* 182946 */ // (fabs:{ *:[f64] } RFP64:{ *:[f64] }:$src) => (ABS_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src) |
| 64786 | /* 182946 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ABS_Fp64), |
| 64787 | /* 182951 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 64788 | /* 182957 */ GIR_RootConstrainSelectedInstOperands, |
| 64789 | /* 182958 */ // GIR_Coverage, 1046, |
| 64790 | /* 182958 */ GIR_Done, |
| 64791 | /* 182959 */ // Label 4029: @182959 |
| 64792 | /* 182959 */ GIM_Reject, |
| 64793 | /* 182960 */ // Label 4026: @182960 |
| 64794 | /* 182960 */ GIM_Try, /*On fail goto*//*Label 4030*/ GIMT_Encode4(182992), // Rule ID 1047 // |
| 64795 | /* 182965 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 64796 | /* 182968 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 64797 | /* 182971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 64798 | /* 182975 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 64799 | /* 182979 */ // (fabs:{ *:[f80] } RFP80:{ *:[f80] }:$src) => (ABS_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src) |
| 64800 | /* 182979 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ABS_Fp80), |
| 64801 | /* 182984 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 64802 | /* 182990 */ GIR_RootConstrainSelectedInstOperands, |
| 64803 | /* 182991 */ // GIR_Coverage, 1047, |
| 64804 | /* 182991 */ GIR_Done, |
| 64805 | /* 182992 */ // Label 4030: @182992 |
| 64806 | /* 182992 */ GIM_Reject, |
| 64807 | /* 182993 */ // Label 4027: @182993 |
| 64808 | /* 182993 */ GIM_Reject, |
| 64809 | /* 182994 */ // Label 54: @182994 |
| 64810 | /* 182994 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4043*/ GIMT_Encode4(186314), |
| 64811 | /* 183005 */ /*GILLT_v2s64*//*Label 4031*/ GIMT_Encode4(183073), GIMT_Encode4(0), |
| 64812 | /* 183013 */ /*GILLT_v4s32*//*Label 4032*/ GIMT_Encode4(183402), |
| 64813 | /* 183017 */ /*GILLT_v4s64*//*Label 4033*/ GIMT_Encode4(183744), GIMT_Encode4(0), |
| 64814 | /* 183025 */ /*GILLT_v8s16*//*Label 4034*/ GIMT_Encode4(184061), |
| 64815 | /* 183029 */ /*GILLT_v8s32*//*Label 4035*/ GIMT_Encode4(184403), |
| 64816 | /* 183033 */ /*GILLT_v8s64*//*Label 4036*/ GIMT_Encode4(184718), GIMT_Encode4(0), |
| 64817 | /* 183041 */ /*GILLT_v16s8*//*Label 4037*/ GIMT_Encode4(184874), |
| 64818 | /* 183045 */ /*GILLT_v16s16*//*Label 4038*/ GIMT_Encode4(185216), |
| 64819 | /* 183049 */ /*GILLT_v16s32*//*Label 4039*/ GIMT_Encode4(185531), GIMT_Encode4(0), |
| 64820 | /* 183057 */ /*GILLT_v32s8*//*Label 4040*/ GIMT_Encode4(185687), |
| 64821 | /* 183061 */ /*GILLT_v32s16*//*Label 4041*/ GIMT_Encode4(186002), GIMT_Encode4(0), |
| 64822 | /* 183069 */ /*GILLT_v64s8*//*Label 4042*/ GIMT_Encode4(186158), |
| 64823 | /* 183073 */ // Label 4031: @183073 |
| 64824 | /* 183073 */ GIM_Try, /*On fail goto*//*Label 4044*/ GIMT_Encode4(183401), |
| 64825 | /* 183078 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 64826 | /* 183081 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 64827 | /* 183084 */ GIM_Try, /*On fail goto*//*Label 4045*/ GIMT_Encode4(183146), // Rule ID 24077 // |
| 64828 | /* 183089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64829 | /* 183092 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64830 | /* 183096 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64831 | /* 183100 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64832 | /* 183104 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64833 | /* 183107 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64834 | /* 183111 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64835 | /* 183115 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64836 | /* 183119 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64837 | /* 183121 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64838 | /* 183128 */ // (smin:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPMINSQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64839 | /* 183128 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ128rm), |
| 64840 | /* 183131 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64841 | /* 183133 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64842 | /* 183135 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64843 | /* 183139 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64844 | /* 183144 */ GIR_RootConstrainSelectedInstOperands, |
| 64845 | /* 183145 */ // GIR_Coverage, 24077, |
| 64846 | /* 183145 */ GIR_EraseRootFromParent_Done, |
| 64847 | /* 183146 */ // Label 4045: @183146 |
| 64848 | /* 183146 */ GIM_Try, /*On fail goto*//*Label 4046*/ GIMT_Encode4(183208), // Rule ID 5590 // |
| 64849 | /* 183151 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64850 | /* 183154 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64851 | /* 183158 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64852 | /* 183162 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64853 | /* 183166 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64854 | /* 183170 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64855 | /* 183173 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64856 | /* 183177 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64857 | /* 183181 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64858 | /* 183183 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64859 | /* 183190 */ // (smin:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64860 | /* 183190 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ128rm), |
| 64861 | /* 183193 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64862 | /* 183195 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64863 | /* 183197 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64864 | /* 183201 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64865 | /* 183206 */ GIR_RootConstrainSelectedInstOperands, |
| 64866 | /* 183207 */ // GIR_Coverage, 5590, |
| 64867 | /* 183207 */ GIR_EraseRootFromParent_Done, |
| 64868 | /* 183208 */ // Label 4046: @183208 |
| 64869 | /* 183208 */ GIM_Try, /*On fail goto*//*Label 4047*/ GIMT_Encode4(183235), // Rule ID 5587 // |
| 64870 | /* 183213 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64871 | /* 183216 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64872 | /* 183220 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64873 | /* 183224 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64874 | /* 183228 */ // (smin:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPMINSQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 64875 | /* 183228 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ128rr), |
| 64876 | /* 183233 */ GIR_RootConstrainSelectedInstOperands, |
| 64877 | /* 183234 */ // GIR_Coverage, 5587, |
| 64878 | /* 183234 */ GIR_Done, |
| 64879 | /* 183235 */ // Label 4047: @183235 |
| 64880 | /* 183235 */ GIM_Try, /*On fail goto*//*Label 4048*/ GIMT_Encode4(183400), // Rule ID 20014 // |
| 64881 | /* 183240 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 64882 | /* 183243 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 64883 | /* 183247 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64884 | /* 183251 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64885 | /* 183255 */ // (smin:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPMINSQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 64886 | /* 183255 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 64887 | /* 183258 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64888 | /* 183262 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64889 | /* 183267 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 64890 | /* 183269 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 64891 | /* 183272 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 64892 | /* 183276 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64893 | /* 183281 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 64894 | /* 183284 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 64895 | /* 183288 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 64896 | /* 183291 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 64897 | /* 183296 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 64898 | /* 183301 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 64899 | /* 183306 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 64900 | /* 183309 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64901 | /* 183313 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64902 | /* 183318 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 64903 | /* 183320 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 64904 | /* 183323 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 64905 | /* 183327 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64906 | /* 183332 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 64907 | /* 183335 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 64908 | /* 183339 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 64909 | /* 183342 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 64910 | /* 183347 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 64911 | /* 183352 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 64912 | /* 183357 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 64913 | /* 183360 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMINSQZrr), |
| 64914 | /* 183364 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 64915 | /* 183369 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 64916 | /* 183372 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 64917 | /* 183375 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64918 | /* 183377 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 64919 | /* 183380 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64920 | /* 183382 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 64921 | /* 183389 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 64922 | /* 183394 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 64923 | /* 183399 */ // GIR_Coverage, 20014, |
| 64924 | /* 183399 */ GIR_EraseRootFromParent_Done, |
| 64925 | /* 183400 */ // Label 4048: @183400 |
| 64926 | /* 183400 */ GIM_Reject, |
| 64927 | /* 183401 */ // Label 4044: @183401 |
| 64928 | /* 183401 */ GIM_Reject, |
| 64929 | /* 183402 */ // Label 4032: @183402 |
| 64930 | /* 183402 */ GIM_Try, /*On fail goto*//*Label 4049*/ GIMT_Encode4(183743), |
| 64931 | /* 183407 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 64932 | /* 183410 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 64933 | /* 183413 */ GIM_Try, /*On fail goto*//*Label 4050*/ GIMT_Encode4(183475), // Rule ID 23501 // |
| 64934 | /* 183418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 64935 | /* 183421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64936 | /* 183425 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64937 | /* 183429 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64938 | /* 183433 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64939 | /* 183436 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64940 | /* 183440 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64941 | /* 183444 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64942 | /* 183448 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64943 | /* 183450 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64944 | /* 183457 */ // (smin:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPMINSDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64945 | /* 183457 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDrm), |
| 64946 | /* 183460 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64947 | /* 183462 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64948 | /* 183464 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64949 | /* 183468 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64950 | /* 183473 */ GIR_RootConstrainSelectedInstOperands, |
| 64951 | /* 183474 */ // GIR_Coverage, 23501, |
| 64952 | /* 183474 */ GIR_EraseRootFromParent_Done, |
| 64953 | /* 183475 */ // Label 4050: @183475 |
| 64954 | /* 183475 */ GIM_Try, /*On fail goto*//*Label 4051*/ GIMT_Encode4(183537), // Rule ID 24059 // |
| 64955 | /* 183480 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64956 | /* 183483 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64957 | /* 183487 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64958 | /* 183491 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64959 | /* 183495 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64960 | /* 183498 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64961 | /* 183502 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64962 | /* 183506 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64963 | /* 183510 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64964 | /* 183512 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64965 | /* 183519 */ // (smin:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPMINSDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64966 | /* 183519 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ128rm), |
| 64967 | /* 183522 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64968 | /* 183524 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64969 | /* 183526 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64970 | /* 183530 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64971 | /* 183535 */ GIR_RootConstrainSelectedInstOperands, |
| 64972 | /* 183536 */ // GIR_Coverage, 24059, |
| 64973 | /* 183536 */ GIR_EraseRootFromParent_Done, |
| 64974 | /* 183537 */ // Label 4051: @183537 |
| 64975 | /* 183537 */ GIM_Try, /*On fail goto*//*Label 4052*/ GIMT_Encode4(183599), // Rule ID 3186 // |
| 64976 | /* 183542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 64977 | /* 183545 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64978 | /* 183549 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64979 | /* 183553 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64980 | /* 183557 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64981 | /* 183561 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64982 | /* 183564 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64983 | /* 183568 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64984 | /* 183572 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64985 | /* 183574 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64986 | /* 183581 */ // (smin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64987 | /* 183581 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDrm), |
| 64988 | /* 183584 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64989 | /* 183586 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64990 | /* 183588 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64991 | /* 183592 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64992 | /* 183597 */ GIR_RootConstrainSelectedInstOperands, |
| 64993 | /* 183598 */ // GIR_Coverage, 3186, |
| 64994 | /* 183598 */ GIR_EraseRootFromParent_Done, |
| 64995 | /* 183599 */ // Label 4052: @183599 |
| 64996 | /* 183599 */ GIM_Try, /*On fail goto*//*Label 4053*/ GIMT_Encode4(183661), // Rule ID 5563 // |
| 64997 | /* 183604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64998 | /* 183607 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64999 | /* 183611 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65000 | /* 183615 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65001 | /* 183619 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65002 | /* 183623 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65003 | /* 183626 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65004 | /* 183630 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65005 | /* 183634 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65006 | /* 183636 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65007 | /* 183643 */ // (smin:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65008 | /* 183643 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ128rm), |
| 65009 | /* 183646 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65010 | /* 183648 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65011 | /* 183650 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65012 | /* 183654 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65013 | /* 183659 */ GIR_RootConstrainSelectedInstOperands, |
| 65014 | /* 183660 */ // GIR_Coverage, 5563, |
| 65015 | /* 183660 */ GIR_EraseRootFromParent_Done, |
| 65016 | /* 183661 */ // Label 4053: @183661 |
| 65017 | /* 183661 */ GIM_Try, /*On fail goto*//*Label 4054*/ GIMT_Encode4(183688), // Rule ID 3185 // |
| 65018 | /* 183666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 65019 | /* 183669 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65020 | /* 183673 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65021 | /* 183677 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65022 | /* 183681 */ // (smin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMINSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 65023 | /* 183681 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSDrr), |
| 65024 | /* 183686 */ GIR_RootConstrainSelectedInstOperands, |
| 65025 | /* 183687 */ // GIR_Coverage, 3185, |
| 65026 | /* 183687 */ GIR_Done, |
| 65027 | /* 183688 */ // Label 4054: @183688 |
| 65028 | /* 183688 */ GIM_Try, /*On fail goto*//*Label 4055*/ GIMT_Encode4(183715), // Rule ID 3223 // |
| 65029 | /* 183693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 65030 | /* 183696 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65031 | /* 183700 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65032 | /* 183704 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65033 | /* 183708 */ // (smin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PMINSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 65034 | /* 183708 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINSDrr), |
| 65035 | /* 183713 */ GIR_RootConstrainSelectedInstOperands, |
| 65036 | /* 183714 */ // GIR_Coverage, 3223, |
| 65037 | /* 183714 */ GIR_Done, |
| 65038 | /* 183715 */ // Label 4055: @183715 |
| 65039 | /* 183715 */ GIM_Try, /*On fail goto*//*Label 4056*/ GIMT_Encode4(183742), // Rule ID 5560 // |
| 65040 | /* 183720 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65041 | /* 183723 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65042 | /* 183727 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65043 | /* 183731 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65044 | /* 183735 */ // (smin:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPMINSDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 65045 | /* 183735 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ128rr), |
| 65046 | /* 183740 */ GIR_RootConstrainSelectedInstOperands, |
| 65047 | /* 183741 */ // GIR_Coverage, 5560, |
| 65048 | /* 183741 */ GIR_Done, |
| 65049 | /* 183742 */ // Label 4056: @183742 |
| 65050 | /* 183742 */ GIM_Reject, |
| 65051 | /* 183743 */ // Label 4049: @183743 |
| 65052 | /* 183743 */ GIM_Reject, |
| 65053 | /* 183744 */ // Label 4033: @183744 |
| 65054 | /* 183744 */ GIM_Try, /*On fail goto*//*Label 4057*/ GIMT_Encode4(184060), |
| 65055 | /* 183749 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 65056 | /* 183752 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 65057 | /* 183755 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65058 | /* 183759 */ GIM_Try, /*On fail goto*//*Label 4058*/ GIMT_Encode4(183817), // Rule ID 24071 // |
| 65059 | /* 183764 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65060 | /* 183767 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65061 | /* 183771 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65062 | /* 183775 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65063 | /* 183778 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65064 | /* 183782 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65065 | /* 183786 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65066 | /* 183790 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65067 | /* 183792 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65068 | /* 183799 */ // (smin:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPMINSQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65069 | /* 183799 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ256rm), |
| 65070 | /* 183802 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65071 | /* 183804 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65072 | /* 183806 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65073 | /* 183810 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65074 | /* 183815 */ GIR_RootConstrainSelectedInstOperands, |
| 65075 | /* 183816 */ // GIR_Coverage, 24071, |
| 65076 | /* 183816 */ GIR_EraseRootFromParent_Done, |
| 65077 | /* 183817 */ // Label 4058: @183817 |
| 65078 | /* 183817 */ GIM_Try, /*On fail goto*//*Label 4059*/ GIMT_Encode4(183875), // Rule ID 5581 // |
| 65079 | /* 183822 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65080 | /* 183825 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65081 | /* 183829 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65082 | /* 183833 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65083 | /* 183837 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65084 | /* 183840 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65085 | /* 183844 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65086 | /* 183848 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65087 | /* 183850 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65088 | /* 183857 */ // (smin:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65089 | /* 183857 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ256rm), |
| 65090 | /* 183860 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65091 | /* 183862 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65092 | /* 183864 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65093 | /* 183868 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65094 | /* 183873 */ GIR_RootConstrainSelectedInstOperands, |
| 65095 | /* 183874 */ // GIR_Coverage, 5581, |
| 65096 | /* 183874 */ GIR_EraseRootFromParent_Done, |
| 65097 | /* 183875 */ // Label 4059: @183875 |
| 65098 | /* 183875 */ GIM_Try, /*On fail goto*//*Label 4060*/ GIMT_Encode4(183898), // Rule ID 5578 // |
| 65099 | /* 183880 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65100 | /* 183883 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65101 | /* 183887 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65102 | /* 183891 */ // (smin:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPMINSQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 65103 | /* 183891 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ256rr), |
| 65104 | /* 183896 */ GIR_RootConstrainSelectedInstOperands, |
| 65105 | /* 183897 */ // GIR_Coverage, 5578, |
| 65106 | /* 183897 */ GIR_Done, |
| 65107 | /* 183898 */ // Label 4060: @183898 |
| 65108 | /* 183898 */ GIM_Try, /*On fail goto*//*Label 4061*/ GIMT_Encode4(184059), // Rule ID 20012 // |
| 65109 | /* 183903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 65110 | /* 183906 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65111 | /* 183910 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65112 | /* 183914 */ // (smin:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPMINSQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 65113 | /* 183914 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 65114 | /* 183917 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 65115 | /* 183921 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 65116 | /* 183926 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 65117 | /* 183928 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 65118 | /* 183931 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 65119 | /* 183935 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 65120 | /* 183940 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 65121 | /* 183943 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 65122 | /* 183947 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 65123 | /* 183950 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 65124 | /* 183955 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 65125 | /* 183960 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 65126 | /* 183965 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 65127 | /* 183968 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 65128 | /* 183972 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 65129 | /* 183977 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 65130 | /* 183979 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 65131 | /* 183982 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 65132 | /* 183986 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 65133 | /* 183991 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 65134 | /* 183994 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 65135 | /* 183998 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 65136 | /* 184001 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 65137 | /* 184006 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 65138 | /* 184011 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 65139 | /* 184016 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 65140 | /* 184019 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMINSQZrr), |
| 65141 | /* 184023 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 65142 | /* 184028 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 65143 | /* 184031 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 65144 | /* 184034 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 65145 | /* 184036 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 65146 | /* 184039 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65147 | /* 184041 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 65148 | /* 184048 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 65149 | /* 184053 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 65150 | /* 184058 */ // GIR_Coverage, 20012, |
| 65151 | /* 184058 */ GIR_EraseRootFromParent_Done, |
| 65152 | /* 184059 */ // Label 4061: @184059 |
| 65153 | /* 184059 */ GIM_Reject, |
| 65154 | /* 184060 */ // Label 4057: @184060 |
| 65155 | /* 184060 */ GIM_Reject, |
| 65156 | /* 184061 */ // Label 4034: @184061 |
| 65157 | /* 184061 */ GIM_Try, /*On fail goto*//*Label 4062*/ GIMT_Encode4(184402), |
| 65158 | /* 184066 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 65159 | /* 184069 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 65160 | /* 184072 */ GIM_Try, /*On fail goto*//*Label 4063*/ GIMT_Encode4(184134), // Rule ID 23465 // |
| 65161 | /* 184077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65162 | /* 184080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65163 | /* 184084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65164 | /* 184088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65165 | /* 184092 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65166 | /* 184095 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65167 | /* 184099 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65168 | /* 184103 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65169 | /* 184107 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65170 | /* 184109 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65171 | /* 184116 */ // (smin:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMINSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65172 | /* 184116 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWrm), |
| 65173 | /* 184119 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65174 | /* 184121 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65175 | /* 184123 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65176 | /* 184127 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65177 | /* 184132 */ GIR_RootConstrainSelectedInstOperands, |
| 65178 | /* 184133 */ // GIR_Coverage, 23465, |
| 65179 | /* 184133 */ GIR_EraseRootFromParent_Done, |
| 65180 | /* 184134 */ // Label 4063: @184134 |
| 65181 | /* 184134 */ GIM_Try, /*On fail goto*//*Label 4064*/ GIMT_Encode4(184196), // Rule ID 24044 // |
| 65182 | /* 184139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65183 | /* 184142 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65184 | /* 184146 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65185 | /* 184150 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65186 | /* 184154 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65187 | /* 184157 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65188 | /* 184161 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65189 | /* 184165 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65190 | /* 184169 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65191 | /* 184171 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65192 | /* 184178 */ // (smin:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMINSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65193 | /* 184178 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ128rm), |
| 65194 | /* 184181 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65195 | /* 184183 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65196 | /* 184185 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65197 | /* 184189 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65198 | /* 184194 */ GIR_RootConstrainSelectedInstOperands, |
| 65199 | /* 184195 */ // GIR_Coverage, 24044, |
| 65200 | /* 184195 */ GIR_EraseRootFromParent_Done, |
| 65201 | /* 184196 */ // Label 4064: @184196 |
| 65202 | /* 184196 */ GIM_Try, /*On fail goto*//*Label 4065*/ GIMT_Encode4(184258), // Rule ID 2643 // |
| 65203 | /* 184201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65204 | /* 184204 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65205 | /* 184208 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65206 | /* 184212 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65207 | /* 184216 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65208 | /* 184220 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65209 | /* 184223 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65210 | /* 184227 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65211 | /* 184231 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65212 | /* 184233 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65213 | /* 184240 */ // (smin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65214 | /* 184240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWrm), |
| 65215 | /* 184243 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65216 | /* 184245 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65217 | /* 184247 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65218 | /* 184251 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65219 | /* 184256 */ GIR_RootConstrainSelectedInstOperands, |
| 65220 | /* 184257 */ // GIR_Coverage, 2643, |
| 65221 | /* 184257 */ GIR_EraseRootFromParent_Done, |
| 65222 | /* 184258 */ // Label 4065: @184258 |
| 65223 | /* 184258 */ GIM_Try, /*On fail goto*//*Label 4066*/ GIMT_Encode4(184320), // Rule ID 5539 // |
| 65224 | /* 184263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65225 | /* 184266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65226 | /* 184270 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65227 | /* 184274 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65228 | /* 184278 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65229 | /* 184282 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65230 | /* 184285 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65231 | /* 184289 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65232 | /* 184293 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65233 | /* 184295 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65234 | /* 184302 */ // (smin:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65235 | /* 184302 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ128rm), |
| 65236 | /* 184305 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65237 | /* 184307 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65238 | /* 184309 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65239 | /* 184313 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65240 | /* 184318 */ GIR_RootConstrainSelectedInstOperands, |
| 65241 | /* 184319 */ // GIR_Coverage, 5539, |
| 65242 | /* 184319 */ GIR_EraseRootFromParent_Done, |
| 65243 | /* 184320 */ // Label 4066: @184320 |
| 65244 | /* 184320 */ GIM_Try, /*On fail goto*//*Label 4067*/ GIMT_Encode4(184347), // Rule ID 2642 // |
| 65245 | /* 184325 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65246 | /* 184328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65247 | /* 184332 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65248 | /* 184336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65249 | /* 184340 */ // (smin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMINSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 65250 | /* 184340 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSWrr), |
| 65251 | /* 184345 */ GIR_RootConstrainSelectedInstOperands, |
| 65252 | /* 184346 */ // GIR_Coverage, 2642, |
| 65253 | /* 184346 */ GIR_Done, |
| 65254 | /* 184347 */ // Label 4067: @184347 |
| 65255 | /* 184347 */ GIM_Try, /*On fail goto*//*Label 4068*/ GIMT_Encode4(184374), // Rule ID 2644 // |
| 65256 | /* 184352 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 65257 | /* 184355 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65258 | /* 184359 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65259 | /* 184363 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65260 | /* 184367 */ // (smin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMINSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 65261 | /* 184367 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINSWrr), |
| 65262 | /* 184372 */ GIR_RootConstrainSelectedInstOperands, |
| 65263 | /* 184373 */ // GIR_Coverage, 2644, |
| 65264 | /* 184373 */ GIR_Done, |
| 65265 | /* 184374 */ // Label 4068: @184374 |
| 65266 | /* 184374 */ GIM_Try, /*On fail goto*//*Label 4069*/ GIMT_Encode4(184401), // Rule ID 5536 // |
| 65267 | /* 184379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65268 | /* 184382 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65269 | /* 184386 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65270 | /* 184390 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65271 | /* 184394 */ // (smin:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMINSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 65272 | /* 184394 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ128rr), |
| 65273 | /* 184399 */ GIR_RootConstrainSelectedInstOperands, |
| 65274 | /* 184400 */ // GIR_Coverage, 5536, |
| 65275 | /* 184400 */ GIR_Done, |
| 65276 | /* 184401 */ // Label 4069: @184401 |
| 65277 | /* 184401 */ GIM_Reject, |
| 65278 | /* 184402 */ // Label 4062: @184402 |
| 65279 | /* 184402 */ GIM_Reject, |
| 65280 | /* 184403 */ // Label 4035: @184403 |
| 65281 | /* 184403 */ GIM_Try, /*On fail goto*//*Label 4070*/ GIMT_Encode4(184717), |
| 65282 | /* 184408 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 65283 | /* 184411 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 65284 | /* 184414 */ GIM_Try, /*On fail goto*//*Label 4071*/ GIMT_Encode4(184476), // Rule ID 23510 // |
| 65285 | /* 184419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 65286 | /* 184422 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65287 | /* 184426 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65288 | /* 184430 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65289 | /* 184434 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65290 | /* 184437 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65291 | /* 184441 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65292 | /* 184445 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65293 | /* 184449 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65294 | /* 184451 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65295 | /* 184458 */ // (smin:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPMINSDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65296 | /* 184458 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDYrm), |
| 65297 | /* 184461 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65298 | /* 184463 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65299 | /* 184465 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65300 | /* 184469 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65301 | /* 184474 */ GIR_RootConstrainSelectedInstOperands, |
| 65302 | /* 184475 */ // GIR_Coverage, 23510, |
| 65303 | /* 184475 */ GIR_EraseRootFromParent_Done, |
| 65304 | /* 184476 */ // Label 4071: @184476 |
| 65305 | /* 184476 */ GIM_Try, /*On fail goto*//*Label 4072*/ GIMT_Encode4(184538), // Rule ID 24053 // |
| 65306 | /* 184481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65307 | /* 184484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65308 | /* 184488 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65309 | /* 184492 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65310 | /* 184496 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65311 | /* 184499 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65312 | /* 184503 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65313 | /* 184507 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65314 | /* 184511 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65315 | /* 184513 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65316 | /* 184520 */ // (smin:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPMINSDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65317 | /* 184520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ256rm), |
| 65318 | /* 184523 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65319 | /* 184525 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65320 | /* 184527 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65321 | /* 184531 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65322 | /* 184536 */ GIR_RootConstrainSelectedInstOperands, |
| 65323 | /* 184537 */ // GIR_Coverage, 24053, |
| 65324 | /* 184537 */ GIR_EraseRootFromParent_Done, |
| 65325 | /* 184538 */ // Label 4072: @184538 |
| 65326 | /* 184538 */ GIM_Try, /*On fail goto*//*Label 4073*/ GIMT_Encode4(184600), // Rule ID 3204 // |
| 65327 | /* 184543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 65328 | /* 184546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65329 | /* 184550 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65330 | /* 184554 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65331 | /* 184558 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65332 | /* 184562 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65333 | /* 184565 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65334 | /* 184569 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65335 | /* 184573 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65336 | /* 184575 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65337 | /* 184582 */ // (smin:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65338 | /* 184582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDYrm), |
| 65339 | /* 184585 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65340 | /* 184587 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65341 | /* 184589 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65342 | /* 184593 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65343 | /* 184598 */ GIR_RootConstrainSelectedInstOperands, |
| 65344 | /* 184599 */ // GIR_Coverage, 3204, |
| 65345 | /* 184599 */ GIR_EraseRootFromParent_Done, |
| 65346 | /* 184600 */ // Label 4073: @184600 |
| 65347 | /* 184600 */ GIM_Try, /*On fail goto*//*Label 4074*/ GIMT_Encode4(184662), // Rule ID 5554 // |
| 65348 | /* 184605 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65349 | /* 184608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65350 | /* 184612 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65351 | /* 184616 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65352 | /* 184620 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65353 | /* 184624 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65354 | /* 184627 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65355 | /* 184631 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65356 | /* 184635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65357 | /* 184637 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65358 | /* 184644 */ // (smin:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65359 | /* 184644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ256rm), |
| 65360 | /* 184647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65361 | /* 184649 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65362 | /* 184651 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65363 | /* 184655 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65364 | /* 184660 */ GIR_RootConstrainSelectedInstOperands, |
| 65365 | /* 184661 */ // GIR_Coverage, 5554, |
| 65366 | /* 184661 */ GIR_EraseRootFromParent_Done, |
| 65367 | /* 184662 */ // Label 4074: @184662 |
| 65368 | /* 184662 */ GIM_Try, /*On fail goto*//*Label 4075*/ GIMT_Encode4(184689), // Rule ID 3203 // |
| 65369 | /* 184667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 65370 | /* 184670 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65371 | /* 184674 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65372 | /* 184678 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65373 | /* 184682 */ // (smin:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMINSDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 65374 | /* 184682 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSDYrr), |
| 65375 | /* 184687 */ GIR_RootConstrainSelectedInstOperands, |
| 65376 | /* 184688 */ // GIR_Coverage, 3203, |
| 65377 | /* 184688 */ GIR_Done, |
| 65378 | /* 184689 */ // Label 4075: @184689 |
| 65379 | /* 184689 */ GIM_Try, /*On fail goto*//*Label 4076*/ GIMT_Encode4(184716), // Rule ID 5551 // |
| 65380 | /* 184694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65381 | /* 184697 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65382 | /* 184701 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65383 | /* 184705 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65384 | /* 184709 */ // (smin:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPMINSDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 65385 | /* 184709 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ256rr), |
| 65386 | /* 184714 */ GIR_RootConstrainSelectedInstOperands, |
| 65387 | /* 184715 */ // GIR_Coverage, 5551, |
| 65388 | /* 184715 */ GIR_Done, |
| 65389 | /* 184716 */ // Label 4076: @184716 |
| 65390 | /* 184716 */ GIM_Reject, |
| 65391 | /* 184717 */ // Label 4070: @184717 |
| 65392 | /* 184717 */ GIM_Reject, |
| 65393 | /* 184718 */ // Label 4036: @184718 |
| 65394 | /* 184718 */ GIM_Try, /*On fail goto*//*Label 4077*/ GIMT_Encode4(184873), |
| 65395 | /* 184723 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 65396 | /* 184726 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 65397 | /* 184729 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65398 | /* 184733 */ GIM_Try, /*On fail goto*//*Label 4078*/ GIMT_Encode4(184791), // Rule ID 24065 // |
| 65399 | /* 184738 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 65400 | /* 184741 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65401 | /* 184745 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65402 | /* 184749 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65403 | /* 184752 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65404 | /* 184756 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65405 | /* 184760 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65406 | /* 184764 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65407 | /* 184766 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65408 | /* 184773 */ // (smin:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPMINSQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65409 | /* 184773 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZrm), |
| 65410 | /* 184776 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65411 | /* 184778 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65412 | /* 184780 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65413 | /* 184784 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65414 | /* 184789 */ GIR_RootConstrainSelectedInstOperands, |
| 65415 | /* 184790 */ // GIR_Coverage, 24065, |
| 65416 | /* 184790 */ GIR_EraseRootFromParent_Done, |
| 65417 | /* 184791 */ // Label 4078: @184791 |
| 65418 | /* 184791 */ GIM_Try, /*On fail goto*//*Label 4079*/ GIMT_Encode4(184849), // Rule ID 5572 // |
| 65419 | /* 184796 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 65420 | /* 184799 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65421 | /* 184803 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65422 | /* 184807 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65423 | /* 184811 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65424 | /* 184814 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65425 | /* 184818 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65426 | /* 184822 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65427 | /* 184824 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65428 | /* 184831 */ // (smin:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65429 | /* 184831 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZrm), |
| 65430 | /* 184834 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65431 | /* 184836 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65432 | /* 184838 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65433 | /* 184842 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65434 | /* 184847 */ GIR_RootConstrainSelectedInstOperands, |
| 65435 | /* 184848 */ // GIR_Coverage, 5572, |
| 65436 | /* 184848 */ GIR_EraseRootFromParent_Done, |
| 65437 | /* 184849 */ // Label 4079: @184849 |
| 65438 | /* 184849 */ GIM_Try, /*On fail goto*//*Label 4080*/ GIMT_Encode4(184872), // Rule ID 5569 // |
| 65439 | /* 184854 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 65440 | /* 184857 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65441 | /* 184861 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65442 | /* 184865 */ // (smin:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPMINSQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 65443 | /* 184865 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSQZrr), |
| 65444 | /* 184870 */ GIR_RootConstrainSelectedInstOperands, |
| 65445 | /* 184871 */ // GIR_Coverage, 5569, |
| 65446 | /* 184871 */ GIR_Done, |
| 65447 | /* 184872 */ // Label 4080: @184872 |
| 65448 | /* 184872 */ GIM_Reject, |
| 65449 | /* 184873 */ // Label 4077: @184873 |
| 65450 | /* 184873 */ GIM_Reject, |
| 65451 | /* 184874 */ // Label 4037: @184874 |
| 65452 | /* 184874 */ GIM_Try, /*On fail goto*//*Label 4081*/ GIMT_Encode4(185215), |
| 65453 | /* 184879 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 65454 | /* 184882 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 65455 | /* 184885 */ GIM_Try, /*On fail goto*//*Label 4082*/ GIMT_Encode4(184947), // Rule ID 23506 // |
| 65456 | /* 184890 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65457 | /* 184893 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65458 | /* 184897 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65459 | /* 184901 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65460 | /* 184905 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65461 | /* 184908 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65462 | /* 184912 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65463 | /* 184916 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65464 | /* 184920 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65465 | /* 184922 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65466 | /* 184929 */ // (smin:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPMINSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65467 | /* 184929 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBrm), |
| 65468 | /* 184932 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65469 | /* 184934 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65470 | /* 184936 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65471 | /* 184940 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65472 | /* 184945 */ GIR_RootConstrainSelectedInstOperands, |
| 65473 | /* 184946 */ // GIR_Coverage, 23506, |
| 65474 | /* 184946 */ GIR_EraseRootFromParent_Done, |
| 65475 | /* 184947 */ // Label 4082: @184947 |
| 65476 | /* 184947 */ GIM_Try, /*On fail goto*//*Label 4083*/ GIMT_Encode4(185009), // Rule ID 24035 // |
| 65477 | /* 184952 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65478 | /* 184955 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65479 | /* 184959 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65480 | /* 184963 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65481 | /* 184967 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65482 | /* 184970 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65483 | /* 184974 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65484 | /* 184978 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65485 | /* 184982 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65486 | /* 184984 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65487 | /* 184991 */ // (smin:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPMINSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65488 | /* 184991 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ128rm), |
| 65489 | /* 184994 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65490 | /* 184996 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65491 | /* 184998 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65492 | /* 185002 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65493 | /* 185007 */ GIR_RootConstrainSelectedInstOperands, |
| 65494 | /* 185008 */ // GIR_Coverage, 24035, |
| 65495 | /* 185008 */ GIR_EraseRootFromParent_Done, |
| 65496 | /* 185009 */ // Label 4083: @185009 |
| 65497 | /* 185009 */ GIM_Try, /*On fail goto*//*Label 4084*/ GIMT_Encode4(185071), // Rule ID 3196 // |
| 65498 | /* 185014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65499 | /* 185017 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65500 | /* 185021 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65501 | /* 185025 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65502 | /* 185029 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65503 | /* 185033 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65504 | /* 185036 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65505 | /* 185040 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65506 | /* 185044 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65507 | /* 185046 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65508 | /* 185053 */ // (smin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65509 | /* 185053 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBrm), |
| 65510 | /* 185056 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65511 | /* 185058 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65512 | /* 185060 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65513 | /* 185064 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65514 | /* 185069 */ GIR_RootConstrainSelectedInstOperands, |
| 65515 | /* 185070 */ // GIR_Coverage, 3196, |
| 65516 | /* 185070 */ GIR_EraseRootFromParent_Done, |
| 65517 | /* 185071 */ // Label 4084: @185071 |
| 65518 | /* 185071 */ GIM_Try, /*On fail goto*//*Label 4085*/ GIMT_Encode4(185133), // Rule ID 5521 // |
| 65519 | /* 185076 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65520 | /* 185079 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65521 | /* 185083 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65522 | /* 185087 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65523 | /* 185091 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65524 | /* 185095 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65525 | /* 185098 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65526 | /* 185102 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65527 | /* 185106 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65528 | /* 185108 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65529 | /* 185115 */ // (smin:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65530 | /* 185115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ128rm), |
| 65531 | /* 185118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65532 | /* 185120 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65533 | /* 185122 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65534 | /* 185126 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65535 | /* 185131 */ GIR_RootConstrainSelectedInstOperands, |
| 65536 | /* 185132 */ // GIR_Coverage, 5521, |
| 65537 | /* 185132 */ GIR_EraseRootFromParent_Done, |
| 65538 | /* 185133 */ // Label 4085: @185133 |
| 65539 | /* 185133 */ GIM_Try, /*On fail goto*//*Label 4086*/ GIMT_Encode4(185160), // Rule ID 3195 // |
| 65540 | /* 185138 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65541 | /* 185141 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65542 | /* 185145 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65543 | /* 185149 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65544 | /* 185153 */ // (smin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPMINSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 65545 | /* 185153 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSBrr), |
| 65546 | /* 185158 */ GIR_RootConstrainSelectedInstOperands, |
| 65547 | /* 185159 */ // GIR_Coverage, 3195, |
| 65548 | /* 185159 */ GIR_Done, |
| 65549 | /* 185160 */ // Label 4086: @185160 |
| 65550 | /* 185160 */ GIM_Try, /*On fail goto*//*Label 4087*/ GIMT_Encode4(185187), // Rule ID 3221 // |
| 65551 | /* 185165 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 65552 | /* 185168 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65553 | /* 185172 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65554 | /* 185176 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65555 | /* 185180 */ // (smin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PMINSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 65556 | /* 185180 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINSBrr), |
| 65557 | /* 185185 */ GIR_RootConstrainSelectedInstOperands, |
| 65558 | /* 185186 */ // GIR_Coverage, 3221, |
| 65559 | /* 185186 */ GIR_Done, |
| 65560 | /* 185187 */ // Label 4087: @185187 |
| 65561 | /* 185187 */ GIM_Try, /*On fail goto*//*Label 4088*/ GIMT_Encode4(185214), // Rule ID 5518 // |
| 65562 | /* 185192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65563 | /* 185195 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65564 | /* 185199 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65565 | /* 185203 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65566 | /* 185207 */ // (smin:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPMINSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 65567 | /* 185207 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ128rr), |
| 65568 | /* 185212 */ GIR_RootConstrainSelectedInstOperands, |
| 65569 | /* 185213 */ // GIR_Coverage, 5518, |
| 65570 | /* 185213 */ GIR_Done, |
| 65571 | /* 185214 */ // Label 4088: @185214 |
| 65572 | /* 185214 */ GIM_Reject, |
| 65573 | /* 185215 */ // Label 4081: @185215 |
| 65574 | /* 185215 */ GIM_Reject, |
| 65575 | /* 185216 */ // Label 4038: @185216 |
| 65576 | /* 185216 */ GIM_Try, /*On fail goto*//*Label 4089*/ GIMT_Encode4(185530), |
| 65577 | /* 185221 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 65578 | /* 185224 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 65579 | /* 185227 */ GIM_Try, /*On fail goto*//*Label 4090*/ GIMT_Encode4(185289), // Rule ID 23467 // |
| 65580 | /* 185232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65581 | /* 185235 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65582 | /* 185239 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65583 | /* 185243 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65584 | /* 185247 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65585 | /* 185250 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65586 | /* 185254 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65587 | /* 185258 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65588 | /* 185262 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65589 | /* 185264 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65590 | /* 185271 */ // (smin:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMINSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65591 | /* 185271 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWYrm), |
| 65592 | /* 185274 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65593 | /* 185276 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65594 | /* 185278 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65595 | /* 185282 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65596 | /* 185287 */ GIR_RootConstrainSelectedInstOperands, |
| 65597 | /* 185288 */ // GIR_Coverage, 23467, |
| 65598 | /* 185288 */ GIR_EraseRootFromParent_Done, |
| 65599 | /* 185289 */ // Label 4090: @185289 |
| 65600 | /* 185289 */ GIM_Try, /*On fail goto*//*Label 4091*/ GIMT_Encode4(185351), // Rule ID 24041 // |
| 65601 | /* 185294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65602 | /* 185297 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65603 | /* 185301 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65604 | /* 185305 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65605 | /* 185309 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65606 | /* 185312 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65607 | /* 185316 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65608 | /* 185320 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65609 | /* 185324 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65610 | /* 185326 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65611 | /* 185333 */ // (smin:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMINSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65612 | /* 185333 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ256rm), |
| 65613 | /* 185336 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65614 | /* 185338 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65615 | /* 185340 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65616 | /* 185344 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65617 | /* 185349 */ GIR_RootConstrainSelectedInstOperands, |
| 65618 | /* 185350 */ // GIR_Coverage, 24041, |
| 65619 | /* 185350 */ GIR_EraseRootFromParent_Done, |
| 65620 | /* 185351 */ // Label 4091: @185351 |
| 65621 | /* 185351 */ GIM_Try, /*On fail goto*//*Label 4092*/ GIMT_Encode4(185413), // Rule ID 2647 // |
| 65622 | /* 185356 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65623 | /* 185359 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65624 | /* 185363 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65625 | /* 185367 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65626 | /* 185371 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65627 | /* 185375 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65628 | /* 185378 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65629 | /* 185382 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65630 | /* 185386 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65631 | /* 185388 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65632 | /* 185395 */ // (smin:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65633 | /* 185395 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWYrm), |
| 65634 | /* 185398 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65635 | /* 185400 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65636 | /* 185402 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65637 | /* 185406 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65638 | /* 185411 */ GIR_RootConstrainSelectedInstOperands, |
| 65639 | /* 185412 */ // GIR_Coverage, 2647, |
| 65640 | /* 185412 */ GIR_EraseRootFromParent_Done, |
| 65641 | /* 185413 */ // Label 4092: @185413 |
| 65642 | /* 185413 */ GIM_Try, /*On fail goto*//*Label 4093*/ GIMT_Encode4(185475), // Rule ID 5533 // |
| 65643 | /* 185418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65644 | /* 185421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65645 | /* 185425 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65646 | /* 185429 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65647 | /* 185433 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65648 | /* 185437 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65649 | /* 185440 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65650 | /* 185444 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65651 | /* 185448 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65652 | /* 185450 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65653 | /* 185457 */ // (smin:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65654 | /* 185457 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ256rm), |
| 65655 | /* 185460 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65656 | /* 185462 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65657 | /* 185464 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65658 | /* 185468 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65659 | /* 185473 */ GIR_RootConstrainSelectedInstOperands, |
| 65660 | /* 185474 */ // GIR_Coverage, 5533, |
| 65661 | /* 185474 */ GIR_EraseRootFromParent_Done, |
| 65662 | /* 185475 */ // Label 4093: @185475 |
| 65663 | /* 185475 */ GIM_Try, /*On fail goto*//*Label 4094*/ GIMT_Encode4(185502), // Rule ID 2646 // |
| 65664 | /* 185480 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65665 | /* 185483 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65666 | /* 185487 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65667 | /* 185491 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65668 | /* 185495 */ // (smin:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMINSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 65669 | /* 185495 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSWYrr), |
| 65670 | /* 185500 */ GIR_RootConstrainSelectedInstOperands, |
| 65671 | /* 185501 */ // GIR_Coverage, 2646, |
| 65672 | /* 185501 */ GIR_Done, |
| 65673 | /* 185502 */ // Label 4094: @185502 |
| 65674 | /* 185502 */ GIM_Try, /*On fail goto*//*Label 4095*/ GIMT_Encode4(185529), // Rule ID 5530 // |
| 65675 | /* 185507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65676 | /* 185510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65677 | /* 185514 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65678 | /* 185518 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65679 | /* 185522 */ // (smin:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMINSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 65680 | /* 185522 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ256rr), |
| 65681 | /* 185527 */ GIR_RootConstrainSelectedInstOperands, |
| 65682 | /* 185528 */ // GIR_Coverage, 5530, |
| 65683 | /* 185528 */ GIR_Done, |
| 65684 | /* 185529 */ // Label 4095: @185529 |
| 65685 | /* 185529 */ GIM_Reject, |
| 65686 | /* 185530 */ // Label 4089: @185530 |
| 65687 | /* 185530 */ GIM_Reject, |
| 65688 | /* 185531 */ // Label 4039: @185531 |
| 65689 | /* 185531 */ GIM_Try, /*On fail goto*//*Label 4096*/ GIMT_Encode4(185686), |
| 65690 | /* 185536 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 65691 | /* 185539 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 65692 | /* 185542 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65693 | /* 185546 */ GIM_Try, /*On fail goto*//*Label 4097*/ GIMT_Encode4(185604), // Rule ID 24047 // |
| 65694 | /* 185551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 65695 | /* 185554 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65696 | /* 185558 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65697 | /* 185562 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65698 | /* 185565 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65699 | /* 185569 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65700 | /* 185573 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65701 | /* 185577 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65702 | /* 185579 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65703 | /* 185586 */ // (smin:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPMINSDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65704 | /* 185586 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZrm), |
| 65705 | /* 185589 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65706 | /* 185591 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65707 | /* 185593 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65708 | /* 185597 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65709 | /* 185602 */ GIR_RootConstrainSelectedInstOperands, |
| 65710 | /* 185603 */ // GIR_Coverage, 24047, |
| 65711 | /* 185603 */ GIR_EraseRootFromParent_Done, |
| 65712 | /* 185604 */ // Label 4097: @185604 |
| 65713 | /* 185604 */ GIM_Try, /*On fail goto*//*Label 4098*/ GIMT_Encode4(185662), // Rule ID 5545 // |
| 65714 | /* 185609 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 65715 | /* 185612 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65716 | /* 185616 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65717 | /* 185620 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65718 | /* 185624 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65719 | /* 185627 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65720 | /* 185631 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65721 | /* 185635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65722 | /* 185637 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65723 | /* 185644 */ // (smin:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65724 | /* 185644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZrm), |
| 65725 | /* 185647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65726 | /* 185649 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65727 | /* 185651 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65728 | /* 185655 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65729 | /* 185660 */ GIR_RootConstrainSelectedInstOperands, |
| 65730 | /* 185661 */ // GIR_Coverage, 5545, |
| 65731 | /* 185661 */ GIR_EraseRootFromParent_Done, |
| 65732 | /* 185662 */ // Label 4098: @185662 |
| 65733 | /* 185662 */ GIM_Try, /*On fail goto*//*Label 4099*/ GIMT_Encode4(185685), // Rule ID 5542 // |
| 65734 | /* 185667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 65735 | /* 185670 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65736 | /* 185674 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65737 | /* 185678 */ // (smin:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPMINSDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 65738 | /* 185678 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSDZrr), |
| 65739 | /* 185683 */ GIR_RootConstrainSelectedInstOperands, |
| 65740 | /* 185684 */ // GIR_Coverage, 5542, |
| 65741 | /* 185684 */ GIR_Done, |
| 65742 | /* 185685 */ // Label 4099: @185685 |
| 65743 | /* 185685 */ GIM_Reject, |
| 65744 | /* 185686 */ // Label 4096: @185686 |
| 65745 | /* 185686 */ GIM_Reject, |
| 65746 | /* 185687 */ // Label 4040: @185687 |
| 65747 | /* 185687 */ GIM_Try, /*On fail goto*//*Label 4100*/ GIMT_Encode4(186001), |
| 65748 | /* 185692 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 65749 | /* 185695 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 65750 | /* 185698 */ GIM_Try, /*On fail goto*//*Label 4101*/ GIMT_Encode4(185760), // Rule ID 23515 // |
| 65751 | /* 185703 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65752 | /* 185706 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65753 | /* 185710 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65754 | /* 185714 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65755 | /* 185718 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65756 | /* 185721 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65757 | /* 185725 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65758 | /* 185729 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65759 | /* 185733 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65760 | /* 185735 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65761 | /* 185742 */ // (smin:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPMINSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65762 | /* 185742 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBYrm), |
| 65763 | /* 185745 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65764 | /* 185747 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65765 | /* 185749 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65766 | /* 185753 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65767 | /* 185758 */ GIR_RootConstrainSelectedInstOperands, |
| 65768 | /* 185759 */ // GIR_Coverage, 23515, |
| 65769 | /* 185759 */ GIR_EraseRootFromParent_Done, |
| 65770 | /* 185760 */ // Label 4101: @185760 |
| 65771 | /* 185760 */ GIM_Try, /*On fail goto*//*Label 4102*/ GIMT_Encode4(185822), // Rule ID 24032 // |
| 65772 | /* 185765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65773 | /* 185768 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65774 | /* 185772 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65775 | /* 185776 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65776 | /* 185780 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65777 | /* 185783 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65778 | /* 185787 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65779 | /* 185791 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65780 | /* 185795 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65781 | /* 185797 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65782 | /* 185804 */ // (smin:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPMINSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65783 | /* 185804 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ256rm), |
| 65784 | /* 185807 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65785 | /* 185809 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65786 | /* 185811 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65787 | /* 185815 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65788 | /* 185820 */ GIR_RootConstrainSelectedInstOperands, |
| 65789 | /* 185821 */ // GIR_Coverage, 24032, |
| 65790 | /* 185821 */ GIR_EraseRootFromParent_Done, |
| 65791 | /* 185822 */ // Label 4102: @185822 |
| 65792 | /* 185822 */ GIM_Try, /*On fail goto*//*Label 4103*/ GIMT_Encode4(185884), // Rule ID 3214 // |
| 65793 | /* 185827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65794 | /* 185830 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65795 | /* 185834 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65796 | /* 185838 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65797 | /* 185842 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65798 | /* 185846 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65799 | /* 185849 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65800 | /* 185853 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65801 | /* 185857 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65802 | /* 185859 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65803 | /* 185866 */ // (smin:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65804 | /* 185866 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBYrm), |
| 65805 | /* 185869 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65806 | /* 185871 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65807 | /* 185873 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65808 | /* 185877 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65809 | /* 185882 */ GIR_RootConstrainSelectedInstOperands, |
| 65810 | /* 185883 */ // GIR_Coverage, 3214, |
| 65811 | /* 185883 */ GIR_EraseRootFromParent_Done, |
| 65812 | /* 185884 */ // Label 4103: @185884 |
| 65813 | /* 185884 */ GIM_Try, /*On fail goto*//*Label 4104*/ GIMT_Encode4(185946), // Rule ID 5515 // |
| 65814 | /* 185889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65815 | /* 185892 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65816 | /* 185896 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65817 | /* 185900 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65818 | /* 185904 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65819 | /* 185908 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65820 | /* 185911 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65821 | /* 185915 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65822 | /* 185919 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65823 | /* 185921 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65824 | /* 185928 */ // (smin:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65825 | /* 185928 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ256rm), |
| 65826 | /* 185931 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65827 | /* 185933 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65828 | /* 185935 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65829 | /* 185939 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65830 | /* 185944 */ GIR_RootConstrainSelectedInstOperands, |
| 65831 | /* 185945 */ // GIR_Coverage, 5515, |
| 65832 | /* 185945 */ GIR_EraseRootFromParent_Done, |
| 65833 | /* 185946 */ // Label 4104: @185946 |
| 65834 | /* 185946 */ GIM_Try, /*On fail goto*//*Label 4105*/ GIMT_Encode4(185973), // Rule ID 3213 // |
| 65835 | /* 185951 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65836 | /* 185954 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65837 | /* 185958 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65838 | /* 185962 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65839 | /* 185966 */ // (smin:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPMINSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 65840 | /* 185966 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSBYrr), |
| 65841 | /* 185971 */ GIR_RootConstrainSelectedInstOperands, |
| 65842 | /* 185972 */ // GIR_Coverage, 3213, |
| 65843 | /* 185972 */ GIR_Done, |
| 65844 | /* 185973 */ // Label 4105: @185973 |
| 65845 | /* 185973 */ GIM_Try, /*On fail goto*//*Label 4106*/ GIMT_Encode4(186000), // Rule ID 5512 // |
| 65846 | /* 185978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65847 | /* 185981 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65848 | /* 185985 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65849 | /* 185989 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65850 | /* 185993 */ // (smin:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPMINSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 65851 | /* 185993 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ256rr), |
| 65852 | /* 185998 */ GIR_RootConstrainSelectedInstOperands, |
| 65853 | /* 185999 */ // GIR_Coverage, 5512, |
| 65854 | /* 185999 */ GIR_Done, |
| 65855 | /* 186000 */ // Label 4106: @186000 |
| 65856 | /* 186000 */ GIM_Reject, |
| 65857 | /* 186001 */ // Label 4100: @186001 |
| 65858 | /* 186001 */ GIM_Reject, |
| 65859 | /* 186002 */ // Label 4041: @186002 |
| 65860 | /* 186002 */ GIM_Try, /*On fail goto*//*Label 4107*/ GIMT_Encode4(186157), |
| 65861 | /* 186007 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 65862 | /* 186010 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 65863 | /* 186013 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65864 | /* 186017 */ GIM_Try, /*On fail goto*//*Label 4108*/ GIMT_Encode4(186075), // Rule ID 24038 // |
| 65865 | /* 186022 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65866 | /* 186025 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65867 | /* 186029 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65868 | /* 186033 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65869 | /* 186036 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65870 | /* 186040 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65871 | /* 186044 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65872 | /* 186048 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65873 | /* 186050 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65874 | /* 186057 */ // (smin:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMINSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65875 | /* 186057 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZrm), |
| 65876 | /* 186060 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65877 | /* 186062 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65878 | /* 186064 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65879 | /* 186068 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65880 | /* 186073 */ GIR_RootConstrainSelectedInstOperands, |
| 65881 | /* 186074 */ // GIR_Coverage, 24038, |
| 65882 | /* 186074 */ GIR_EraseRootFromParent_Done, |
| 65883 | /* 186075 */ // Label 4108: @186075 |
| 65884 | /* 186075 */ GIM_Try, /*On fail goto*//*Label 4109*/ GIMT_Encode4(186133), // Rule ID 5527 // |
| 65885 | /* 186080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65886 | /* 186083 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65887 | /* 186087 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65888 | /* 186091 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65889 | /* 186095 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65890 | /* 186098 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65891 | /* 186102 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65892 | /* 186106 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65893 | /* 186108 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65894 | /* 186115 */ // (smin:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65895 | /* 186115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZrm), |
| 65896 | /* 186118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65897 | /* 186120 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65898 | /* 186122 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65899 | /* 186126 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65900 | /* 186131 */ GIR_RootConstrainSelectedInstOperands, |
| 65901 | /* 186132 */ // GIR_Coverage, 5527, |
| 65902 | /* 186132 */ GIR_EraseRootFromParent_Done, |
| 65903 | /* 186133 */ // Label 4109: @186133 |
| 65904 | /* 186133 */ GIM_Try, /*On fail goto*//*Label 4110*/ GIMT_Encode4(186156), // Rule ID 5524 // |
| 65905 | /* 186138 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65906 | /* 186141 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65907 | /* 186145 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65908 | /* 186149 */ // (smin:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMINSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 65909 | /* 186149 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSWZrr), |
| 65910 | /* 186154 */ GIR_RootConstrainSelectedInstOperands, |
| 65911 | /* 186155 */ // GIR_Coverage, 5524, |
| 65912 | /* 186155 */ GIR_Done, |
| 65913 | /* 186156 */ // Label 4110: @186156 |
| 65914 | /* 186156 */ GIM_Reject, |
| 65915 | /* 186157 */ // Label 4107: @186157 |
| 65916 | /* 186157 */ GIM_Reject, |
| 65917 | /* 186158 */ // Label 4042: @186158 |
| 65918 | /* 186158 */ GIM_Try, /*On fail goto*//*Label 4111*/ GIMT_Encode4(186313), |
| 65919 | /* 186163 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 65920 | /* 186166 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 65921 | /* 186169 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65922 | /* 186173 */ GIM_Try, /*On fail goto*//*Label 4112*/ GIMT_Encode4(186231), // Rule ID 24029 // |
| 65923 | /* 186178 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65924 | /* 186181 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65925 | /* 186185 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65926 | /* 186189 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65927 | /* 186192 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65928 | /* 186196 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65929 | /* 186200 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65930 | /* 186204 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65931 | /* 186206 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65932 | /* 186213 */ // (smin:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPMINSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65933 | /* 186213 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZrm), |
| 65934 | /* 186216 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65935 | /* 186218 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65936 | /* 186220 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65937 | /* 186224 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65938 | /* 186229 */ GIR_RootConstrainSelectedInstOperands, |
| 65939 | /* 186230 */ // GIR_Coverage, 24029, |
| 65940 | /* 186230 */ GIR_EraseRootFromParent_Done, |
| 65941 | /* 186231 */ // Label 4112: @186231 |
| 65942 | /* 186231 */ GIM_Try, /*On fail goto*//*Label 4113*/ GIMT_Encode4(186289), // Rule ID 5509 // |
| 65943 | /* 186236 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65944 | /* 186239 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65945 | /* 186243 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65946 | /* 186247 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65947 | /* 186251 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65948 | /* 186254 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65949 | /* 186258 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65950 | /* 186262 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65951 | /* 186264 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65952 | /* 186271 */ // (smin:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65953 | /* 186271 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZrm), |
| 65954 | /* 186274 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65955 | /* 186276 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65956 | /* 186278 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65957 | /* 186282 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65958 | /* 186287 */ GIR_RootConstrainSelectedInstOperands, |
| 65959 | /* 186288 */ // GIR_Coverage, 5509, |
| 65960 | /* 186288 */ GIR_EraseRootFromParent_Done, |
| 65961 | /* 186289 */ // Label 4113: @186289 |
| 65962 | /* 186289 */ GIM_Try, /*On fail goto*//*Label 4114*/ GIMT_Encode4(186312), // Rule ID 5506 // |
| 65963 | /* 186294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65964 | /* 186297 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65965 | /* 186301 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65966 | /* 186305 */ // (smin:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPMINSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 65967 | /* 186305 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSBZrr), |
| 65968 | /* 186310 */ GIR_RootConstrainSelectedInstOperands, |
| 65969 | /* 186311 */ // GIR_Coverage, 5506, |
| 65970 | /* 186311 */ GIR_Done, |
| 65971 | /* 186312 */ // Label 4114: @186312 |
| 65972 | /* 186312 */ GIM_Reject, |
| 65973 | /* 186313 */ // Label 4111: @186313 |
| 65974 | /* 186313 */ GIM_Reject, |
| 65975 | /* 186314 */ // Label 4043: @186314 |
| 65976 | /* 186314 */ GIM_Reject, |
| 65977 | /* 186315 */ // Label 55: @186315 |
| 65978 | /* 186315 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4127*/ GIMT_Encode4(189635), |
| 65979 | /* 186326 */ /*GILLT_v2s64*//*Label 4115*/ GIMT_Encode4(186394), GIMT_Encode4(0), |
| 65980 | /* 186334 */ /*GILLT_v4s32*//*Label 4116*/ GIMT_Encode4(186723), |
| 65981 | /* 186338 */ /*GILLT_v4s64*//*Label 4117*/ GIMT_Encode4(187065), GIMT_Encode4(0), |
| 65982 | /* 186346 */ /*GILLT_v8s16*//*Label 4118*/ GIMT_Encode4(187382), |
| 65983 | /* 186350 */ /*GILLT_v8s32*//*Label 4119*/ GIMT_Encode4(187724), |
| 65984 | /* 186354 */ /*GILLT_v8s64*//*Label 4120*/ GIMT_Encode4(188039), GIMT_Encode4(0), |
| 65985 | /* 186362 */ /*GILLT_v16s8*//*Label 4121*/ GIMT_Encode4(188195), |
| 65986 | /* 186366 */ /*GILLT_v16s16*//*Label 4122*/ GIMT_Encode4(188537), |
| 65987 | /* 186370 */ /*GILLT_v16s32*//*Label 4123*/ GIMT_Encode4(188852), GIMT_Encode4(0), |
| 65988 | /* 186378 */ /*GILLT_v32s8*//*Label 4124*/ GIMT_Encode4(189008), |
| 65989 | /* 186382 */ /*GILLT_v32s16*//*Label 4125*/ GIMT_Encode4(189323), GIMT_Encode4(0), |
| 65990 | /* 186390 */ /*GILLT_v64s8*//*Label 4126*/ GIMT_Encode4(189479), |
| 65991 | /* 186394 */ // Label 4115: @186394 |
| 65992 | /* 186394 */ GIM_Try, /*On fail goto*//*Label 4128*/ GIMT_Encode4(186722), |
| 65993 | /* 186399 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 65994 | /* 186402 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 65995 | /* 186405 */ GIM_Try, /*On fail goto*//*Label 4129*/ GIMT_Encode4(186467), // Rule ID 23969 // |
| 65996 | /* 186410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65997 | /* 186413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65998 | /* 186417 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65999 | /* 186421 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66000 | /* 186425 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66001 | /* 186428 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66002 | /* 186432 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66003 | /* 186436 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66004 | /* 186440 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66005 | /* 186442 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66006 | /* 186449 */ // (smax:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPMAXSQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66007 | /* 186449 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ128rm), |
| 66008 | /* 186452 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66009 | /* 186454 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66010 | /* 186456 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66011 | /* 186460 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66012 | /* 186465 */ GIR_RootConstrainSelectedInstOperands, |
| 66013 | /* 186466 */ // GIR_Coverage, 23969, |
| 66014 | /* 186466 */ GIR_EraseRootFromParent_Done, |
| 66015 | /* 186467 */ // Label 4129: @186467 |
| 66016 | /* 186467 */ GIM_Try, /*On fail goto*//*Label 4130*/ GIMT_Encode4(186529), // Rule ID 5410 // |
| 66017 | /* 186472 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66018 | /* 186475 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66019 | /* 186479 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66020 | /* 186483 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66021 | /* 186487 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66022 | /* 186491 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66023 | /* 186494 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66024 | /* 186498 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66025 | /* 186502 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66026 | /* 186504 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66027 | /* 186511 */ // (smax:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66028 | /* 186511 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ128rm), |
| 66029 | /* 186514 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66030 | /* 186516 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66031 | /* 186518 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66032 | /* 186522 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66033 | /* 186527 */ GIR_RootConstrainSelectedInstOperands, |
| 66034 | /* 186528 */ // GIR_Coverage, 5410, |
| 66035 | /* 186528 */ GIR_EraseRootFromParent_Done, |
| 66036 | /* 186529 */ // Label 4130: @186529 |
| 66037 | /* 186529 */ GIM_Try, /*On fail goto*//*Label 4131*/ GIMT_Encode4(186556), // Rule ID 5407 // |
| 66038 | /* 186534 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66039 | /* 186537 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66040 | /* 186541 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66041 | /* 186545 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66042 | /* 186549 */ // (smax:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPMAXSQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 66043 | /* 186549 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ128rr), |
| 66044 | /* 186554 */ GIR_RootConstrainSelectedInstOperands, |
| 66045 | /* 186555 */ // GIR_Coverage, 5407, |
| 66046 | /* 186555 */ GIR_Done, |
| 66047 | /* 186556 */ // Label 4131: @186556 |
| 66048 | /* 186556 */ GIM_Try, /*On fail goto*//*Label 4132*/ GIMT_Encode4(186721), // Rule ID 20010 // |
| 66049 | /* 186561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 66050 | /* 186564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 66051 | /* 186568 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66052 | /* 186572 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66053 | /* 186576 */ // (smax:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPMAXSQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 66054 | /* 186576 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 66055 | /* 186579 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 66056 | /* 186583 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 66057 | /* 186588 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 66058 | /* 186590 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 66059 | /* 186593 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 66060 | /* 186597 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 66061 | /* 186602 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 66062 | /* 186605 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 66063 | /* 186609 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 66064 | /* 186612 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 66065 | /* 186617 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66066 | /* 186622 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 66067 | /* 186627 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 66068 | /* 186630 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 66069 | /* 186634 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 66070 | /* 186639 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 66071 | /* 186641 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 66072 | /* 186644 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 66073 | /* 186648 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 66074 | /* 186653 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 66075 | /* 186656 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 66076 | /* 186660 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 66077 | /* 186663 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 66078 | /* 186668 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66079 | /* 186673 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 66080 | /* 186678 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 66081 | /* 186681 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZrr), |
| 66082 | /* 186685 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 66083 | /* 186690 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 66084 | /* 186693 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 66085 | /* 186696 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 66086 | /* 186698 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 66087 | /* 186701 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66088 | /* 186703 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 66089 | /* 186710 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 66090 | /* 186715 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66091 | /* 186720 */ // GIR_Coverage, 20010, |
| 66092 | /* 186720 */ GIR_EraseRootFromParent_Done, |
| 66093 | /* 186721 */ // Label 4132: @186721 |
| 66094 | /* 186721 */ GIM_Reject, |
| 66095 | /* 186722 */ // Label 4128: @186722 |
| 66096 | /* 186722 */ GIM_Reject, |
| 66097 | /* 186723 */ // Label 4116: @186723 |
| 66098 | /* 186723 */ GIM_Try, /*On fail goto*//*Label 4133*/ GIMT_Encode4(187064), |
| 66099 | /* 186728 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 66100 | /* 186731 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 66101 | /* 186734 */ GIM_Try, /*On fail goto*//*Label 4134*/ GIMT_Encode4(186796), // Rule ID 23503 // |
| 66102 | /* 186739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 66103 | /* 186742 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66104 | /* 186746 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66105 | /* 186750 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66106 | /* 186754 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66107 | /* 186757 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66108 | /* 186761 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66109 | /* 186765 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66110 | /* 186769 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66111 | /* 186771 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66112 | /* 186778 */ // (smax:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPMAXSDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66113 | /* 186778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDrm), |
| 66114 | /* 186781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66115 | /* 186783 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66116 | /* 186785 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66117 | /* 186789 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66118 | /* 186794 */ GIR_RootConstrainSelectedInstOperands, |
| 66119 | /* 186795 */ // GIR_Coverage, 23503, |
| 66120 | /* 186795 */ GIR_EraseRootFromParent_Done, |
| 66121 | /* 186796 */ // Label 4134: @186796 |
| 66122 | /* 186796 */ GIM_Try, /*On fail goto*//*Label 4135*/ GIMT_Encode4(186858), // Rule ID 23951 // |
| 66123 | /* 186801 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66124 | /* 186804 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66125 | /* 186808 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66126 | /* 186812 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66127 | /* 186816 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66128 | /* 186819 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66129 | /* 186823 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66130 | /* 186827 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66131 | /* 186831 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66132 | /* 186833 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66133 | /* 186840 */ // (smax:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPMAXSDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66134 | /* 186840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ128rm), |
| 66135 | /* 186843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66136 | /* 186845 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66137 | /* 186847 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66138 | /* 186851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66139 | /* 186856 */ GIR_RootConstrainSelectedInstOperands, |
| 66140 | /* 186857 */ // GIR_Coverage, 23951, |
| 66141 | /* 186857 */ GIR_EraseRootFromParent_Done, |
| 66142 | /* 186858 */ // Label 4135: @186858 |
| 66143 | /* 186858 */ GIM_Try, /*On fail goto*//*Label 4136*/ GIMT_Encode4(186920), // Rule ID 3190 // |
| 66144 | /* 186863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 66145 | /* 186866 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66146 | /* 186870 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66147 | /* 186874 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66148 | /* 186878 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66149 | /* 186882 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66150 | /* 186885 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66151 | /* 186889 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66152 | /* 186893 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66153 | /* 186895 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66154 | /* 186902 */ // (smax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66155 | /* 186902 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDrm), |
| 66156 | /* 186905 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66157 | /* 186907 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66158 | /* 186909 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66159 | /* 186913 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66160 | /* 186918 */ GIR_RootConstrainSelectedInstOperands, |
| 66161 | /* 186919 */ // GIR_Coverage, 3190, |
| 66162 | /* 186919 */ GIR_EraseRootFromParent_Done, |
| 66163 | /* 186920 */ // Label 4136: @186920 |
| 66164 | /* 186920 */ GIM_Try, /*On fail goto*//*Label 4137*/ GIMT_Encode4(186982), // Rule ID 5383 // |
| 66165 | /* 186925 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66166 | /* 186928 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66167 | /* 186932 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66168 | /* 186936 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66169 | /* 186940 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66170 | /* 186944 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66171 | /* 186947 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66172 | /* 186951 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66173 | /* 186955 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66174 | /* 186957 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66175 | /* 186964 */ // (smax:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66176 | /* 186964 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ128rm), |
| 66177 | /* 186967 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66178 | /* 186969 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66179 | /* 186971 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66180 | /* 186975 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66181 | /* 186980 */ GIR_RootConstrainSelectedInstOperands, |
| 66182 | /* 186981 */ // GIR_Coverage, 5383, |
| 66183 | /* 186981 */ GIR_EraseRootFromParent_Done, |
| 66184 | /* 186982 */ // Label 4137: @186982 |
| 66185 | /* 186982 */ GIM_Try, /*On fail goto*//*Label 4138*/ GIMT_Encode4(187009), // Rule ID 3189 // |
| 66186 | /* 186987 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 66187 | /* 186990 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66188 | /* 186994 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66189 | /* 186998 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66190 | /* 187002 */ // (smax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMAXSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 66191 | /* 187002 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSDrr), |
| 66192 | /* 187007 */ GIR_RootConstrainSelectedInstOperands, |
| 66193 | /* 187008 */ // GIR_Coverage, 3189, |
| 66194 | /* 187008 */ GIR_Done, |
| 66195 | /* 187009 */ // Label 4138: @187009 |
| 66196 | /* 187009 */ GIM_Try, /*On fail goto*//*Label 4139*/ GIMT_Encode4(187036), // Rule ID 3231 // |
| 66197 | /* 187014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 66198 | /* 187017 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66199 | /* 187021 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66200 | /* 187025 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66201 | /* 187029 */ // (smax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PMAXSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 66202 | /* 187029 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXSDrr), |
| 66203 | /* 187034 */ GIR_RootConstrainSelectedInstOperands, |
| 66204 | /* 187035 */ // GIR_Coverage, 3231, |
| 66205 | /* 187035 */ GIR_Done, |
| 66206 | /* 187036 */ // Label 4139: @187036 |
| 66207 | /* 187036 */ GIM_Try, /*On fail goto*//*Label 4140*/ GIMT_Encode4(187063), // Rule ID 5380 // |
| 66208 | /* 187041 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66209 | /* 187044 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66210 | /* 187048 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66211 | /* 187052 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66212 | /* 187056 */ // (smax:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPMAXSDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 66213 | /* 187056 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ128rr), |
| 66214 | /* 187061 */ GIR_RootConstrainSelectedInstOperands, |
| 66215 | /* 187062 */ // GIR_Coverage, 5380, |
| 66216 | /* 187062 */ GIR_Done, |
| 66217 | /* 187063 */ // Label 4140: @187063 |
| 66218 | /* 187063 */ GIM_Reject, |
| 66219 | /* 187064 */ // Label 4133: @187064 |
| 66220 | /* 187064 */ GIM_Reject, |
| 66221 | /* 187065 */ // Label 4117: @187065 |
| 66222 | /* 187065 */ GIM_Try, /*On fail goto*//*Label 4141*/ GIMT_Encode4(187381), |
| 66223 | /* 187070 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 66224 | /* 187073 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 66225 | /* 187076 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66226 | /* 187080 */ GIM_Try, /*On fail goto*//*Label 4142*/ GIMT_Encode4(187138), // Rule ID 23963 // |
| 66227 | /* 187085 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66228 | /* 187088 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66229 | /* 187092 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66230 | /* 187096 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66231 | /* 187099 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66232 | /* 187103 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66233 | /* 187107 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66234 | /* 187111 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66235 | /* 187113 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66236 | /* 187120 */ // (smax:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPMAXSQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66237 | /* 187120 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ256rm), |
| 66238 | /* 187123 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66239 | /* 187125 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66240 | /* 187127 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66241 | /* 187131 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66242 | /* 187136 */ GIR_RootConstrainSelectedInstOperands, |
| 66243 | /* 187137 */ // GIR_Coverage, 23963, |
| 66244 | /* 187137 */ GIR_EraseRootFromParent_Done, |
| 66245 | /* 187138 */ // Label 4142: @187138 |
| 66246 | /* 187138 */ GIM_Try, /*On fail goto*//*Label 4143*/ GIMT_Encode4(187196), // Rule ID 5401 // |
| 66247 | /* 187143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66248 | /* 187146 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66249 | /* 187150 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66250 | /* 187154 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66251 | /* 187158 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66252 | /* 187161 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66253 | /* 187165 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66254 | /* 187169 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66255 | /* 187171 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66256 | /* 187178 */ // (smax:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66257 | /* 187178 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ256rm), |
| 66258 | /* 187181 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66259 | /* 187183 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66260 | /* 187185 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66261 | /* 187189 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66262 | /* 187194 */ GIR_RootConstrainSelectedInstOperands, |
| 66263 | /* 187195 */ // GIR_Coverage, 5401, |
| 66264 | /* 187195 */ GIR_EraseRootFromParent_Done, |
| 66265 | /* 187196 */ // Label 4143: @187196 |
| 66266 | /* 187196 */ GIM_Try, /*On fail goto*//*Label 4144*/ GIMT_Encode4(187219), // Rule ID 5398 // |
| 66267 | /* 187201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66268 | /* 187204 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66269 | /* 187208 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66270 | /* 187212 */ // (smax:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPMAXSQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 66271 | /* 187212 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ256rr), |
| 66272 | /* 187217 */ GIR_RootConstrainSelectedInstOperands, |
| 66273 | /* 187218 */ // GIR_Coverage, 5398, |
| 66274 | /* 187218 */ GIR_Done, |
| 66275 | /* 187219 */ // Label 4144: @187219 |
| 66276 | /* 187219 */ GIM_Try, /*On fail goto*//*Label 4145*/ GIMT_Encode4(187380), // Rule ID 20008 // |
| 66277 | /* 187224 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 66278 | /* 187227 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66279 | /* 187231 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66280 | /* 187235 */ // (smax:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPMAXSQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 66281 | /* 187235 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 66282 | /* 187238 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 66283 | /* 187242 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 66284 | /* 187247 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 66285 | /* 187249 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 66286 | /* 187252 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 66287 | /* 187256 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 66288 | /* 187261 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 66289 | /* 187264 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 66290 | /* 187268 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 66291 | /* 187271 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 66292 | /* 187276 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66293 | /* 187281 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 66294 | /* 187286 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 66295 | /* 187289 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 66296 | /* 187293 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 66297 | /* 187298 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 66298 | /* 187300 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 66299 | /* 187303 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 66300 | /* 187307 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 66301 | /* 187312 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 66302 | /* 187315 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 66303 | /* 187319 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 66304 | /* 187322 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 66305 | /* 187327 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66306 | /* 187332 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 66307 | /* 187337 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 66308 | /* 187340 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZrr), |
| 66309 | /* 187344 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 66310 | /* 187349 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 66311 | /* 187352 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 66312 | /* 187355 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 66313 | /* 187357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 66314 | /* 187360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66315 | /* 187362 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 66316 | /* 187369 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 66317 | /* 187374 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66318 | /* 187379 */ // GIR_Coverage, 20008, |
| 66319 | /* 187379 */ GIR_EraseRootFromParent_Done, |
| 66320 | /* 187380 */ // Label 4145: @187380 |
| 66321 | /* 187380 */ GIM_Reject, |
| 66322 | /* 187381 */ // Label 4141: @187381 |
| 66323 | /* 187381 */ GIM_Reject, |
| 66324 | /* 187382 */ // Label 4118: @187382 |
| 66325 | /* 187382 */ GIM_Try, /*On fail goto*//*Label 4146*/ GIMT_Encode4(187723), |
| 66326 | /* 187387 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 66327 | /* 187390 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 66328 | /* 187393 */ GIM_Try, /*On fail goto*//*Label 4147*/ GIMT_Encode4(187455), // Rule ID 23471 // |
| 66329 | /* 187398 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 66330 | /* 187401 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66331 | /* 187405 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66332 | /* 187409 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66333 | /* 187413 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66334 | /* 187416 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66335 | /* 187420 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66336 | /* 187424 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66337 | /* 187428 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66338 | /* 187430 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66339 | /* 187437 */ // (smax:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMAXSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66340 | /* 187437 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWrm), |
| 66341 | /* 187440 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66342 | /* 187442 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66343 | /* 187444 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66344 | /* 187448 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66345 | /* 187453 */ GIR_RootConstrainSelectedInstOperands, |
| 66346 | /* 187454 */ // GIR_Coverage, 23471, |
| 66347 | /* 187454 */ GIR_EraseRootFromParent_Done, |
| 66348 | /* 187455 */ // Label 4147: @187455 |
| 66349 | /* 187455 */ GIM_Try, /*On fail goto*//*Label 4148*/ GIMT_Encode4(187517), // Rule ID 23936 // |
| 66350 | /* 187460 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66351 | /* 187463 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66352 | /* 187467 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66353 | /* 187471 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66354 | /* 187475 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66355 | /* 187478 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66356 | /* 187482 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66357 | /* 187486 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66358 | /* 187490 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66359 | /* 187492 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66360 | /* 187499 */ // (smax:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMAXSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66361 | /* 187499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ128rm), |
| 66362 | /* 187502 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66363 | /* 187504 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66364 | /* 187506 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66365 | /* 187510 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66366 | /* 187515 */ GIR_RootConstrainSelectedInstOperands, |
| 66367 | /* 187516 */ // GIR_Coverage, 23936, |
| 66368 | /* 187516 */ GIR_EraseRootFromParent_Done, |
| 66369 | /* 187517 */ // Label 4148: @187517 |
| 66370 | /* 187517 */ GIM_Try, /*On fail goto*//*Label 4149*/ GIMT_Encode4(187579), // Rule ID 2655 // |
| 66371 | /* 187522 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 66372 | /* 187525 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66373 | /* 187529 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66374 | /* 187533 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66375 | /* 187537 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66376 | /* 187541 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66377 | /* 187544 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66378 | /* 187548 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66379 | /* 187552 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66380 | /* 187554 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66381 | /* 187561 */ // (smax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66382 | /* 187561 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWrm), |
| 66383 | /* 187564 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66384 | /* 187566 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66385 | /* 187568 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66386 | /* 187572 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66387 | /* 187577 */ GIR_RootConstrainSelectedInstOperands, |
| 66388 | /* 187578 */ // GIR_Coverage, 2655, |
| 66389 | /* 187578 */ GIR_EraseRootFromParent_Done, |
| 66390 | /* 187579 */ // Label 4149: @187579 |
| 66391 | /* 187579 */ GIM_Try, /*On fail goto*//*Label 4150*/ GIMT_Encode4(187641), // Rule ID 5359 // |
| 66392 | /* 187584 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66393 | /* 187587 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66394 | /* 187591 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66395 | /* 187595 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66396 | /* 187599 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66397 | /* 187603 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66398 | /* 187606 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66399 | /* 187610 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66400 | /* 187614 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66401 | /* 187616 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66402 | /* 187623 */ // (smax:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66403 | /* 187623 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ128rm), |
| 66404 | /* 187626 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66405 | /* 187628 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66406 | /* 187630 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66407 | /* 187634 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66408 | /* 187639 */ GIR_RootConstrainSelectedInstOperands, |
| 66409 | /* 187640 */ // GIR_Coverage, 5359, |
| 66410 | /* 187640 */ GIR_EraseRootFromParent_Done, |
| 66411 | /* 187641 */ // Label 4150: @187641 |
| 66412 | /* 187641 */ GIM_Try, /*On fail goto*//*Label 4151*/ GIMT_Encode4(187668), // Rule ID 2654 // |
| 66413 | /* 187646 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 66414 | /* 187649 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66415 | /* 187653 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66416 | /* 187657 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66417 | /* 187661 */ // (smax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMAXSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 66418 | /* 187661 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSWrr), |
| 66419 | /* 187666 */ GIR_RootConstrainSelectedInstOperands, |
| 66420 | /* 187667 */ // GIR_Coverage, 2654, |
| 66421 | /* 187667 */ GIR_Done, |
| 66422 | /* 187668 */ // Label 4151: @187668 |
| 66423 | /* 187668 */ GIM_Try, /*On fail goto*//*Label 4152*/ GIMT_Encode4(187695), // Rule ID 2656 // |
| 66424 | /* 187673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 66425 | /* 187676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66426 | /* 187680 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66427 | /* 187684 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66428 | /* 187688 */ // (smax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMAXSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 66429 | /* 187688 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXSWrr), |
| 66430 | /* 187693 */ GIR_RootConstrainSelectedInstOperands, |
| 66431 | /* 187694 */ // GIR_Coverage, 2656, |
| 66432 | /* 187694 */ GIR_Done, |
| 66433 | /* 187695 */ // Label 4152: @187695 |
| 66434 | /* 187695 */ GIM_Try, /*On fail goto*//*Label 4153*/ GIMT_Encode4(187722), // Rule ID 5356 // |
| 66435 | /* 187700 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66436 | /* 187703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66437 | /* 187707 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66438 | /* 187711 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66439 | /* 187715 */ // (smax:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMAXSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 66440 | /* 187715 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ128rr), |
| 66441 | /* 187720 */ GIR_RootConstrainSelectedInstOperands, |
| 66442 | /* 187721 */ // GIR_Coverage, 5356, |
| 66443 | /* 187721 */ GIR_Done, |
| 66444 | /* 187722 */ // Label 4153: @187722 |
| 66445 | /* 187722 */ GIM_Reject, |
| 66446 | /* 187723 */ // Label 4146: @187723 |
| 66447 | /* 187723 */ GIM_Reject, |
| 66448 | /* 187724 */ // Label 4119: @187724 |
| 66449 | /* 187724 */ GIM_Try, /*On fail goto*//*Label 4154*/ GIMT_Encode4(188038), |
| 66450 | /* 187729 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 66451 | /* 187732 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 66452 | /* 187735 */ GIM_Try, /*On fail goto*//*Label 4155*/ GIMT_Encode4(187797), // Rule ID 23512 // |
| 66453 | /* 187740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 66454 | /* 187743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66455 | /* 187747 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66456 | /* 187751 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66457 | /* 187755 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66458 | /* 187758 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66459 | /* 187762 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66460 | /* 187766 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66461 | /* 187770 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66462 | /* 187772 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66463 | /* 187779 */ // (smax:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPMAXSDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66464 | /* 187779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDYrm), |
| 66465 | /* 187782 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66466 | /* 187784 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66467 | /* 187786 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66468 | /* 187790 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66469 | /* 187795 */ GIR_RootConstrainSelectedInstOperands, |
| 66470 | /* 187796 */ // GIR_Coverage, 23512, |
| 66471 | /* 187796 */ GIR_EraseRootFromParent_Done, |
| 66472 | /* 187797 */ // Label 4155: @187797 |
| 66473 | /* 187797 */ GIM_Try, /*On fail goto*//*Label 4156*/ GIMT_Encode4(187859), // Rule ID 23945 // |
| 66474 | /* 187802 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66475 | /* 187805 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66476 | /* 187809 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66477 | /* 187813 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66478 | /* 187817 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66479 | /* 187820 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66480 | /* 187824 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66481 | /* 187828 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66482 | /* 187832 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66483 | /* 187834 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66484 | /* 187841 */ // (smax:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPMAXSDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66485 | /* 187841 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ256rm), |
| 66486 | /* 187844 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66487 | /* 187846 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66488 | /* 187848 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66489 | /* 187852 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66490 | /* 187857 */ GIR_RootConstrainSelectedInstOperands, |
| 66491 | /* 187858 */ // GIR_Coverage, 23945, |
| 66492 | /* 187858 */ GIR_EraseRootFromParent_Done, |
| 66493 | /* 187859 */ // Label 4156: @187859 |
| 66494 | /* 187859 */ GIM_Try, /*On fail goto*//*Label 4157*/ GIMT_Encode4(187921), // Rule ID 3208 // |
| 66495 | /* 187864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 66496 | /* 187867 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66497 | /* 187871 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66498 | /* 187875 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66499 | /* 187879 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66500 | /* 187883 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66501 | /* 187886 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66502 | /* 187890 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66503 | /* 187894 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66504 | /* 187896 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66505 | /* 187903 */ // (smax:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66506 | /* 187903 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDYrm), |
| 66507 | /* 187906 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66508 | /* 187908 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66509 | /* 187910 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66510 | /* 187914 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66511 | /* 187919 */ GIR_RootConstrainSelectedInstOperands, |
| 66512 | /* 187920 */ // GIR_Coverage, 3208, |
| 66513 | /* 187920 */ GIR_EraseRootFromParent_Done, |
| 66514 | /* 187921 */ // Label 4157: @187921 |
| 66515 | /* 187921 */ GIM_Try, /*On fail goto*//*Label 4158*/ GIMT_Encode4(187983), // Rule ID 5374 // |
| 66516 | /* 187926 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66517 | /* 187929 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66518 | /* 187933 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66519 | /* 187937 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66520 | /* 187941 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66521 | /* 187945 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66522 | /* 187948 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66523 | /* 187952 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66524 | /* 187956 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66525 | /* 187958 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66526 | /* 187965 */ // (smax:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66527 | /* 187965 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ256rm), |
| 66528 | /* 187968 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66529 | /* 187970 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66530 | /* 187972 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66531 | /* 187976 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66532 | /* 187981 */ GIR_RootConstrainSelectedInstOperands, |
| 66533 | /* 187982 */ // GIR_Coverage, 5374, |
| 66534 | /* 187982 */ GIR_EraseRootFromParent_Done, |
| 66535 | /* 187983 */ // Label 4158: @187983 |
| 66536 | /* 187983 */ GIM_Try, /*On fail goto*//*Label 4159*/ GIMT_Encode4(188010), // Rule ID 3207 // |
| 66537 | /* 187988 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 66538 | /* 187991 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66539 | /* 187995 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66540 | /* 187999 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66541 | /* 188003 */ // (smax:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMAXSDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 66542 | /* 188003 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSDYrr), |
| 66543 | /* 188008 */ GIR_RootConstrainSelectedInstOperands, |
| 66544 | /* 188009 */ // GIR_Coverage, 3207, |
| 66545 | /* 188009 */ GIR_Done, |
| 66546 | /* 188010 */ // Label 4159: @188010 |
| 66547 | /* 188010 */ GIM_Try, /*On fail goto*//*Label 4160*/ GIMT_Encode4(188037), // Rule ID 5371 // |
| 66548 | /* 188015 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66549 | /* 188018 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66550 | /* 188022 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66551 | /* 188026 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66552 | /* 188030 */ // (smax:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPMAXSDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 66553 | /* 188030 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ256rr), |
| 66554 | /* 188035 */ GIR_RootConstrainSelectedInstOperands, |
| 66555 | /* 188036 */ // GIR_Coverage, 5371, |
| 66556 | /* 188036 */ GIR_Done, |
| 66557 | /* 188037 */ // Label 4160: @188037 |
| 66558 | /* 188037 */ GIM_Reject, |
| 66559 | /* 188038 */ // Label 4154: @188038 |
| 66560 | /* 188038 */ GIM_Reject, |
| 66561 | /* 188039 */ // Label 4120: @188039 |
| 66562 | /* 188039 */ GIM_Try, /*On fail goto*//*Label 4161*/ GIMT_Encode4(188194), |
| 66563 | /* 188044 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 66564 | /* 188047 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 66565 | /* 188050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66566 | /* 188054 */ GIM_Try, /*On fail goto*//*Label 4162*/ GIMT_Encode4(188112), // Rule ID 23957 // |
| 66567 | /* 188059 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66568 | /* 188062 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66569 | /* 188066 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66570 | /* 188070 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66571 | /* 188073 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66572 | /* 188077 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66573 | /* 188081 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66574 | /* 188085 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66575 | /* 188087 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66576 | /* 188094 */ // (smax:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPMAXSQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66577 | /* 188094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZrm), |
| 66578 | /* 188097 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66579 | /* 188099 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66580 | /* 188101 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66581 | /* 188105 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66582 | /* 188110 */ GIR_RootConstrainSelectedInstOperands, |
| 66583 | /* 188111 */ // GIR_Coverage, 23957, |
| 66584 | /* 188111 */ GIR_EraseRootFromParent_Done, |
| 66585 | /* 188112 */ // Label 4162: @188112 |
| 66586 | /* 188112 */ GIM_Try, /*On fail goto*//*Label 4163*/ GIMT_Encode4(188170), // Rule ID 5392 // |
| 66587 | /* 188117 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66588 | /* 188120 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66589 | /* 188124 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66590 | /* 188128 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66591 | /* 188132 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66592 | /* 188135 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66593 | /* 188139 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66594 | /* 188143 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66595 | /* 188145 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66596 | /* 188152 */ // (smax:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66597 | /* 188152 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZrm), |
| 66598 | /* 188155 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66599 | /* 188157 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66600 | /* 188159 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66601 | /* 188163 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66602 | /* 188168 */ GIR_RootConstrainSelectedInstOperands, |
| 66603 | /* 188169 */ // GIR_Coverage, 5392, |
| 66604 | /* 188169 */ GIR_EraseRootFromParent_Done, |
| 66605 | /* 188170 */ // Label 4163: @188170 |
| 66606 | /* 188170 */ GIM_Try, /*On fail goto*//*Label 4164*/ GIMT_Encode4(188193), // Rule ID 5389 // |
| 66607 | /* 188175 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66608 | /* 188178 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66609 | /* 188182 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66610 | /* 188186 */ // (smax:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPMAXSQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 66611 | /* 188186 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZrr), |
| 66612 | /* 188191 */ GIR_RootConstrainSelectedInstOperands, |
| 66613 | /* 188192 */ // GIR_Coverage, 5389, |
| 66614 | /* 188192 */ GIR_Done, |
| 66615 | /* 188193 */ // Label 4164: @188193 |
| 66616 | /* 188193 */ GIM_Reject, |
| 66617 | /* 188194 */ // Label 4161: @188194 |
| 66618 | /* 188194 */ GIM_Reject, |
| 66619 | /* 188195 */ // Label 4121: @188195 |
| 66620 | /* 188195 */ GIM_Try, /*On fail goto*//*Label 4165*/ GIMT_Encode4(188536), |
| 66621 | /* 188200 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 66622 | /* 188203 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 66623 | /* 188206 */ GIM_Try, /*On fail goto*//*Label 4166*/ GIMT_Encode4(188268), // Rule ID 23508 // |
| 66624 | /* 188211 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 66625 | /* 188214 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66626 | /* 188218 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66627 | /* 188222 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66628 | /* 188226 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66629 | /* 188229 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66630 | /* 188233 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66631 | /* 188237 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66632 | /* 188241 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66633 | /* 188243 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66634 | /* 188250 */ // (smax:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPMAXSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66635 | /* 188250 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBrm), |
| 66636 | /* 188253 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66637 | /* 188255 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66638 | /* 188257 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66639 | /* 188261 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66640 | /* 188266 */ GIR_RootConstrainSelectedInstOperands, |
| 66641 | /* 188267 */ // GIR_Coverage, 23508, |
| 66642 | /* 188267 */ GIR_EraseRootFromParent_Done, |
| 66643 | /* 188268 */ // Label 4166: @188268 |
| 66644 | /* 188268 */ GIM_Try, /*On fail goto*//*Label 4167*/ GIMT_Encode4(188330), // Rule ID 23927 // |
| 66645 | /* 188273 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66646 | /* 188276 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66647 | /* 188280 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66648 | /* 188284 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66649 | /* 188288 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66650 | /* 188291 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66651 | /* 188295 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66652 | /* 188299 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66653 | /* 188303 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66654 | /* 188305 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66655 | /* 188312 */ // (smax:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPMAXSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66656 | /* 188312 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ128rm), |
| 66657 | /* 188315 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66658 | /* 188317 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66659 | /* 188319 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66660 | /* 188323 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66661 | /* 188328 */ GIR_RootConstrainSelectedInstOperands, |
| 66662 | /* 188329 */ // GIR_Coverage, 23927, |
| 66663 | /* 188329 */ GIR_EraseRootFromParent_Done, |
| 66664 | /* 188330 */ // Label 4167: @188330 |
| 66665 | /* 188330 */ GIM_Try, /*On fail goto*//*Label 4168*/ GIMT_Encode4(188392), // Rule ID 3200 // |
| 66666 | /* 188335 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 66667 | /* 188338 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66668 | /* 188342 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66669 | /* 188346 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66670 | /* 188350 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66671 | /* 188354 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66672 | /* 188357 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66673 | /* 188361 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66674 | /* 188365 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66675 | /* 188367 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66676 | /* 188374 */ // (smax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66677 | /* 188374 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBrm), |
| 66678 | /* 188377 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66679 | /* 188379 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66680 | /* 188381 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66681 | /* 188385 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66682 | /* 188390 */ GIR_RootConstrainSelectedInstOperands, |
| 66683 | /* 188391 */ // GIR_Coverage, 3200, |
| 66684 | /* 188391 */ GIR_EraseRootFromParent_Done, |
| 66685 | /* 188392 */ // Label 4168: @188392 |
| 66686 | /* 188392 */ GIM_Try, /*On fail goto*//*Label 4169*/ GIMT_Encode4(188454), // Rule ID 5341 // |
| 66687 | /* 188397 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66688 | /* 188400 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66689 | /* 188404 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66690 | /* 188408 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66691 | /* 188412 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66692 | /* 188416 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66693 | /* 188419 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66694 | /* 188423 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66695 | /* 188427 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66696 | /* 188429 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66697 | /* 188436 */ // (smax:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66698 | /* 188436 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ128rm), |
| 66699 | /* 188439 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66700 | /* 188441 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66701 | /* 188443 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66702 | /* 188447 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66703 | /* 188452 */ GIR_RootConstrainSelectedInstOperands, |
| 66704 | /* 188453 */ // GIR_Coverage, 5341, |
| 66705 | /* 188453 */ GIR_EraseRootFromParent_Done, |
| 66706 | /* 188454 */ // Label 4169: @188454 |
| 66707 | /* 188454 */ GIM_Try, /*On fail goto*//*Label 4170*/ GIMT_Encode4(188481), // Rule ID 3199 // |
| 66708 | /* 188459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 66709 | /* 188462 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66710 | /* 188466 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66711 | /* 188470 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66712 | /* 188474 */ // (smax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPMAXSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 66713 | /* 188474 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSBrr), |
| 66714 | /* 188479 */ GIR_RootConstrainSelectedInstOperands, |
| 66715 | /* 188480 */ // GIR_Coverage, 3199, |
| 66716 | /* 188480 */ GIR_Done, |
| 66717 | /* 188481 */ // Label 4170: @188481 |
| 66718 | /* 188481 */ GIM_Try, /*On fail goto*//*Label 4171*/ GIMT_Encode4(188508), // Rule ID 3229 // |
| 66719 | /* 188486 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 66720 | /* 188489 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66721 | /* 188493 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66722 | /* 188497 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66723 | /* 188501 */ // (smax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PMAXSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 66724 | /* 188501 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXSBrr), |
| 66725 | /* 188506 */ GIR_RootConstrainSelectedInstOperands, |
| 66726 | /* 188507 */ // GIR_Coverage, 3229, |
| 66727 | /* 188507 */ GIR_Done, |
| 66728 | /* 188508 */ // Label 4171: @188508 |
| 66729 | /* 188508 */ GIM_Try, /*On fail goto*//*Label 4172*/ GIMT_Encode4(188535), // Rule ID 5338 // |
| 66730 | /* 188513 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66731 | /* 188516 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66732 | /* 188520 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66733 | /* 188524 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66734 | /* 188528 */ // (smax:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPMAXSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 66735 | /* 188528 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ128rr), |
| 66736 | /* 188533 */ GIR_RootConstrainSelectedInstOperands, |
| 66737 | /* 188534 */ // GIR_Coverage, 5338, |
| 66738 | /* 188534 */ GIR_Done, |
| 66739 | /* 188535 */ // Label 4172: @188535 |
| 66740 | /* 188535 */ GIM_Reject, |
| 66741 | /* 188536 */ // Label 4165: @188536 |
| 66742 | /* 188536 */ GIM_Reject, |
| 66743 | /* 188537 */ // Label 4122: @188537 |
| 66744 | /* 188537 */ GIM_Try, /*On fail goto*//*Label 4173*/ GIMT_Encode4(188851), |
| 66745 | /* 188542 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 66746 | /* 188545 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 66747 | /* 188548 */ GIM_Try, /*On fail goto*//*Label 4174*/ GIMT_Encode4(188610), // Rule ID 23473 // |
| 66748 | /* 188553 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66749 | /* 188556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66750 | /* 188560 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66751 | /* 188564 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66752 | /* 188568 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66753 | /* 188571 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66754 | /* 188575 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66755 | /* 188579 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66756 | /* 188583 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66757 | /* 188585 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66758 | /* 188592 */ // (smax:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMAXSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66759 | /* 188592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWYrm), |
| 66760 | /* 188595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66761 | /* 188597 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66762 | /* 188599 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66763 | /* 188603 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66764 | /* 188608 */ GIR_RootConstrainSelectedInstOperands, |
| 66765 | /* 188609 */ // GIR_Coverage, 23473, |
| 66766 | /* 188609 */ GIR_EraseRootFromParent_Done, |
| 66767 | /* 188610 */ // Label 4174: @188610 |
| 66768 | /* 188610 */ GIM_Try, /*On fail goto*//*Label 4175*/ GIMT_Encode4(188672), // Rule ID 23933 // |
| 66769 | /* 188615 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66770 | /* 188618 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66771 | /* 188622 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66772 | /* 188626 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66773 | /* 188630 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66774 | /* 188633 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66775 | /* 188637 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66776 | /* 188641 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66777 | /* 188645 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66778 | /* 188647 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66779 | /* 188654 */ // (smax:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMAXSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66780 | /* 188654 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ256rm), |
| 66781 | /* 188657 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66782 | /* 188659 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66783 | /* 188661 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66784 | /* 188665 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66785 | /* 188670 */ GIR_RootConstrainSelectedInstOperands, |
| 66786 | /* 188671 */ // GIR_Coverage, 23933, |
| 66787 | /* 188671 */ GIR_EraseRootFromParent_Done, |
| 66788 | /* 188672 */ // Label 4175: @188672 |
| 66789 | /* 188672 */ GIM_Try, /*On fail goto*//*Label 4176*/ GIMT_Encode4(188734), // Rule ID 2659 // |
| 66790 | /* 188677 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66791 | /* 188680 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66792 | /* 188684 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66793 | /* 188688 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66794 | /* 188692 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66795 | /* 188696 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66796 | /* 188699 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66797 | /* 188703 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66798 | /* 188707 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66799 | /* 188709 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66800 | /* 188716 */ // (smax:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66801 | /* 188716 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWYrm), |
| 66802 | /* 188719 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66803 | /* 188721 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66804 | /* 188723 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66805 | /* 188727 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66806 | /* 188732 */ GIR_RootConstrainSelectedInstOperands, |
| 66807 | /* 188733 */ // GIR_Coverage, 2659, |
| 66808 | /* 188733 */ GIR_EraseRootFromParent_Done, |
| 66809 | /* 188734 */ // Label 4176: @188734 |
| 66810 | /* 188734 */ GIM_Try, /*On fail goto*//*Label 4177*/ GIMT_Encode4(188796), // Rule ID 5353 // |
| 66811 | /* 188739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66812 | /* 188742 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66813 | /* 188746 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66814 | /* 188750 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66815 | /* 188754 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66816 | /* 188758 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66817 | /* 188761 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66818 | /* 188765 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66819 | /* 188769 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66820 | /* 188771 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66821 | /* 188778 */ // (smax:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66822 | /* 188778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ256rm), |
| 66823 | /* 188781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66824 | /* 188783 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66825 | /* 188785 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66826 | /* 188789 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66827 | /* 188794 */ GIR_RootConstrainSelectedInstOperands, |
| 66828 | /* 188795 */ // GIR_Coverage, 5353, |
| 66829 | /* 188795 */ GIR_EraseRootFromParent_Done, |
| 66830 | /* 188796 */ // Label 4177: @188796 |
| 66831 | /* 188796 */ GIM_Try, /*On fail goto*//*Label 4178*/ GIMT_Encode4(188823), // Rule ID 2658 // |
| 66832 | /* 188801 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66833 | /* 188804 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66834 | /* 188808 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66835 | /* 188812 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66836 | /* 188816 */ // (smax:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMAXSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 66837 | /* 188816 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSWYrr), |
| 66838 | /* 188821 */ GIR_RootConstrainSelectedInstOperands, |
| 66839 | /* 188822 */ // GIR_Coverage, 2658, |
| 66840 | /* 188822 */ GIR_Done, |
| 66841 | /* 188823 */ // Label 4178: @188823 |
| 66842 | /* 188823 */ GIM_Try, /*On fail goto*//*Label 4179*/ GIMT_Encode4(188850), // Rule ID 5350 // |
| 66843 | /* 188828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66844 | /* 188831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66845 | /* 188835 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66846 | /* 188839 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66847 | /* 188843 */ // (smax:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMAXSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 66848 | /* 188843 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ256rr), |
| 66849 | /* 188848 */ GIR_RootConstrainSelectedInstOperands, |
| 66850 | /* 188849 */ // GIR_Coverage, 5350, |
| 66851 | /* 188849 */ GIR_Done, |
| 66852 | /* 188850 */ // Label 4179: @188850 |
| 66853 | /* 188850 */ GIM_Reject, |
| 66854 | /* 188851 */ // Label 4173: @188851 |
| 66855 | /* 188851 */ GIM_Reject, |
| 66856 | /* 188852 */ // Label 4123: @188852 |
| 66857 | /* 188852 */ GIM_Try, /*On fail goto*//*Label 4180*/ GIMT_Encode4(189007), |
| 66858 | /* 188857 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 66859 | /* 188860 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 66860 | /* 188863 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66861 | /* 188867 */ GIM_Try, /*On fail goto*//*Label 4181*/ GIMT_Encode4(188925), // Rule ID 23939 // |
| 66862 | /* 188872 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66863 | /* 188875 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66864 | /* 188879 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66865 | /* 188883 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66866 | /* 188886 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66867 | /* 188890 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66868 | /* 188894 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66869 | /* 188898 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66870 | /* 188900 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66871 | /* 188907 */ // (smax:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPMAXSDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66872 | /* 188907 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZrm), |
| 66873 | /* 188910 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66874 | /* 188912 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66875 | /* 188914 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66876 | /* 188918 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66877 | /* 188923 */ GIR_RootConstrainSelectedInstOperands, |
| 66878 | /* 188924 */ // GIR_Coverage, 23939, |
| 66879 | /* 188924 */ GIR_EraseRootFromParent_Done, |
| 66880 | /* 188925 */ // Label 4181: @188925 |
| 66881 | /* 188925 */ GIM_Try, /*On fail goto*//*Label 4182*/ GIMT_Encode4(188983), // Rule ID 5365 // |
| 66882 | /* 188930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66883 | /* 188933 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66884 | /* 188937 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66885 | /* 188941 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66886 | /* 188945 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66887 | /* 188948 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66888 | /* 188952 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66889 | /* 188956 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66890 | /* 188958 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66891 | /* 188965 */ // (smax:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66892 | /* 188965 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZrm), |
| 66893 | /* 188968 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66894 | /* 188970 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66895 | /* 188972 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66896 | /* 188976 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66897 | /* 188981 */ GIR_RootConstrainSelectedInstOperands, |
| 66898 | /* 188982 */ // GIR_Coverage, 5365, |
| 66899 | /* 188982 */ GIR_EraseRootFromParent_Done, |
| 66900 | /* 188983 */ // Label 4182: @188983 |
| 66901 | /* 188983 */ GIM_Try, /*On fail goto*//*Label 4183*/ GIMT_Encode4(189006), // Rule ID 5362 // |
| 66902 | /* 188988 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66903 | /* 188991 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66904 | /* 188995 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66905 | /* 188999 */ // (smax:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPMAXSDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 66906 | /* 188999 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZrr), |
| 66907 | /* 189004 */ GIR_RootConstrainSelectedInstOperands, |
| 66908 | /* 189005 */ // GIR_Coverage, 5362, |
| 66909 | /* 189005 */ GIR_Done, |
| 66910 | /* 189006 */ // Label 4183: @189006 |
| 66911 | /* 189006 */ GIM_Reject, |
| 66912 | /* 189007 */ // Label 4180: @189007 |
| 66913 | /* 189007 */ GIM_Reject, |
| 66914 | /* 189008 */ // Label 4124: @189008 |
| 66915 | /* 189008 */ GIM_Try, /*On fail goto*//*Label 4184*/ GIMT_Encode4(189322), |
| 66916 | /* 189013 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 66917 | /* 189016 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 66918 | /* 189019 */ GIM_Try, /*On fail goto*//*Label 4185*/ GIMT_Encode4(189081), // Rule ID 23517 // |
| 66919 | /* 189024 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66920 | /* 189027 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66921 | /* 189031 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66922 | /* 189035 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66923 | /* 189039 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66924 | /* 189042 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66925 | /* 189046 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66926 | /* 189050 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66927 | /* 189054 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66928 | /* 189056 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66929 | /* 189063 */ // (smax:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPMAXSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66930 | /* 189063 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBYrm), |
| 66931 | /* 189066 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66932 | /* 189068 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66933 | /* 189070 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66934 | /* 189074 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66935 | /* 189079 */ GIR_RootConstrainSelectedInstOperands, |
| 66936 | /* 189080 */ // GIR_Coverage, 23517, |
| 66937 | /* 189080 */ GIR_EraseRootFromParent_Done, |
| 66938 | /* 189081 */ // Label 4185: @189081 |
| 66939 | /* 189081 */ GIM_Try, /*On fail goto*//*Label 4186*/ GIMT_Encode4(189143), // Rule ID 23924 // |
| 66940 | /* 189086 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66941 | /* 189089 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66942 | /* 189093 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66943 | /* 189097 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66944 | /* 189101 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66945 | /* 189104 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66946 | /* 189108 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66947 | /* 189112 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66948 | /* 189116 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66949 | /* 189118 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66950 | /* 189125 */ // (smax:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPMAXSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66951 | /* 189125 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ256rm), |
| 66952 | /* 189128 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66953 | /* 189130 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66954 | /* 189132 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66955 | /* 189136 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66956 | /* 189141 */ GIR_RootConstrainSelectedInstOperands, |
| 66957 | /* 189142 */ // GIR_Coverage, 23924, |
| 66958 | /* 189142 */ GIR_EraseRootFromParent_Done, |
| 66959 | /* 189143 */ // Label 4186: @189143 |
| 66960 | /* 189143 */ GIM_Try, /*On fail goto*//*Label 4187*/ GIMT_Encode4(189205), // Rule ID 3218 // |
| 66961 | /* 189148 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66962 | /* 189151 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66963 | /* 189155 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66964 | /* 189159 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66965 | /* 189163 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66966 | /* 189167 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66967 | /* 189170 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66968 | /* 189174 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66969 | /* 189178 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66970 | /* 189180 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66971 | /* 189187 */ // (smax:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66972 | /* 189187 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBYrm), |
| 66973 | /* 189190 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66974 | /* 189192 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66975 | /* 189194 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66976 | /* 189198 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66977 | /* 189203 */ GIR_RootConstrainSelectedInstOperands, |
| 66978 | /* 189204 */ // GIR_Coverage, 3218, |
| 66979 | /* 189204 */ GIR_EraseRootFromParent_Done, |
| 66980 | /* 189205 */ // Label 4187: @189205 |
| 66981 | /* 189205 */ GIM_Try, /*On fail goto*//*Label 4188*/ GIMT_Encode4(189267), // Rule ID 5335 // |
| 66982 | /* 189210 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66983 | /* 189213 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66984 | /* 189217 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66985 | /* 189221 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66986 | /* 189225 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66987 | /* 189229 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66988 | /* 189232 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66989 | /* 189236 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66990 | /* 189240 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66991 | /* 189242 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66992 | /* 189249 */ // (smax:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66993 | /* 189249 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ256rm), |
| 66994 | /* 189252 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66995 | /* 189254 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66996 | /* 189256 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66997 | /* 189260 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66998 | /* 189265 */ GIR_RootConstrainSelectedInstOperands, |
| 66999 | /* 189266 */ // GIR_Coverage, 5335, |
| 67000 | /* 189266 */ GIR_EraseRootFromParent_Done, |
| 67001 | /* 189267 */ // Label 4188: @189267 |
| 67002 | /* 189267 */ GIM_Try, /*On fail goto*//*Label 4189*/ GIMT_Encode4(189294), // Rule ID 3217 // |
| 67003 | /* 189272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 67004 | /* 189275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67005 | /* 189279 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67006 | /* 189283 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67007 | /* 189287 */ // (smax:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPMAXSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 67008 | /* 189287 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSBYrr), |
| 67009 | /* 189292 */ GIR_RootConstrainSelectedInstOperands, |
| 67010 | /* 189293 */ // GIR_Coverage, 3217, |
| 67011 | /* 189293 */ GIR_Done, |
| 67012 | /* 189294 */ // Label 4189: @189294 |
| 67013 | /* 189294 */ GIM_Try, /*On fail goto*//*Label 4190*/ GIMT_Encode4(189321), // Rule ID 5332 // |
| 67014 | /* 189299 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67015 | /* 189302 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67016 | /* 189306 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67017 | /* 189310 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67018 | /* 189314 */ // (smax:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPMAXSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 67019 | /* 189314 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ256rr), |
| 67020 | /* 189319 */ GIR_RootConstrainSelectedInstOperands, |
| 67021 | /* 189320 */ // GIR_Coverage, 5332, |
| 67022 | /* 189320 */ GIR_Done, |
| 67023 | /* 189321 */ // Label 4190: @189321 |
| 67024 | /* 189321 */ GIM_Reject, |
| 67025 | /* 189322 */ // Label 4184: @189322 |
| 67026 | /* 189322 */ GIM_Reject, |
| 67027 | /* 189323 */ // Label 4125: @189323 |
| 67028 | /* 189323 */ GIM_Try, /*On fail goto*//*Label 4191*/ GIMT_Encode4(189478), |
| 67029 | /* 189328 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 67030 | /* 189331 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 67031 | /* 189334 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67032 | /* 189338 */ GIM_Try, /*On fail goto*//*Label 4192*/ GIMT_Encode4(189396), // Rule ID 23930 // |
| 67033 | /* 189343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67034 | /* 189346 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67035 | /* 189350 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67036 | /* 189354 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67037 | /* 189357 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67038 | /* 189361 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67039 | /* 189365 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67040 | /* 189369 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67041 | /* 189371 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67042 | /* 189378 */ // (smax:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMAXSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67043 | /* 189378 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZrm), |
| 67044 | /* 189381 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67045 | /* 189383 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67046 | /* 189385 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67047 | /* 189389 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67048 | /* 189394 */ GIR_RootConstrainSelectedInstOperands, |
| 67049 | /* 189395 */ // GIR_Coverage, 23930, |
| 67050 | /* 189395 */ GIR_EraseRootFromParent_Done, |
| 67051 | /* 189396 */ // Label 4192: @189396 |
| 67052 | /* 189396 */ GIM_Try, /*On fail goto*//*Label 4193*/ GIMT_Encode4(189454), // Rule ID 5347 // |
| 67053 | /* 189401 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67054 | /* 189404 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67055 | /* 189408 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67056 | /* 189412 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67057 | /* 189416 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67058 | /* 189419 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67059 | /* 189423 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67060 | /* 189427 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67061 | /* 189429 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67062 | /* 189436 */ // (smax:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67063 | /* 189436 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZrm), |
| 67064 | /* 189439 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67065 | /* 189441 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67066 | /* 189443 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67067 | /* 189447 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67068 | /* 189452 */ GIR_RootConstrainSelectedInstOperands, |
| 67069 | /* 189453 */ // GIR_Coverage, 5347, |
| 67070 | /* 189453 */ GIR_EraseRootFromParent_Done, |
| 67071 | /* 189454 */ // Label 4193: @189454 |
| 67072 | /* 189454 */ GIM_Try, /*On fail goto*//*Label 4194*/ GIMT_Encode4(189477), // Rule ID 5344 // |
| 67073 | /* 189459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67074 | /* 189462 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67075 | /* 189466 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67076 | /* 189470 */ // (smax:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMAXSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 67077 | /* 189470 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZrr), |
| 67078 | /* 189475 */ GIR_RootConstrainSelectedInstOperands, |
| 67079 | /* 189476 */ // GIR_Coverage, 5344, |
| 67080 | /* 189476 */ GIR_Done, |
| 67081 | /* 189477 */ // Label 4194: @189477 |
| 67082 | /* 189477 */ GIM_Reject, |
| 67083 | /* 189478 */ // Label 4191: @189478 |
| 67084 | /* 189478 */ GIM_Reject, |
| 67085 | /* 189479 */ // Label 4126: @189479 |
| 67086 | /* 189479 */ GIM_Try, /*On fail goto*//*Label 4195*/ GIMT_Encode4(189634), |
| 67087 | /* 189484 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 67088 | /* 189487 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 67089 | /* 189490 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67090 | /* 189494 */ GIM_Try, /*On fail goto*//*Label 4196*/ GIMT_Encode4(189552), // Rule ID 23921 // |
| 67091 | /* 189499 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67092 | /* 189502 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67093 | /* 189506 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67094 | /* 189510 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67095 | /* 189513 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67096 | /* 189517 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67097 | /* 189521 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67098 | /* 189525 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67099 | /* 189527 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67100 | /* 189534 */ // (smax:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPMAXSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67101 | /* 189534 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZrm), |
| 67102 | /* 189537 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67103 | /* 189539 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67104 | /* 189541 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67105 | /* 189545 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67106 | /* 189550 */ GIR_RootConstrainSelectedInstOperands, |
| 67107 | /* 189551 */ // GIR_Coverage, 23921, |
| 67108 | /* 189551 */ GIR_EraseRootFromParent_Done, |
| 67109 | /* 189552 */ // Label 4196: @189552 |
| 67110 | /* 189552 */ GIM_Try, /*On fail goto*//*Label 4197*/ GIMT_Encode4(189610), // Rule ID 5329 // |
| 67111 | /* 189557 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67112 | /* 189560 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67113 | /* 189564 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67114 | /* 189568 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67115 | /* 189572 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67116 | /* 189575 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67117 | /* 189579 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67118 | /* 189583 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67119 | /* 189585 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67120 | /* 189592 */ // (smax:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67121 | /* 189592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZrm), |
| 67122 | /* 189595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67123 | /* 189597 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67124 | /* 189599 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67125 | /* 189603 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67126 | /* 189608 */ GIR_RootConstrainSelectedInstOperands, |
| 67127 | /* 189609 */ // GIR_Coverage, 5329, |
| 67128 | /* 189609 */ GIR_EraseRootFromParent_Done, |
| 67129 | /* 189610 */ // Label 4197: @189610 |
| 67130 | /* 189610 */ GIM_Try, /*On fail goto*//*Label 4198*/ GIMT_Encode4(189633), // Rule ID 5326 // |
| 67131 | /* 189615 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67132 | /* 189618 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67133 | /* 189622 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67134 | /* 189626 */ // (smax:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPMAXSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 67135 | /* 189626 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZrr), |
| 67136 | /* 189631 */ GIR_RootConstrainSelectedInstOperands, |
| 67137 | /* 189632 */ // GIR_Coverage, 5326, |
| 67138 | /* 189632 */ GIR_Done, |
| 67139 | /* 189633 */ // Label 4198: @189633 |
| 67140 | /* 189633 */ GIM_Reject, |
| 67141 | /* 189634 */ // Label 4195: @189634 |
| 67142 | /* 189634 */ GIM_Reject, |
| 67143 | /* 189635 */ // Label 4127: @189635 |
| 67144 | /* 189635 */ GIM_Reject, |
| 67145 | /* 189636 */ // Label 56: @189636 |
| 67146 | /* 189636 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4211*/ GIMT_Encode4(192956), |
| 67147 | /* 189647 */ /*GILLT_v2s64*//*Label 4199*/ GIMT_Encode4(189715), GIMT_Encode4(0), |
| 67148 | /* 189655 */ /*GILLT_v4s32*//*Label 4200*/ GIMT_Encode4(190044), |
| 67149 | /* 189659 */ /*GILLT_v4s64*//*Label 4201*/ GIMT_Encode4(190386), GIMT_Encode4(0), |
| 67150 | /* 189667 */ /*GILLT_v8s16*//*Label 4202*/ GIMT_Encode4(190703), |
| 67151 | /* 189671 */ /*GILLT_v8s32*//*Label 4203*/ GIMT_Encode4(191045), |
| 67152 | /* 189675 */ /*GILLT_v8s64*//*Label 4204*/ GIMT_Encode4(191360), GIMT_Encode4(0), |
| 67153 | /* 189683 */ /*GILLT_v16s8*//*Label 4205*/ GIMT_Encode4(191516), |
| 67154 | /* 189687 */ /*GILLT_v16s16*//*Label 4206*/ GIMT_Encode4(191858), |
| 67155 | /* 189691 */ /*GILLT_v16s32*//*Label 4207*/ GIMT_Encode4(192173), GIMT_Encode4(0), |
| 67156 | /* 189699 */ /*GILLT_v32s8*//*Label 4208*/ GIMT_Encode4(192329), |
| 67157 | /* 189703 */ /*GILLT_v32s16*//*Label 4209*/ GIMT_Encode4(192644), GIMT_Encode4(0), |
| 67158 | /* 189711 */ /*GILLT_v64s8*//*Label 4210*/ GIMT_Encode4(192800), |
| 67159 | /* 189715 */ // Label 4199: @189715 |
| 67160 | /* 189715 */ GIM_Try, /*On fail goto*//*Label 4212*/ GIMT_Encode4(190043), |
| 67161 | /* 189720 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 67162 | /* 189723 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 67163 | /* 189726 */ GIM_Try, /*On fail goto*//*Label 4213*/ GIMT_Encode4(189788), // Rule ID 24131 // |
| 67164 | /* 189731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67165 | /* 189734 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67166 | /* 189738 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67167 | /* 189742 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67168 | /* 189746 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67169 | /* 189749 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67170 | /* 189753 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67171 | /* 189757 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67172 | /* 189761 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67173 | /* 189763 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67174 | /* 189770 */ // (umin:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPMINUQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67175 | /* 189770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ128rm), |
| 67176 | /* 189773 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67177 | /* 189775 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67178 | /* 189777 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67179 | /* 189781 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67180 | /* 189786 */ GIR_RootConstrainSelectedInstOperands, |
| 67181 | /* 189787 */ // GIR_Coverage, 24131, |
| 67182 | /* 189787 */ GIR_EraseRootFromParent_Done, |
| 67183 | /* 189788 */ // Label 4213: @189788 |
| 67184 | /* 189788 */ GIM_Try, /*On fail goto*//*Label 4214*/ GIMT_Encode4(189850), // Rule ID 5680 // |
| 67185 | /* 189793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67186 | /* 189796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67187 | /* 189800 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67188 | /* 189804 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67189 | /* 189808 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67190 | /* 189812 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67191 | /* 189815 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67192 | /* 189819 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67193 | /* 189823 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67194 | /* 189825 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67195 | /* 189832 */ // (umin:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67196 | /* 189832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ128rm), |
| 67197 | /* 189835 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67198 | /* 189837 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67199 | /* 189839 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67200 | /* 189843 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67201 | /* 189848 */ GIR_RootConstrainSelectedInstOperands, |
| 67202 | /* 189849 */ // GIR_Coverage, 5680, |
| 67203 | /* 189849 */ GIR_EraseRootFromParent_Done, |
| 67204 | /* 189850 */ // Label 4214: @189850 |
| 67205 | /* 189850 */ GIM_Try, /*On fail goto*//*Label 4215*/ GIMT_Encode4(189877), // Rule ID 5677 // |
| 67206 | /* 189855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67207 | /* 189858 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67208 | /* 189862 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67209 | /* 189866 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67210 | /* 189870 */ // (umin:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPMINUQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 67211 | /* 189870 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ128rr), |
| 67212 | /* 189875 */ GIR_RootConstrainSelectedInstOperands, |
| 67213 | /* 189876 */ // GIR_Coverage, 5677, |
| 67214 | /* 189876 */ GIR_Done, |
| 67215 | /* 189877 */ // Label 4215: @189877 |
| 67216 | /* 189877 */ GIM_Try, /*On fail goto*//*Label 4216*/ GIMT_Encode4(190042), // Rule ID 20006 // |
| 67217 | /* 189882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 67218 | /* 189885 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 67219 | /* 189889 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67220 | /* 189893 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67221 | /* 189897 */ // (umin:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPMINUQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 67222 | /* 189897 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 67223 | /* 189900 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 67224 | /* 189904 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 67225 | /* 189909 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 67226 | /* 189911 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 67227 | /* 189914 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 67228 | /* 189918 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 67229 | /* 189923 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 67230 | /* 189926 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 67231 | /* 189930 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 67232 | /* 189933 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 67233 | /* 189938 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 67234 | /* 189943 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 67235 | /* 189948 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 67236 | /* 189951 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 67237 | /* 189955 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 67238 | /* 189960 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 67239 | /* 189962 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 67240 | /* 189965 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 67241 | /* 189969 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 67242 | /* 189974 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 67243 | /* 189977 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 67244 | /* 189981 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 67245 | /* 189984 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 67246 | /* 189989 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 67247 | /* 189994 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 67248 | /* 189999 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 67249 | /* 190002 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMINUQZrr), |
| 67250 | /* 190006 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 67251 | /* 190011 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 67252 | /* 190014 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 67253 | /* 190017 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 67254 | /* 190019 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 67255 | /* 190022 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67256 | /* 190024 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 67257 | /* 190031 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 67258 | /* 190036 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 67259 | /* 190041 */ // GIR_Coverage, 20006, |
| 67260 | /* 190041 */ GIR_EraseRootFromParent_Done, |
| 67261 | /* 190042 */ // Label 4216: @190042 |
| 67262 | /* 190042 */ GIM_Reject, |
| 67263 | /* 190043 */ // Label 4212: @190043 |
| 67264 | /* 190043 */ GIM_Reject, |
| 67265 | /* 190044 */ // Label 4200: @190044 |
| 67266 | /* 190044 */ GIM_Try, /*On fail goto*//*Label 4217*/ GIMT_Encode4(190385), |
| 67267 | /* 190049 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 67268 | /* 190052 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 67269 | /* 190055 */ GIM_Try, /*On fail goto*//*Label 4218*/ GIMT_Encode4(190117), // Rule ID 23502 // |
| 67270 | /* 190060 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 67271 | /* 190063 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67272 | /* 190067 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67273 | /* 190071 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67274 | /* 190075 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67275 | /* 190078 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67276 | /* 190082 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67277 | /* 190086 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67278 | /* 190090 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67279 | /* 190092 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67280 | /* 190099 */ // (umin:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPMINUDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67281 | /* 190099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDrm), |
| 67282 | /* 190102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67283 | /* 190104 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67284 | /* 190106 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67285 | /* 190110 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67286 | /* 190115 */ GIR_RootConstrainSelectedInstOperands, |
| 67287 | /* 190116 */ // GIR_Coverage, 23502, |
| 67288 | /* 190116 */ GIR_EraseRootFromParent_Done, |
| 67289 | /* 190117 */ // Label 4218: @190117 |
| 67290 | /* 190117 */ GIM_Try, /*On fail goto*//*Label 4219*/ GIMT_Encode4(190179), // Rule ID 24113 // |
| 67291 | /* 190122 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67292 | /* 190125 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67293 | /* 190129 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67294 | /* 190133 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67295 | /* 190137 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67296 | /* 190140 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67297 | /* 190144 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67298 | /* 190148 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67299 | /* 190152 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67300 | /* 190154 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67301 | /* 190161 */ // (umin:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPMINUDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67302 | /* 190161 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ128rm), |
| 67303 | /* 190164 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67304 | /* 190166 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67305 | /* 190168 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67306 | /* 190172 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67307 | /* 190177 */ GIR_RootConstrainSelectedInstOperands, |
| 67308 | /* 190178 */ // GIR_Coverage, 24113, |
| 67309 | /* 190178 */ GIR_EraseRootFromParent_Done, |
| 67310 | /* 190179 */ // Label 4219: @190179 |
| 67311 | /* 190179 */ GIM_Try, /*On fail goto*//*Label 4220*/ GIMT_Encode4(190241), // Rule ID 3188 // |
| 67312 | /* 190184 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 67313 | /* 190187 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67314 | /* 190191 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67315 | /* 190195 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67316 | /* 190199 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67317 | /* 190203 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67318 | /* 190206 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67319 | /* 190210 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67320 | /* 190214 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67321 | /* 190216 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67322 | /* 190223 */ // (umin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67323 | /* 190223 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDrm), |
| 67324 | /* 190226 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67325 | /* 190228 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67326 | /* 190230 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67327 | /* 190234 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67328 | /* 190239 */ GIR_RootConstrainSelectedInstOperands, |
| 67329 | /* 190240 */ // GIR_Coverage, 3188, |
| 67330 | /* 190240 */ GIR_EraseRootFromParent_Done, |
| 67331 | /* 190241 */ // Label 4220: @190241 |
| 67332 | /* 190241 */ GIM_Try, /*On fail goto*//*Label 4221*/ GIMT_Encode4(190303), // Rule ID 5653 // |
| 67333 | /* 190246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67334 | /* 190249 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67335 | /* 190253 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67336 | /* 190257 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67337 | /* 190261 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67338 | /* 190265 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67339 | /* 190268 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67340 | /* 190272 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67341 | /* 190276 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67342 | /* 190278 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67343 | /* 190285 */ // (umin:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67344 | /* 190285 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ128rm), |
| 67345 | /* 190288 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67346 | /* 190290 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67347 | /* 190292 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67348 | /* 190296 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67349 | /* 190301 */ GIR_RootConstrainSelectedInstOperands, |
| 67350 | /* 190302 */ // GIR_Coverage, 5653, |
| 67351 | /* 190302 */ GIR_EraseRootFromParent_Done, |
| 67352 | /* 190303 */ // Label 4221: @190303 |
| 67353 | /* 190303 */ GIM_Try, /*On fail goto*//*Label 4222*/ GIMT_Encode4(190330), // Rule ID 3187 // |
| 67354 | /* 190308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 67355 | /* 190311 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67356 | /* 190315 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67357 | /* 190319 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67358 | /* 190323 */ // (umin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMINUDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 67359 | /* 190323 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUDrr), |
| 67360 | /* 190328 */ GIR_RootConstrainSelectedInstOperands, |
| 67361 | /* 190329 */ // GIR_Coverage, 3187, |
| 67362 | /* 190329 */ GIR_Done, |
| 67363 | /* 190330 */ // Label 4222: @190330 |
| 67364 | /* 190330 */ GIM_Try, /*On fail goto*//*Label 4223*/ GIMT_Encode4(190357), // Rule ID 3225 // |
| 67365 | /* 190335 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 67366 | /* 190338 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67367 | /* 190342 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67368 | /* 190346 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67369 | /* 190350 */ // (umin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PMINUDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 67370 | /* 190350 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINUDrr), |
| 67371 | /* 190355 */ GIR_RootConstrainSelectedInstOperands, |
| 67372 | /* 190356 */ // GIR_Coverage, 3225, |
| 67373 | /* 190356 */ GIR_Done, |
| 67374 | /* 190357 */ // Label 4223: @190357 |
| 67375 | /* 190357 */ GIM_Try, /*On fail goto*//*Label 4224*/ GIMT_Encode4(190384), // Rule ID 5650 // |
| 67376 | /* 190362 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67377 | /* 190365 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67378 | /* 190369 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67379 | /* 190373 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67380 | /* 190377 */ // (umin:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPMINUDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 67381 | /* 190377 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ128rr), |
| 67382 | /* 190382 */ GIR_RootConstrainSelectedInstOperands, |
| 67383 | /* 190383 */ // GIR_Coverage, 5650, |
| 67384 | /* 190383 */ GIR_Done, |
| 67385 | /* 190384 */ // Label 4224: @190384 |
| 67386 | /* 190384 */ GIM_Reject, |
| 67387 | /* 190385 */ // Label 4217: @190385 |
| 67388 | /* 190385 */ GIM_Reject, |
| 67389 | /* 190386 */ // Label 4201: @190386 |
| 67390 | /* 190386 */ GIM_Try, /*On fail goto*//*Label 4225*/ GIMT_Encode4(190702), |
| 67391 | /* 190391 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 67392 | /* 190394 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 67393 | /* 190397 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67394 | /* 190401 */ GIM_Try, /*On fail goto*//*Label 4226*/ GIMT_Encode4(190459), // Rule ID 24125 // |
| 67395 | /* 190406 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67396 | /* 190409 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67397 | /* 190413 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67398 | /* 190417 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67399 | /* 190420 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67400 | /* 190424 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67401 | /* 190428 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67402 | /* 190432 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67403 | /* 190434 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67404 | /* 190441 */ // (umin:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPMINUQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67405 | /* 190441 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ256rm), |
| 67406 | /* 190444 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67407 | /* 190446 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67408 | /* 190448 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67409 | /* 190452 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67410 | /* 190457 */ GIR_RootConstrainSelectedInstOperands, |
| 67411 | /* 190458 */ // GIR_Coverage, 24125, |
| 67412 | /* 190458 */ GIR_EraseRootFromParent_Done, |
| 67413 | /* 190459 */ // Label 4226: @190459 |
| 67414 | /* 190459 */ GIM_Try, /*On fail goto*//*Label 4227*/ GIMT_Encode4(190517), // Rule ID 5671 // |
| 67415 | /* 190464 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67416 | /* 190467 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67417 | /* 190471 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67418 | /* 190475 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67419 | /* 190479 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67420 | /* 190482 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67421 | /* 190486 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67422 | /* 190490 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67423 | /* 190492 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67424 | /* 190499 */ // (umin:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67425 | /* 190499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ256rm), |
| 67426 | /* 190502 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67427 | /* 190504 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67428 | /* 190506 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67429 | /* 190510 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67430 | /* 190515 */ GIR_RootConstrainSelectedInstOperands, |
| 67431 | /* 190516 */ // GIR_Coverage, 5671, |
| 67432 | /* 190516 */ GIR_EraseRootFromParent_Done, |
| 67433 | /* 190517 */ // Label 4227: @190517 |
| 67434 | /* 190517 */ GIM_Try, /*On fail goto*//*Label 4228*/ GIMT_Encode4(190540), // Rule ID 5668 // |
| 67435 | /* 190522 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67436 | /* 190525 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67437 | /* 190529 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67438 | /* 190533 */ // (umin:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPMINUQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 67439 | /* 190533 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ256rr), |
| 67440 | /* 190538 */ GIR_RootConstrainSelectedInstOperands, |
| 67441 | /* 190539 */ // GIR_Coverage, 5668, |
| 67442 | /* 190539 */ GIR_Done, |
| 67443 | /* 190540 */ // Label 4228: @190540 |
| 67444 | /* 190540 */ GIM_Try, /*On fail goto*//*Label 4229*/ GIMT_Encode4(190701), // Rule ID 20004 // |
| 67445 | /* 190545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 67446 | /* 190548 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67447 | /* 190552 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67448 | /* 190556 */ // (umin:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPMINUQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 67449 | /* 190556 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 67450 | /* 190559 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 67451 | /* 190563 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 67452 | /* 190568 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 67453 | /* 190570 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 67454 | /* 190573 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 67455 | /* 190577 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 67456 | /* 190582 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 67457 | /* 190585 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 67458 | /* 190589 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 67459 | /* 190592 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 67460 | /* 190597 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 67461 | /* 190602 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 67462 | /* 190607 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 67463 | /* 190610 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 67464 | /* 190614 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 67465 | /* 190619 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 67466 | /* 190621 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 67467 | /* 190624 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 67468 | /* 190628 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 67469 | /* 190633 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 67470 | /* 190636 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 67471 | /* 190640 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 67472 | /* 190643 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 67473 | /* 190648 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 67474 | /* 190653 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 67475 | /* 190658 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 67476 | /* 190661 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMINUQZrr), |
| 67477 | /* 190665 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 67478 | /* 190670 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 67479 | /* 190673 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 67480 | /* 190676 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 67481 | /* 190678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 67482 | /* 190681 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67483 | /* 190683 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 67484 | /* 190690 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 67485 | /* 190695 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 67486 | /* 190700 */ // GIR_Coverage, 20004, |
| 67487 | /* 190700 */ GIR_EraseRootFromParent_Done, |
| 67488 | /* 190701 */ // Label 4229: @190701 |
| 67489 | /* 190701 */ GIM_Reject, |
| 67490 | /* 190702 */ // Label 4225: @190702 |
| 67491 | /* 190702 */ GIM_Reject, |
| 67492 | /* 190703 */ // Label 4202: @190703 |
| 67493 | /* 190703 */ GIM_Try, /*On fail goto*//*Label 4230*/ GIMT_Encode4(191044), |
| 67494 | /* 190708 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 67495 | /* 190711 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 67496 | /* 190714 */ GIM_Try, /*On fail goto*//*Label 4231*/ GIMT_Encode4(190776), // Rule ID 23507 // |
| 67497 | /* 190719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67498 | /* 190722 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67499 | /* 190726 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67500 | /* 190730 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67501 | /* 190734 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67502 | /* 190737 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67503 | /* 190741 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67504 | /* 190745 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67505 | /* 190749 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67506 | /* 190751 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67507 | /* 190758 */ // (umin:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMINUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67508 | /* 190758 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWrm), |
| 67509 | /* 190761 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67510 | /* 190763 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67511 | /* 190765 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67512 | /* 190769 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67513 | /* 190774 */ GIR_RootConstrainSelectedInstOperands, |
| 67514 | /* 190775 */ // GIR_Coverage, 23507, |
| 67515 | /* 190775 */ GIR_EraseRootFromParent_Done, |
| 67516 | /* 190776 */ // Label 4231: @190776 |
| 67517 | /* 190776 */ GIM_Try, /*On fail goto*//*Label 4232*/ GIMT_Encode4(190838), // Rule ID 24098 // |
| 67518 | /* 190781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67519 | /* 190784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67520 | /* 190788 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67521 | /* 190792 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67522 | /* 190796 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67523 | /* 190799 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67524 | /* 190803 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67525 | /* 190807 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67526 | /* 190811 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67527 | /* 190813 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67528 | /* 190820 */ // (umin:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMINUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67529 | /* 190820 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ128rm), |
| 67530 | /* 190823 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67531 | /* 190825 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67532 | /* 190827 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67533 | /* 190831 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67534 | /* 190836 */ GIR_RootConstrainSelectedInstOperands, |
| 67535 | /* 190837 */ // GIR_Coverage, 24098, |
| 67536 | /* 190837 */ GIR_EraseRootFromParent_Done, |
| 67537 | /* 190838 */ // Label 4232: @190838 |
| 67538 | /* 190838 */ GIM_Try, /*On fail goto*//*Label 4233*/ GIMT_Encode4(190900), // Rule ID 3198 // |
| 67539 | /* 190843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67540 | /* 190846 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67541 | /* 190850 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67542 | /* 190854 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67543 | /* 190858 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67544 | /* 190862 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67545 | /* 190865 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67546 | /* 190869 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67547 | /* 190873 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67548 | /* 190875 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67549 | /* 190882 */ // (umin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67550 | /* 190882 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWrm), |
| 67551 | /* 190885 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67552 | /* 190887 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67553 | /* 190889 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67554 | /* 190893 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67555 | /* 190898 */ GIR_RootConstrainSelectedInstOperands, |
| 67556 | /* 190899 */ // GIR_Coverage, 3198, |
| 67557 | /* 190899 */ GIR_EraseRootFromParent_Done, |
| 67558 | /* 190900 */ // Label 4233: @190900 |
| 67559 | /* 190900 */ GIM_Try, /*On fail goto*//*Label 4234*/ GIMT_Encode4(190962), // Rule ID 5629 // |
| 67560 | /* 190905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67561 | /* 190908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67562 | /* 190912 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67563 | /* 190916 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67564 | /* 190920 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67565 | /* 190924 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67566 | /* 190927 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67567 | /* 190931 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67568 | /* 190935 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67569 | /* 190937 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67570 | /* 190944 */ // (umin:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67571 | /* 190944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ128rm), |
| 67572 | /* 190947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67573 | /* 190949 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67574 | /* 190951 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67575 | /* 190955 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67576 | /* 190960 */ GIR_RootConstrainSelectedInstOperands, |
| 67577 | /* 190961 */ // GIR_Coverage, 5629, |
| 67578 | /* 190961 */ GIR_EraseRootFromParent_Done, |
| 67579 | /* 190962 */ // Label 4234: @190962 |
| 67580 | /* 190962 */ GIM_Try, /*On fail goto*//*Label 4235*/ GIMT_Encode4(190989), // Rule ID 3197 // |
| 67581 | /* 190967 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67582 | /* 190970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67583 | /* 190974 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67584 | /* 190978 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67585 | /* 190982 */ // (umin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMINUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 67586 | /* 190982 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUWrr), |
| 67587 | /* 190987 */ GIR_RootConstrainSelectedInstOperands, |
| 67588 | /* 190988 */ // GIR_Coverage, 3197, |
| 67589 | /* 190988 */ GIR_Done, |
| 67590 | /* 190989 */ // Label 4235: @190989 |
| 67591 | /* 190989 */ GIM_Try, /*On fail goto*//*Label 4236*/ GIMT_Encode4(191016), // Rule ID 3227 // |
| 67592 | /* 190994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 67593 | /* 190997 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67594 | /* 191001 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67595 | /* 191005 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67596 | /* 191009 */ // (umin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMINUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 67597 | /* 191009 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINUWrr), |
| 67598 | /* 191014 */ GIR_RootConstrainSelectedInstOperands, |
| 67599 | /* 191015 */ // GIR_Coverage, 3227, |
| 67600 | /* 191015 */ GIR_Done, |
| 67601 | /* 191016 */ // Label 4236: @191016 |
| 67602 | /* 191016 */ GIM_Try, /*On fail goto*//*Label 4237*/ GIMT_Encode4(191043), // Rule ID 5626 // |
| 67603 | /* 191021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67604 | /* 191024 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67605 | /* 191028 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67606 | /* 191032 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67607 | /* 191036 */ // (umin:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMINUWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 67608 | /* 191036 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ128rr), |
| 67609 | /* 191041 */ GIR_RootConstrainSelectedInstOperands, |
| 67610 | /* 191042 */ // GIR_Coverage, 5626, |
| 67611 | /* 191042 */ GIR_Done, |
| 67612 | /* 191043 */ // Label 4237: @191043 |
| 67613 | /* 191043 */ GIM_Reject, |
| 67614 | /* 191044 */ // Label 4230: @191044 |
| 67615 | /* 191044 */ GIM_Reject, |
| 67616 | /* 191045 */ // Label 4203: @191045 |
| 67617 | /* 191045 */ GIM_Try, /*On fail goto*//*Label 4238*/ GIMT_Encode4(191359), |
| 67618 | /* 191050 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 67619 | /* 191053 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 67620 | /* 191056 */ GIM_Try, /*On fail goto*//*Label 4239*/ GIMT_Encode4(191118), // Rule ID 23511 // |
| 67621 | /* 191061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 67622 | /* 191064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67623 | /* 191068 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67624 | /* 191072 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67625 | /* 191076 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67626 | /* 191079 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67627 | /* 191083 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67628 | /* 191087 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67629 | /* 191091 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67630 | /* 191093 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67631 | /* 191100 */ // (umin:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPMINUDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67632 | /* 191100 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDYrm), |
| 67633 | /* 191103 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67634 | /* 191105 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67635 | /* 191107 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67636 | /* 191111 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67637 | /* 191116 */ GIR_RootConstrainSelectedInstOperands, |
| 67638 | /* 191117 */ // GIR_Coverage, 23511, |
| 67639 | /* 191117 */ GIR_EraseRootFromParent_Done, |
| 67640 | /* 191118 */ // Label 4239: @191118 |
| 67641 | /* 191118 */ GIM_Try, /*On fail goto*//*Label 4240*/ GIMT_Encode4(191180), // Rule ID 24107 // |
| 67642 | /* 191123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67643 | /* 191126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67644 | /* 191130 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67645 | /* 191134 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67646 | /* 191138 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67647 | /* 191141 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67648 | /* 191145 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67649 | /* 191149 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67650 | /* 191153 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67651 | /* 191155 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67652 | /* 191162 */ // (umin:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPMINUDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67653 | /* 191162 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ256rm), |
| 67654 | /* 191165 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67655 | /* 191167 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67656 | /* 191169 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67657 | /* 191173 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67658 | /* 191178 */ GIR_RootConstrainSelectedInstOperands, |
| 67659 | /* 191179 */ // GIR_Coverage, 24107, |
| 67660 | /* 191179 */ GIR_EraseRootFromParent_Done, |
| 67661 | /* 191180 */ // Label 4240: @191180 |
| 67662 | /* 191180 */ GIM_Try, /*On fail goto*//*Label 4241*/ GIMT_Encode4(191242), // Rule ID 3206 // |
| 67663 | /* 191185 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 67664 | /* 191188 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67665 | /* 191192 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67666 | /* 191196 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67667 | /* 191200 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67668 | /* 191204 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67669 | /* 191207 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67670 | /* 191211 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67671 | /* 191215 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67672 | /* 191217 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67673 | /* 191224 */ // (umin:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67674 | /* 191224 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDYrm), |
| 67675 | /* 191227 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67676 | /* 191229 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67677 | /* 191231 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67678 | /* 191235 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67679 | /* 191240 */ GIR_RootConstrainSelectedInstOperands, |
| 67680 | /* 191241 */ // GIR_Coverage, 3206, |
| 67681 | /* 191241 */ GIR_EraseRootFromParent_Done, |
| 67682 | /* 191242 */ // Label 4241: @191242 |
| 67683 | /* 191242 */ GIM_Try, /*On fail goto*//*Label 4242*/ GIMT_Encode4(191304), // Rule ID 5644 // |
| 67684 | /* 191247 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67685 | /* 191250 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67686 | /* 191254 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67687 | /* 191258 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67688 | /* 191262 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67689 | /* 191266 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67690 | /* 191269 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67691 | /* 191273 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67692 | /* 191277 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67693 | /* 191279 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67694 | /* 191286 */ // (umin:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67695 | /* 191286 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ256rm), |
| 67696 | /* 191289 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67697 | /* 191291 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67698 | /* 191293 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67699 | /* 191297 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67700 | /* 191302 */ GIR_RootConstrainSelectedInstOperands, |
| 67701 | /* 191303 */ // GIR_Coverage, 5644, |
| 67702 | /* 191303 */ GIR_EraseRootFromParent_Done, |
| 67703 | /* 191304 */ // Label 4242: @191304 |
| 67704 | /* 191304 */ GIM_Try, /*On fail goto*//*Label 4243*/ GIMT_Encode4(191331), // Rule ID 3205 // |
| 67705 | /* 191309 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 67706 | /* 191312 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67707 | /* 191316 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67708 | /* 191320 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67709 | /* 191324 */ // (umin:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMINUDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 67710 | /* 191324 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUDYrr), |
| 67711 | /* 191329 */ GIR_RootConstrainSelectedInstOperands, |
| 67712 | /* 191330 */ // GIR_Coverage, 3205, |
| 67713 | /* 191330 */ GIR_Done, |
| 67714 | /* 191331 */ // Label 4243: @191331 |
| 67715 | /* 191331 */ GIM_Try, /*On fail goto*//*Label 4244*/ GIMT_Encode4(191358), // Rule ID 5641 // |
| 67716 | /* 191336 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67717 | /* 191339 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67718 | /* 191343 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67719 | /* 191347 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67720 | /* 191351 */ // (umin:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPMINUDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 67721 | /* 191351 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ256rr), |
| 67722 | /* 191356 */ GIR_RootConstrainSelectedInstOperands, |
| 67723 | /* 191357 */ // GIR_Coverage, 5641, |
| 67724 | /* 191357 */ GIR_Done, |
| 67725 | /* 191358 */ // Label 4244: @191358 |
| 67726 | /* 191358 */ GIM_Reject, |
| 67727 | /* 191359 */ // Label 4238: @191359 |
| 67728 | /* 191359 */ GIM_Reject, |
| 67729 | /* 191360 */ // Label 4204: @191360 |
| 67730 | /* 191360 */ GIM_Try, /*On fail goto*//*Label 4245*/ GIMT_Encode4(191515), |
| 67731 | /* 191365 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 67732 | /* 191368 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 67733 | /* 191371 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67734 | /* 191375 */ GIM_Try, /*On fail goto*//*Label 4246*/ GIMT_Encode4(191433), // Rule ID 24119 // |
| 67735 | /* 191380 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 67736 | /* 191383 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67737 | /* 191387 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67738 | /* 191391 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67739 | /* 191394 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67740 | /* 191398 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67741 | /* 191402 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67742 | /* 191406 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67743 | /* 191408 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67744 | /* 191415 */ // (umin:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPMINUQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67745 | /* 191415 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZrm), |
| 67746 | /* 191418 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67747 | /* 191420 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67748 | /* 191422 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67749 | /* 191426 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67750 | /* 191431 */ GIR_RootConstrainSelectedInstOperands, |
| 67751 | /* 191432 */ // GIR_Coverage, 24119, |
| 67752 | /* 191432 */ GIR_EraseRootFromParent_Done, |
| 67753 | /* 191433 */ // Label 4246: @191433 |
| 67754 | /* 191433 */ GIM_Try, /*On fail goto*//*Label 4247*/ GIMT_Encode4(191491), // Rule ID 5662 // |
| 67755 | /* 191438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 67756 | /* 191441 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67757 | /* 191445 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67758 | /* 191449 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67759 | /* 191453 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67760 | /* 191456 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67761 | /* 191460 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67762 | /* 191464 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67763 | /* 191466 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67764 | /* 191473 */ // (umin:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67765 | /* 191473 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZrm), |
| 67766 | /* 191476 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67767 | /* 191478 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67768 | /* 191480 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67769 | /* 191484 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67770 | /* 191489 */ GIR_RootConstrainSelectedInstOperands, |
| 67771 | /* 191490 */ // GIR_Coverage, 5662, |
| 67772 | /* 191490 */ GIR_EraseRootFromParent_Done, |
| 67773 | /* 191491 */ // Label 4247: @191491 |
| 67774 | /* 191491 */ GIM_Try, /*On fail goto*//*Label 4248*/ GIMT_Encode4(191514), // Rule ID 5659 // |
| 67775 | /* 191496 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 67776 | /* 191499 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67777 | /* 191503 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67778 | /* 191507 */ // (umin:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPMINUQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 67779 | /* 191507 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUQZrr), |
| 67780 | /* 191512 */ GIR_RootConstrainSelectedInstOperands, |
| 67781 | /* 191513 */ // GIR_Coverage, 5659, |
| 67782 | /* 191513 */ GIR_Done, |
| 67783 | /* 191514 */ // Label 4248: @191514 |
| 67784 | /* 191514 */ GIM_Reject, |
| 67785 | /* 191515 */ // Label 4245: @191515 |
| 67786 | /* 191515 */ GIM_Reject, |
| 67787 | /* 191516 */ // Label 4205: @191516 |
| 67788 | /* 191516 */ GIM_Try, /*On fail goto*//*Label 4249*/ GIMT_Encode4(191857), |
| 67789 | /* 191521 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 67790 | /* 191524 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 67791 | /* 191527 */ GIM_Try, /*On fail goto*//*Label 4250*/ GIMT_Encode4(191589), // Rule ID 23462 // |
| 67792 | /* 191532 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67793 | /* 191535 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67794 | /* 191539 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67795 | /* 191543 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67796 | /* 191547 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67797 | /* 191550 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67798 | /* 191554 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67799 | /* 191558 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67800 | /* 191562 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67801 | /* 191564 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67802 | /* 191571 */ // (umin:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPMINUBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67803 | /* 191571 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBrm), |
| 67804 | /* 191574 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67805 | /* 191576 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67806 | /* 191578 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67807 | /* 191582 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67808 | /* 191587 */ GIR_RootConstrainSelectedInstOperands, |
| 67809 | /* 191588 */ // GIR_Coverage, 23462, |
| 67810 | /* 191588 */ GIR_EraseRootFromParent_Done, |
| 67811 | /* 191589 */ // Label 4250: @191589 |
| 67812 | /* 191589 */ GIM_Try, /*On fail goto*//*Label 4251*/ GIMT_Encode4(191651), // Rule ID 24089 // |
| 67813 | /* 191594 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67814 | /* 191597 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67815 | /* 191601 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67816 | /* 191605 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67817 | /* 191609 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67818 | /* 191612 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67819 | /* 191616 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67820 | /* 191620 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67821 | /* 191624 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67822 | /* 191626 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67823 | /* 191633 */ // (umin:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPMINUBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67824 | /* 191633 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ128rm), |
| 67825 | /* 191636 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67826 | /* 191638 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67827 | /* 191640 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67828 | /* 191644 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67829 | /* 191649 */ GIR_RootConstrainSelectedInstOperands, |
| 67830 | /* 191650 */ // GIR_Coverage, 24089, |
| 67831 | /* 191650 */ GIR_EraseRootFromParent_Done, |
| 67832 | /* 191651 */ // Label 4251: @191651 |
| 67833 | /* 191651 */ GIM_Try, /*On fail goto*//*Label 4252*/ GIMT_Encode4(191713), // Rule ID 2637 // |
| 67834 | /* 191656 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67835 | /* 191659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67836 | /* 191663 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67837 | /* 191667 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67838 | /* 191671 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67839 | /* 191675 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67840 | /* 191678 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67841 | /* 191682 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67842 | /* 191686 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67843 | /* 191688 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67844 | /* 191695 */ // (umin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67845 | /* 191695 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBrm), |
| 67846 | /* 191698 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67847 | /* 191700 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67848 | /* 191702 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67849 | /* 191706 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67850 | /* 191711 */ GIR_RootConstrainSelectedInstOperands, |
| 67851 | /* 191712 */ // GIR_Coverage, 2637, |
| 67852 | /* 191712 */ GIR_EraseRootFromParent_Done, |
| 67853 | /* 191713 */ // Label 4252: @191713 |
| 67854 | /* 191713 */ GIM_Try, /*On fail goto*//*Label 4253*/ GIMT_Encode4(191775), // Rule ID 5611 // |
| 67855 | /* 191718 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67856 | /* 191721 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67857 | /* 191725 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67858 | /* 191729 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67859 | /* 191733 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67860 | /* 191737 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67861 | /* 191740 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67862 | /* 191744 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67863 | /* 191748 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67864 | /* 191750 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67865 | /* 191757 */ // (umin:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67866 | /* 191757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ128rm), |
| 67867 | /* 191760 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67868 | /* 191762 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67869 | /* 191764 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67870 | /* 191768 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67871 | /* 191773 */ GIR_RootConstrainSelectedInstOperands, |
| 67872 | /* 191774 */ // GIR_Coverage, 5611, |
| 67873 | /* 191774 */ GIR_EraseRootFromParent_Done, |
| 67874 | /* 191775 */ // Label 4253: @191775 |
| 67875 | /* 191775 */ GIM_Try, /*On fail goto*//*Label 4254*/ GIMT_Encode4(191802), // Rule ID 2636 // |
| 67876 | /* 191780 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67877 | /* 191783 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67878 | /* 191787 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67879 | /* 191791 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67880 | /* 191795 */ // (umin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPMINUBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 67881 | /* 191795 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUBrr), |
| 67882 | /* 191800 */ GIR_RootConstrainSelectedInstOperands, |
| 67883 | /* 191801 */ // GIR_Coverage, 2636, |
| 67884 | /* 191801 */ GIR_Done, |
| 67885 | /* 191802 */ // Label 4254: @191802 |
| 67886 | /* 191802 */ GIM_Try, /*On fail goto*//*Label 4255*/ GIMT_Encode4(191829), // Rule ID 2638 // |
| 67887 | /* 191807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 67888 | /* 191810 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67889 | /* 191814 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67890 | /* 191818 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67891 | /* 191822 */ // (umin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PMINUBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 67892 | /* 191822 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINUBrr), |
| 67893 | /* 191827 */ GIR_RootConstrainSelectedInstOperands, |
| 67894 | /* 191828 */ // GIR_Coverage, 2638, |
| 67895 | /* 191828 */ GIR_Done, |
| 67896 | /* 191829 */ // Label 4255: @191829 |
| 67897 | /* 191829 */ GIM_Try, /*On fail goto*//*Label 4256*/ GIMT_Encode4(191856), // Rule ID 5608 // |
| 67898 | /* 191834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67899 | /* 191837 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67900 | /* 191841 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67901 | /* 191845 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67902 | /* 191849 */ // (umin:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPMINUBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 67903 | /* 191849 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ128rr), |
| 67904 | /* 191854 */ GIR_RootConstrainSelectedInstOperands, |
| 67905 | /* 191855 */ // GIR_Coverage, 5608, |
| 67906 | /* 191855 */ GIR_Done, |
| 67907 | /* 191856 */ // Label 4256: @191856 |
| 67908 | /* 191856 */ GIM_Reject, |
| 67909 | /* 191857 */ // Label 4249: @191857 |
| 67910 | /* 191857 */ GIM_Reject, |
| 67911 | /* 191858 */ // Label 4206: @191858 |
| 67912 | /* 191858 */ GIM_Try, /*On fail goto*//*Label 4257*/ GIMT_Encode4(192172), |
| 67913 | /* 191863 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 67914 | /* 191866 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 67915 | /* 191869 */ GIM_Try, /*On fail goto*//*Label 4258*/ GIMT_Encode4(191931), // Rule ID 23516 // |
| 67916 | /* 191874 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 67917 | /* 191877 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67918 | /* 191881 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67919 | /* 191885 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67920 | /* 191889 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67921 | /* 191892 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67922 | /* 191896 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67923 | /* 191900 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67924 | /* 191904 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67925 | /* 191906 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67926 | /* 191913 */ // (umin:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMINUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67927 | /* 191913 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWYrm), |
| 67928 | /* 191916 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67929 | /* 191918 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67930 | /* 191920 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67931 | /* 191924 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67932 | /* 191929 */ GIR_RootConstrainSelectedInstOperands, |
| 67933 | /* 191930 */ // GIR_Coverage, 23516, |
| 67934 | /* 191930 */ GIR_EraseRootFromParent_Done, |
| 67935 | /* 191931 */ // Label 4258: @191931 |
| 67936 | /* 191931 */ GIM_Try, /*On fail goto*//*Label 4259*/ GIMT_Encode4(191993), // Rule ID 24095 // |
| 67937 | /* 191936 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67938 | /* 191939 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67939 | /* 191943 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67940 | /* 191947 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67941 | /* 191951 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67942 | /* 191954 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67943 | /* 191958 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67944 | /* 191962 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67945 | /* 191966 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67946 | /* 191968 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67947 | /* 191975 */ // (umin:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMINUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67948 | /* 191975 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ256rm), |
| 67949 | /* 191978 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67950 | /* 191980 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67951 | /* 191982 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67952 | /* 191986 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67953 | /* 191991 */ GIR_RootConstrainSelectedInstOperands, |
| 67954 | /* 191992 */ // GIR_Coverage, 24095, |
| 67955 | /* 191992 */ GIR_EraseRootFromParent_Done, |
| 67956 | /* 191993 */ // Label 4259: @191993 |
| 67957 | /* 191993 */ GIM_Try, /*On fail goto*//*Label 4260*/ GIMT_Encode4(192055), // Rule ID 3216 // |
| 67958 | /* 191998 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 67959 | /* 192001 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67960 | /* 192005 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67961 | /* 192009 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67962 | /* 192013 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67963 | /* 192017 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67964 | /* 192020 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67965 | /* 192024 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67966 | /* 192028 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67967 | /* 192030 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67968 | /* 192037 */ // (umin:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67969 | /* 192037 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWYrm), |
| 67970 | /* 192040 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67971 | /* 192042 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67972 | /* 192044 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67973 | /* 192048 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67974 | /* 192053 */ GIR_RootConstrainSelectedInstOperands, |
| 67975 | /* 192054 */ // GIR_Coverage, 3216, |
| 67976 | /* 192054 */ GIR_EraseRootFromParent_Done, |
| 67977 | /* 192055 */ // Label 4260: @192055 |
| 67978 | /* 192055 */ GIM_Try, /*On fail goto*//*Label 4261*/ GIMT_Encode4(192117), // Rule ID 5623 // |
| 67979 | /* 192060 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67980 | /* 192063 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67981 | /* 192067 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67982 | /* 192071 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67983 | /* 192075 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67984 | /* 192079 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67985 | /* 192082 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67986 | /* 192086 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67987 | /* 192090 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67988 | /* 192092 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67989 | /* 192099 */ // (umin:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67990 | /* 192099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ256rm), |
| 67991 | /* 192102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67992 | /* 192104 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67993 | /* 192106 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67994 | /* 192110 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67995 | /* 192115 */ GIR_RootConstrainSelectedInstOperands, |
| 67996 | /* 192116 */ // GIR_Coverage, 5623, |
| 67997 | /* 192116 */ GIR_EraseRootFromParent_Done, |
| 67998 | /* 192117 */ // Label 4261: @192117 |
| 67999 | /* 192117 */ GIM_Try, /*On fail goto*//*Label 4262*/ GIMT_Encode4(192144), // Rule ID 3215 // |
| 68000 | /* 192122 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 68001 | /* 192125 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68002 | /* 192129 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68003 | /* 192133 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68004 | /* 192137 */ // (umin:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMINUWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 68005 | /* 192137 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUWYrr), |
| 68006 | /* 192142 */ GIR_RootConstrainSelectedInstOperands, |
| 68007 | /* 192143 */ // GIR_Coverage, 3215, |
| 68008 | /* 192143 */ GIR_Done, |
| 68009 | /* 192144 */ // Label 4262: @192144 |
| 68010 | /* 192144 */ GIM_Try, /*On fail goto*//*Label 4263*/ GIMT_Encode4(192171), // Rule ID 5620 // |
| 68011 | /* 192149 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68012 | /* 192152 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68013 | /* 192156 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68014 | /* 192160 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68015 | /* 192164 */ // (umin:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMINUWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 68016 | /* 192164 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ256rr), |
| 68017 | /* 192169 */ GIR_RootConstrainSelectedInstOperands, |
| 68018 | /* 192170 */ // GIR_Coverage, 5620, |
| 68019 | /* 192170 */ GIR_Done, |
| 68020 | /* 192171 */ // Label 4263: @192171 |
| 68021 | /* 192171 */ GIM_Reject, |
| 68022 | /* 192172 */ // Label 4257: @192172 |
| 68023 | /* 192172 */ GIM_Reject, |
| 68024 | /* 192173 */ // Label 4207: @192173 |
| 68025 | /* 192173 */ GIM_Try, /*On fail goto*//*Label 4264*/ GIMT_Encode4(192328), |
| 68026 | /* 192178 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 68027 | /* 192181 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 68028 | /* 192184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68029 | /* 192188 */ GIM_Try, /*On fail goto*//*Label 4265*/ GIMT_Encode4(192246), // Rule ID 24101 // |
| 68030 | /* 192193 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68031 | /* 192196 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68032 | /* 192200 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68033 | /* 192204 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68034 | /* 192207 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68035 | /* 192211 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68036 | /* 192215 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68037 | /* 192219 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68038 | /* 192221 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68039 | /* 192228 */ // (umin:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPMINUDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68040 | /* 192228 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZrm), |
| 68041 | /* 192231 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68042 | /* 192233 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68043 | /* 192235 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68044 | /* 192239 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68045 | /* 192244 */ GIR_RootConstrainSelectedInstOperands, |
| 68046 | /* 192245 */ // GIR_Coverage, 24101, |
| 68047 | /* 192245 */ GIR_EraseRootFromParent_Done, |
| 68048 | /* 192246 */ // Label 4265: @192246 |
| 68049 | /* 192246 */ GIM_Try, /*On fail goto*//*Label 4266*/ GIMT_Encode4(192304), // Rule ID 5635 // |
| 68050 | /* 192251 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68051 | /* 192254 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68052 | /* 192258 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68053 | /* 192262 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68054 | /* 192266 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68055 | /* 192269 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68056 | /* 192273 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68057 | /* 192277 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68058 | /* 192279 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68059 | /* 192286 */ // (umin:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68060 | /* 192286 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZrm), |
| 68061 | /* 192289 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68062 | /* 192291 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68063 | /* 192293 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68064 | /* 192297 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68065 | /* 192302 */ GIR_RootConstrainSelectedInstOperands, |
| 68066 | /* 192303 */ // GIR_Coverage, 5635, |
| 68067 | /* 192303 */ GIR_EraseRootFromParent_Done, |
| 68068 | /* 192304 */ // Label 4266: @192304 |
| 68069 | /* 192304 */ GIM_Try, /*On fail goto*//*Label 4267*/ GIMT_Encode4(192327), // Rule ID 5632 // |
| 68070 | /* 192309 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68071 | /* 192312 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68072 | /* 192316 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68073 | /* 192320 */ // (umin:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPMINUDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 68074 | /* 192320 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUDZrr), |
| 68075 | /* 192325 */ GIR_RootConstrainSelectedInstOperands, |
| 68076 | /* 192326 */ // GIR_Coverage, 5632, |
| 68077 | /* 192326 */ GIR_Done, |
| 68078 | /* 192327 */ // Label 4267: @192327 |
| 68079 | /* 192327 */ GIM_Reject, |
| 68080 | /* 192328 */ // Label 4264: @192328 |
| 68081 | /* 192328 */ GIM_Reject, |
| 68082 | /* 192329 */ // Label 4208: @192329 |
| 68083 | /* 192329 */ GIM_Try, /*On fail goto*//*Label 4268*/ GIMT_Encode4(192643), |
| 68084 | /* 192334 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 68085 | /* 192337 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 68086 | /* 192340 */ GIM_Try, /*On fail goto*//*Label 4269*/ GIMT_Encode4(192402), // Rule ID 23464 // |
| 68087 | /* 192345 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 68088 | /* 192348 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68089 | /* 192352 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68090 | /* 192356 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68091 | /* 192360 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68092 | /* 192363 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68093 | /* 192367 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68094 | /* 192371 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68095 | /* 192375 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68096 | /* 192377 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68097 | /* 192384 */ // (umin:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPMINUBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68098 | /* 192384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBYrm), |
| 68099 | /* 192387 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68100 | /* 192389 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68101 | /* 192391 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68102 | /* 192395 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68103 | /* 192400 */ GIR_RootConstrainSelectedInstOperands, |
| 68104 | /* 192401 */ // GIR_Coverage, 23464, |
| 68105 | /* 192401 */ GIR_EraseRootFromParent_Done, |
| 68106 | /* 192402 */ // Label 4269: @192402 |
| 68107 | /* 192402 */ GIM_Try, /*On fail goto*//*Label 4270*/ GIMT_Encode4(192464), // Rule ID 24086 // |
| 68108 | /* 192407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68109 | /* 192410 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68110 | /* 192414 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68111 | /* 192418 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68112 | /* 192422 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68113 | /* 192425 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68114 | /* 192429 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68115 | /* 192433 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68116 | /* 192437 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68117 | /* 192439 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68118 | /* 192446 */ // (umin:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPMINUBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68119 | /* 192446 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ256rm), |
| 68120 | /* 192449 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68121 | /* 192451 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68122 | /* 192453 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68123 | /* 192457 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68124 | /* 192462 */ GIR_RootConstrainSelectedInstOperands, |
| 68125 | /* 192463 */ // GIR_Coverage, 24086, |
| 68126 | /* 192463 */ GIR_EraseRootFromParent_Done, |
| 68127 | /* 192464 */ // Label 4270: @192464 |
| 68128 | /* 192464 */ GIM_Try, /*On fail goto*//*Label 4271*/ GIMT_Encode4(192526), // Rule ID 2641 // |
| 68129 | /* 192469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 68130 | /* 192472 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68131 | /* 192476 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68132 | /* 192480 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68133 | /* 192484 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68134 | /* 192488 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68135 | /* 192491 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68136 | /* 192495 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68137 | /* 192499 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68138 | /* 192501 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68139 | /* 192508 */ // (umin:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68140 | /* 192508 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBYrm), |
| 68141 | /* 192511 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68142 | /* 192513 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68143 | /* 192515 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68144 | /* 192519 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68145 | /* 192524 */ GIR_RootConstrainSelectedInstOperands, |
| 68146 | /* 192525 */ // GIR_Coverage, 2641, |
| 68147 | /* 192525 */ GIR_EraseRootFromParent_Done, |
| 68148 | /* 192526 */ // Label 4271: @192526 |
| 68149 | /* 192526 */ GIM_Try, /*On fail goto*//*Label 4272*/ GIMT_Encode4(192588), // Rule ID 5605 // |
| 68150 | /* 192531 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68151 | /* 192534 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68152 | /* 192538 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68153 | /* 192542 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68154 | /* 192546 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68155 | /* 192550 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68156 | /* 192553 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68157 | /* 192557 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68158 | /* 192561 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68159 | /* 192563 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68160 | /* 192570 */ // (umin:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68161 | /* 192570 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ256rm), |
| 68162 | /* 192573 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68163 | /* 192575 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68164 | /* 192577 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68165 | /* 192581 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68166 | /* 192586 */ GIR_RootConstrainSelectedInstOperands, |
| 68167 | /* 192587 */ // GIR_Coverage, 5605, |
| 68168 | /* 192587 */ GIR_EraseRootFromParent_Done, |
| 68169 | /* 192588 */ // Label 4272: @192588 |
| 68170 | /* 192588 */ GIM_Try, /*On fail goto*//*Label 4273*/ GIMT_Encode4(192615), // Rule ID 2640 // |
| 68171 | /* 192593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 68172 | /* 192596 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68173 | /* 192600 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68174 | /* 192604 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68175 | /* 192608 */ // (umin:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPMINUBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 68176 | /* 192608 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUBYrr), |
| 68177 | /* 192613 */ GIR_RootConstrainSelectedInstOperands, |
| 68178 | /* 192614 */ // GIR_Coverage, 2640, |
| 68179 | /* 192614 */ GIR_Done, |
| 68180 | /* 192615 */ // Label 4273: @192615 |
| 68181 | /* 192615 */ GIM_Try, /*On fail goto*//*Label 4274*/ GIMT_Encode4(192642), // Rule ID 5602 // |
| 68182 | /* 192620 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68183 | /* 192623 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68184 | /* 192627 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68185 | /* 192631 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68186 | /* 192635 */ // (umin:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPMINUBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 68187 | /* 192635 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ256rr), |
| 68188 | /* 192640 */ GIR_RootConstrainSelectedInstOperands, |
| 68189 | /* 192641 */ // GIR_Coverage, 5602, |
| 68190 | /* 192641 */ GIR_Done, |
| 68191 | /* 192642 */ // Label 4274: @192642 |
| 68192 | /* 192642 */ GIM_Reject, |
| 68193 | /* 192643 */ // Label 4268: @192643 |
| 68194 | /* 192643 */ GIM_Reject, |
| 68195 | /* 192644 */ // Label 4209: @192644 |
| 68196 | /* 192644 */ GIM_Try, /*On fail goto*//*Label 4275*/ GIMT_Encode4(192799), |
| 68197 | /* 192649 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 68198 | /* 192652 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 68199 | /* 192655 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68200 | /* 192659 */ GIM_Try, /*On fail goto*//*Label 4276*/ GIMT_Encode4(192717), // Rule ID 24092 // |
| 68201 | /* 192664 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68202 | /* 192667 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68203 | /* 192671 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68204 | /* 192675 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68205 | /* 192678 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68206 | /* 192682 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68207 | /* 192686 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68208 | /* 192690 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68209 | /* 192692 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68210 | /* 192699 */ // (umin:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMINUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68211 | /* 192699 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZrm), |
| 68212 | /* 192702 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68213 | /* 192704 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68214 | /* 192706 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68215 | /* 192710 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68216 | /* 192715 */ GIR_RootConstrainSelectedInstOperands, |
| 68217 | /* 192716 */ // GIR_Coverage, 24092, |
| 68218 | /* 192716 */ GIR_EraseRootFromParent_Done, |
| 68219 | /* 192717 */ // Label 4276: @192717 |
| 68220 | /* 192717 */ GIM_Try, /*On fail goto*//*Label 4277*/ GIMT_Encode4(192775), // Rule ID 5617 // |
| 68221 | /* 192722 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68222 | /* 192725 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68223 | /* 192729 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68224 | /* 192733 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68225 | /* 192737 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68226 | /* 192740 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68227 | /* 192744 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68228 | /* 192748 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68229 | /* 192750 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68230 | /* 192757 */ // (umin:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68231 | /* 192757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZrm), |
| 68232 | /* 192760 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68233 | /* 192762 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68234 | /* 192764 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68235 | /* 192768 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68236 | /* 192773 */ GIR_RootConstrainSelectedInstOperands, |
| 68237 | /* 192774 */ // GIR_Coverage, 5617, |
| 68238 | /* 192774 */ GIR_EraseRootFromParent_Done, |
| 68239 | /* 192775 */ // Label 4277: @192775 |
| 68240 | /* 192775 */ GIM_Try, /*On fail goto*//*Label 4278*/ GIMT_Encode4(192798), // Rule ID 5614 // |
| 68241 | /* 192780 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68242 | /* 192783 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68243 | /* 192787 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68244 | /* 192791 */ // (umin:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMINUWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 68245 | /* 192791 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUWZrr), |
| 68246 | /* 192796 */ GIR_RootConstrainSelectedInstOperands, |
| 68247 | /* 192797 */ // GIR_Coverage, 5614, |
| 68248 | /* 192797 */ GIR_Done, |
| 68249 | /* 192798 */ // Label 4278: @192798 |
| 68250 | /* 192798 */ GIM_Reject, |
| 68251 | /* 192799 */ // Label 4275: @192799 |
| 68252 | /* 192799 */ GIM_Reject, |
| 68253 | /* 192800 */ // Label 4210: @192800 |
| 68254 | /* 192800 */ GIM_Try, /*On fail goto*//*Label 4279*/ GIMT_Encode4(192955), |
| 68255 | /* 192805 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 68256 | /* 192808 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 68257 | /* 192811 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68258 | /* 192815 */ GIM_Try, /*On fail goto*//*Label 4280*/ GIMT_Encode4(192873), // Rule ID 24083 // |
| 68259 | /* 192820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68260 | /* 192823 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68261 | /* 192827 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68262 | /* 192831 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68263 | /* 192834 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68264 | /* 192838 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68265 | /* 192842 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68266 | /* 192846 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68267 | /* 192848 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68268 | /* 192855 */ // (umin:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPMINUBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68269 | /* 192855 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZrm), |
| 68270 | /* 192858 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68271 | /* 192860 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68272 | /* 192862 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68273 | /* 192866 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68274 | /* 192871 */ GIR_RootConstrainSelectedInstOperands, |
| 68275 | /* 192872 */ // GIR_Coverage, 24083, |
| 68276 | /* 192872 */ GIR_EraseRootFromParent_Done, |
| 68277 | /* 192873 */ // Label 4280: @192873 |
| 68278 | /* 192873 */ GIM_Try, /*On fail goto*//*Label 4281*/ GIMT_Encode4(192931), // Rule ID 5599 // |
| 68279 | /* 192878 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68280 | /* 192881 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68281 | /* 192885 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68282 | /* 192889 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68283 | /* 192893 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68284 | /* 192896 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68285 | /* 192900 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68286 | /* 192904 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68287 | /* 192906 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68288 | /* 192913 */ // (umin:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68289 | /* 192913 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZrm), |
| 68290 | /* 192916 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68291 | /* 192918 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68292 | /* 192920 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68293 | /* 192924 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68294 | /* 192929 */ GIR_RootConstrainSelectedInstOperands, |
| 68295 | /* 192930 */ // GIR_Coverage, 5599, |
| 68296 | /* 192930 */ GIR_EraseRootFromParent_Done, |
| 68297 | /* 192931 */ // Label 4281: @192931 |
| 68298 | /* 192931 */ GIM_Try, /*On fail goto*//*Label 4282*/ GIMT_Encode4(192954), // Rule ID 5596 // |
| 68299 | /* 192936 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68300 | /* 192939 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68301 | /* 192943 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68302 | /* 192947 */ // (umin:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPMINUBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 68303 | /* 192947 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUBZrr), |
| 68304 | /* 192952 */ GIR_RootConstrainSelectedInstOperands, |
| 68305 | /* 192953 */ // GIR_Coverage, 5596, |
| 68306 | /* 192953 */ GIR_Done, |
| 68307 | /* 192954 */ // Label 4282: @192954 |
| 68308 | /* 192954 */ GIM_Reject, |
| 68309 | /* 192955 */ // Label 4279: @192955 |
| 68310 | /* 192955 */ GIM_Reject, |
| 68311 | /* 192956 */ // Label 4211: @192956 |
| 68312 | /* 192956 */ GIM_Reject, |
| 68313 | /* 192957 */ // Label 57: @192957 |
| 68314 | /* 192957 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4295*/ GIMT_Encode4(196277), |
| 68315 | /* 192968 */ /*GILLT_v2s64*//*Label 4283*/ GIMT_Encode4(193036), GIMT_Encode4(0), |
| 68316 | /* 192976 */ /*GILLT_v4s32*//*Label 4284*/ GIMT_Encode4(193365), |
| 68317 | /* 192980 */ /*GILLT_v4s64*//*Label 4285*/ GIMT_Encode4(193707), GIMT_Encode4(0), |
| 68318 | /* 192988 */ /*GILLT_v8s16*//*Label 4286*/ GIMT_Encode4(194024), |
| 68319 | /* 192992 */ /*GILLT_v8s32*//*Label 4287*/ GIMT_Encode4(194366), |
| 68320 | /* 192996 */ /*GILLT_v8s64*//*Label 4288*/ GIMT_Encode4(194681), GIMT_Encode4(0), |
| 68321 | /* 193004 */ /*GILLT_v16s8*//*Label 4289*/ GIMT_Encode4(194837), |
| 68322 | /* 193008 */ /*GILLT_v16s16*//*Label 4290*/ GIMT_Encode4(195179), |
| 68323 | /* 193012 */ /*GILLT_v16s32*//*Label 4291*/ GIMT_Encode4(195494), GIMT_Encode4(0), |
| 68324 | /* 193020 */ /*GILLT_v32s8*//*Label 4292*/ GIMT_Encode4(195650), |
| 68325 | /* 193024 */ /*GILLT_v32s16*//*Label 4293*/ GIMT_Encode4(195965), GIMT_Encode4(0), |
| 68326 | /* 193032 */ /*GILLT_v64s8*//*Label 4294*/ GIMT_Encode4(196121), |
| 68327 | /* 193036 */ // Label 4283: @193036 |
| 68328 | /* 193036 */ GIM_Try, /*On fail goto*//*Label 4296*/ GIMT_Encode4(193364), |
| 68329 | /* 193041 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 68330 | /* 193044 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 68331 | /* 193047 */ GIM_Try, /*On fail goto*//*Label 4297*/ GIMT_Encode4(193109), // Rule ID 24023 // |
| 68332 | /* 193052 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68333 | /* 193055 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68334 | /* 193059 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68335 | /* 193063 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68336 | /* 193067 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68337 | /* 193070 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68338 | /* 193074 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68339 | /* 193078 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68340 | /* 193082 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68341 | /* 193084 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68342 | /* 193091 */ // (umax:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPMAXUQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68343 | /* 193091 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ128rm), |
| 68344 | /* 193094 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68345 | /* 193096 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68346 | /* 193098 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68347 | /* 193102 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68348 | /* 193107 */ GIR_RootConstrainSelectedInstOperands, |
| 68349 | /* 193108 */ // GIR_Coverage, 24023, |
| 68350 | /* 193108 */ GIR_EraseRootFromParent_Done, |
| 68351 | /* 193109 */ // Label 4297: @193109 |
| 68352 | /* 193109 */ GIM_Try, /*On fail goto*//*Label 4298*/ GIMT_Encode4(193171), // Rule ID 5500 // |
| 68353 | /* 193114 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68354 | /* 193117 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68355 | /* 193121 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68356 | /* 193125 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68357 | /* 193129 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68358 | /* 193133 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68359 | /* 193136 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68360 | /* 193140 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68361 | /* 193144 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68362 | /* 193146 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68363 | /* 193153 */ // (umax:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68364 | /* 193153 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ128rm), |
| 68365 | /* 193156 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68366 | /* 193158 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68367 | /* 193160 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68368 | /* 193164 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68369 | /* 193169 */ GIR_RootConstrainSelectedInstOperands, |
| 68370 | /* 193170 */ // GIR_Coverage, 5500, |
| 68371 | /* 193170 */ GIR_EraseRootFromParent_Done, |
| 68372 | /* 193171 */ // Label 4298: @193171 |
| 68373 | /* 193171 */ GIM_Try, /*On fail goto*//*Label 4299*/ GIMT_Encode4(193198), // Rule ID 5497 // |
| 68374 | /* 193176 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68375 | /* 193179 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68376 | /* 193183 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68377 | /* 193187 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68378 | /* 193191 */ // (umax:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPMAXUQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 68379 | /* 193191 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ128rr), |
| 68380 | /* 193196 */ GIR_RootConstrainSelectedInstOperands, |
| 68381 | /* 193197 */ // GIR_Coverage, 5497, |
| 68382 | /* 193197 */ GIR_Done, |
| 68383 | /* 193198 */ // Label 4299: @193198 |
| 68384 | /* 193198 */ GIM_Try, /*On fail goto*//*Label 4300*/ GIMT_Encode4(193363), // Rule ID 20002 // |
| 68385 | /* 193203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 68386 | /* 193206 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 68387 | /* 193210 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68388 | /* 193214 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68389 | /* 193218 */ // (umax:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPMAXUQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 68390 | /* 193218 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 68391 | /* 193221 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 68392 | /* 193225 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 68393 | /* 193230 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 68394 | /* 193232 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 68395 | /* 193235 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 68396 | /* 193239 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 68397 | /* 193244 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 68398 | /* 193247 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 68399 | /* 193251 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/11, |
| 68400 | /* 193254 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 68401 | /* 193259 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 68402 | /* 193264 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 68403 | /* 193269 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 68404 | /* 193272 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 68405 | /* 193276 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 68406 | /* 193281 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 68407 | /* 193283 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 68408 | /* 193286 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 68409 | /* 193290 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 68410 | /* 193295 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 68411 | /* 193298 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 68412 | /* 193302 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 68413 | /* 193305 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 68414 | /* 193310 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 68415 | /* 193315 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 68416 | /* 193320 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 68417 | /* 193323 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZrr), |
| 68418 | /* 193327 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 68419 | /* 193332 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 68420 | /* 193335 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 68421 | /* 193338 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 68422 | /* 193340 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 68423 | /* 193343 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68424 | /* 193345 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 68425 | /* 193352 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 68426 | /* 193357 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 68427 | /* 193362 */ // GIR_Coverage, 20002, |
| 68428 | /* 193362 */ GIR_EraseRootFromParent_Done, |
| 68429 | /* 193363 */ // Label 4300: @193363 |
| 68430 | /* 193363 */ GIM_Reject, |
| 68431 | /* 193364 */ // Label 4296: @193364 |
| 68432 | /* 193364 */ GIM_Reject, |
| 68433 | /* 193365 */ // Label 4284: @193365 |
| 68434 | /* 193365 */ GIM_Try, /*On fail goto*//*Label 4301*/ GIMT_Encode4(193706), |
| 68435 | /* 193370 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 68436 | /* 193373 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 68437 | /* 193376 */ GIM_Try, /*On fail goto*//*Label 4302*/ GIMT_Encode4(193438), // Rule ID 23504 // |
| 68438 | /* 193381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 68439 | /* 193384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68440 | /* 193388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68441 | /* 193392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68442 | /* 193396 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68443 | /* 193399 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68444 | /* 193403 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68445 | /* 193407 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68446 | /* 193411 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68447 | /* 193413 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68448 | /* 193420 */ // (umax:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPMAXUDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68449 | /* 193420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDrm), |
| 68450 | /* 193423 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68451 | /* 193425 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68452 | /* 193427 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68453 | /* 193431 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68454 | /* 193436 */ GIR_RootConstrainSelectedInstOperands, |
| 68455 | /* 193437 */ // GIR_Coverage, 23504, |
| 68456 | /* 193437 */ GIR_EraseRootFromParent_Done, |
| 68457 | /* 193438 */ // Label 4302: @193438 |
| 68458 | /* 193438 */ GIM_Try, /*On fail goto*//*Label 4303*/ GIMT_Encode4(193500), // Rule ID 24005 // |
| 68459 | /* 193443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68460 | /* 193446 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68461 | /* 193450 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68462 | /* 193454 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68463 | /* 193458 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68464 | /* 193461 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68465 | /* 193465 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68466 | /* 193469 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68467 | /* 193473 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68468 | /* 193475 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68469 | /* 193482 */ // (umax:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPMAXUDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68470 | /* 193482 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ128rm), |
| 68471 | /* 193485 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68472 | /* 193487 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68473 | /* 193489 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68474 | /* 193493 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68475 | /* 193498 */ GIR_RootConstrainSelectedInstOperands, |
| 68476 | /* 193499 */ // GIR_Coverage, 24005, |
| 68477 | /* 193499 */ GIR_EraseRootFromParent_Done, |
| 68478 | /* 193500 */ // Label 4303: @193500 |
| 68479 | /* 193500 */ GIM_Try, /*On fail goto*//*Label 4304*/ GIMT_Encode4(193562), // Rule ID 3192 // |
| 68480 | /* 193505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 68481 | /* 193508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68482 | /* 193512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68483 | /* 193516 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68484 | /* 193520 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68485 | /* 193524 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68486 | /* 193527 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68487 | /* 193531 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68488 | /* 193535 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68489 | /* 193537 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68490 | /* 193544 */ // (umax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68491 | /* 193544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDrm), |
| 68492 | /* 193547 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68493 | /* 193549 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68494 | /* 193551 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68495 | /* 193555 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68496 | /* 193560 */ GIR_RootConstrainSelectedInstOperands, |
| 68497 | /* 193561 */ // GIR_Coverage, 3192, |
| 68498 | /* 193561 */ GIR_EraseRootFromParent_Done, |
| 68499 | /* 193562 */ // Label 4304: @193562 |
| 68500 | /* 193562 */ GIM_Try, /*On fail goto*//*Label 4305*/ GIMT_Encode4(193624), // Rule ID 5473 // |
| 68501 | /* 193567 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68502 | /* 193570 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68503 | /* 193574 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68504 | /* 193578 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68505 | /* 193582 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68506 | /* 193586 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68507 | /* 193589 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68508 | /* 193593 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68509 | /* 193597 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68510 | /* 193599 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68511 | /* 193606 */ // (umax:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68512 | /* 193606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ128rm), |
| 68513 | /* 193609 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68514 | /* 193611 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68515 | /* 193613 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68516 | /* 193617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68517 | /* 193622 */ GIR_RootConstrainSelectedInstOperands, |
| 68518 | /* 193623 */ // GIR_Coverage, 5473, |
| 68519 | /* 193623 */ GIR_EraseRootFromParent_Done, |
| 68520 | /* 193624 */ // Label 4305: @193624 |
| 68521 | /* 193624 */ GIM_Try, /*On fail goto*//*Label 4306*/ GIMT_Encode4(193651), // Rule ID 3191 // |
| 68522 | /* 193629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 68523 | /* 193632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68524 | /* 193636 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68525 | /* 193640 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68526 | /* 193644 */ // (umax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMAXUDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 68527 | /* 193644 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUDrr), |
| 68528 | /* 193649 */ GIR_RootConstrainSelectedInstOperands, |
| 68529 | /* 193650 */ // GIR_Coverage, 3191, |
| 68530 | /* 193650 */ GIR_Done, |
| 68531 | /* 193651 */ // Label 4306: @193651 |
| 68532 | /* 193651 */ GIM_Try, /*On fail goto*//*Label 4307*/ GIMT_Encode4(193678), // Rule ID 3233 // |
| 68533 | /* 193656 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 68534 | /* 193659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68535 | /* 193663 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68536 | /* 193667 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68537 | /* 193671 */ // (umax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PMAXUDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 68538 | /* 193671 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXUDrr), |
| 68539 | /* 193676 */ GIR_RootConstrainSelectedInstOperands, |
| 68540 | /* 193677 */ // GIR_Coverage, 3233, |
| 68541 | /* 193677 */ GIR_Done, |
| 68542 | /* 193678 */ // Label 4307: @193678 |
| 68543 | /* 193678 */ GIM_Try, /*On fail goto*//*Label 4308*/ GIMT_Encode4(193705), // Rule ID 5470 // |
| 68544 | /* 193683 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68545 | /* 193686 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68546 | /* 193690 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68547 | /* 193694 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68548 | /* 193698 */ // (umax:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPMAXUDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 68549 | /* 193698 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ128rr), |
| 68550 | /* 193703 */ GIR_RootConstrainSelectedInstOperands, |
| 68551 | /* 193704 */ // GIR_Coverage, 5470, |
| 68552 | /* 193704 */ GIR_Done, |
| 68553 | /* 193705 */ // Label 4308: @193705 |
| 68554 | /* 193705 */ GIM_Reject, |
| 68555 | /* 193706 */ // Label 4301: @193706 |
| 68556 | /* 193706 */ GIM_Reject, |
| 68557 | /* 193707 */ // Label 4285: @193707 |
| 68558 | /* 193707 */ GIM_Try, /*On fail goto*//*Label 4309*/ GIMT_Encode4(194023), |
| 68559 | /* 193712 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 68560 | /* 193715 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 68561 | /* 193718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68562 | /* 193722 */ GIM_Try, /*On fail goto*//*Label 4310*/ GIMT_Encode4(193780), // Rule ID 24017 // |
| 68563 | /* 193727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68564 | /* 193730 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68565 | /* 193734 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68566 | /* 193738 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68567 | /* 193741 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68568 | /* 193745 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68569 | /* 193749 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68570 | /* 193753 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68571 | /* 193755 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68572 | /* 193762 */ // (umax:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPMAXUQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68573 | /* 193762 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ256rm), |
| 68574 | /* 193765 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68575 | /* 193767 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68576 | /* 193769 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68577 | /* 193773 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68578 | /* 193778 */ GIR_RootConstrainSelectedInstOperands, |
| 68579 | /* 193779 */ // GIR_Coverage, 24017, |
| 68580 | /* 193779 */ GIR_EraseRootFromParent_Done, |
| 68581 | /* 193780 */ // Label 4310: @193780 |
| 68582 | /* 193780 */ GIM_Try, /*On fail goto*//*Label 4311*/ GIMT_Encode4(193838), // Rule ID 5491 // |
| 68583 | /* 193785 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68584 | /* 193788 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68585 | /* 193792 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68586 | /* 193796 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68587 | /* 193800 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68588 | /* 193803 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68589 | /* 193807 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68590 | /* 193811 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68591 | /* 193813 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68592 | /* 193820 */ // (umax:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68593 | /* 193820 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ256rm), |
| 68594 | /* 193823 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68595 | /* 193825 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68596 | /* 193827 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68597 | /* 193831 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68598 | /* 193836 */ GIR_RootConstrainSelectedInstOperands, |
| 68599 | /* 193837 */ // GIR_Coverage, 5491, |
| 68600 | /* 193837 */ GIR_EraseRootFromParent_Done, |
| 68601 | /* 193838 */ // Label 4311: @193838 |
| 68602 | /* 193838 */ GIM_Try, /*On fail goto*//*Label 4312*/ GIMT_Encode4(193861), // Rule ID 5488 // |
| 68603 | /* 193843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68604 | /* 193846 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68605 | /* 193850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68606 | /* 193854 */ // (umax:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPMAXUQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 68607 | /* 193854 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ256rr), |
| 68608 | /* 193859 */ GIR_RootConstrainSelectedInstOperands, |
| 68609 | /* 193860 */ // GIR_Coverage, 5488, |
| 68610 | /* 193860 */ GIR_Done, |
| 68611 | /* 193861 */ // Label 4312: @193861 |
| 68612 | /* 193861 */ GIM_Try, /*On fail goto*//*Label 4313*/ GIMT_Encode4(194022), // Rule ID 20000 // |
| 68613 | /* 193866 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 68614 | /* 193869 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68615 | /* 193873 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68616 | /* 193877 */ // (umax:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPMAXUQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 68617 | /* 193877 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 68618 | /* 193880 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 68619 | /* 193884 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 68620 | /* 193889 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 68621 | /* 193891 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 68622 | /* 193894 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 68623 | /* 193898 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 68624 | /* 193903 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 68625 | /* 193906 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 68626 | /* 193910 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/12, |
| 68627 | /* 193913 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 68628 | /* 193918 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 68629 | /* 193923 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 68630 | /* 193928 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 68631 | /* 193931 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 68632 | /* 193935 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 68633 | /* 193940 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 68634 | /* 193942 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 68635 | /* 193945 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 68636 | /* 193949 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 68637 | /* 193954 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 68638 | /* 193957 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 68639 | /* 193961 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 68640 | /* 193964 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 68641 | /* 193969 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 68642 | /* 193974 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 68643 | /* 193979 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 68644 | /* 193982 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZrr), |
| 68645 | /* 193986 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 68646 | /* 193991 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 68647 | /* 193994 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 68648 | /* 193997 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 68649 | /* 193999 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 68650 | /* 194002 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68651 | /* 194004 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 68652 | /* 194011 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 68653 | /* 194016 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 68654 | /* 194021 */ // GIR_Coverage, 20000, |
| 68655 | /* 194021 */ GIR_EraseRootFromParent_Done, |
| 68656 | /* 194022 */ // Label 4313: @194022 |
| 68657 | /* 194022 */ GIM_Reject, |
| 68658 | /* 194023 */ // Label 4309: @194023 |
| 68659 | /* 194023 */ GIM_Reject, |
| 68660 | /* 194024 */ // Label 4286: @194024 |
| 68661 | /* 194024 */ GIM_Try, /*On fail goto*//*Label 4314*/ GIMT_Encode4(194365), |
| 68662 | /* 194029 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 68663 | /* 194032 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 68664 | /* 194035 */ GIM_Try, /*On fail goto*//*Label 4315*/ GIMT_Encode4(194097), // Rule ID 23509 // |
| 68665 | /* 194040 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 68666 | /* 194043 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68667 | /* 194047 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68668 | /* 194051 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68669 | /* 194055 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68670 | /* 194058 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68671 | /* 194062 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68672 | /* 194066 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68673 | /* 194070 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68674 | /* 194072 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68675 | /* 194079 */ // (umax:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMAXUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68676 | /* 194079 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWrm), |
| 68677 | /* 194082 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68678 | /* 194084 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68679 | /* 194086 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68680 | /* 194090 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68681 | /* 194095 */ GIR_RootConstrainSelectedInstOperands, |
| 68682 | /* 194096 */ // GIR_Coverage, 23509, |
| 68683 | /* 194096 */ GIR_EraseRootFromParent_Done, |
| 68684 | /* 194097 */ // Label 4315: @194097 |
| 68685 | /* 194097 */ GIM_Try, /*On fail goto*//*Label 4316*/ GIMT_Encode4(194159), // Rule ID 23990 // |
| 68686 | /* 194102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68687 | /* 194105 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68688 | /* 194109 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68689 | /* 194113 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68690 | /* 194117 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68691 | /* 194120 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68692 | /* 194124 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68693 | /* 194128 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68694 | /* 194132 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68695 | /* 194134 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68696 | /* 194141 */ // (umax:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMAXUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68697 | /* 194141 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ128rm), |
| 68698 | /* 194144 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68699 | /* 194146 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68700 | /* 194148 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68701 | /* 194152 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68702 | /* 194157 */ GIR_RootConstrainSelectedInstOperands, |
| 68703 | /* 194158 */ // GIR_Coverage, 23990, |
| 68704 | /* 194158 */ GIR_EraseRootFromParent_Done, |
| 68705 | /* 194159 */ // Label 4316: @194159 |
| 68706 | /* 194159 */ GIM_Try, /*On fail goto*//*Label 4317*/ GIMT_Encode4(194221), // Rule ID 3202 // |
| 68707 | /* 194164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 68708 | /* 194167 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68709 | /* 194171 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68710 | /* 194175 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68711 | /* 194179 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68712 | /* 194183 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68713 | /* 194186 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68714 | /* 194190 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68715 | /* 194194 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68716 | /* 194196 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68717 | /* 194203 */ // (umax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68718 | /* 194203 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWrm), |
| 68719 | /* 194206 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68720 | /* 194208 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68721 | /* 194210 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68722 | /* 194214 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68723 | /* 194219 */ GIR_RootConstrainSelectedInstOperands, |
| 68724 | /* 194220 */ // GIR_Coverage, 3202, |
| 68725 | /* 194220 */ GIR_EraseRootFromParent_Done, |
| 68726 | /* 194221 */ // Label 4317: @194221 |
| 68727 | /* 194221 */ GIM_Try, /*On fail goto*//*Label 4318*/ GIMT_Encode4(194283), // Rule ID 5449 // |
| 68728 | /* 194226 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68729 | /* 194229 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68730 | /* 194233 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68731 | /* 194237 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68732 | /* 194241 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68733 | /* 194245 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68734 | /* 194248 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68735 | /* 194252 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68736 | /* 194256 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68737 | /* 194258 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68738 | /* 194265 */ // (umax:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68739 | /* 194265 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ128rm), |
| 68740 | /* 194268 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68741 | /* 194270 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68742 | /* 194272 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68743 | /* 194276 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68744 | /* 194281 */ GIR_RootConstrainSelectedInstOperands, |
| 68745 | /* 194282 */ // GIR_Coverage, 5449, |
| 68746 | /* 194282 */ GIR_EraseRootFromParent_Done, |
| 68747 | /* 194283 */ // Label 4318: @194283 |
| 68748 | /* 194283 */ GIM_Try, /*On fail goto*//*Label 4319*/ GIMT_Encode4(194310), // Rule ID 3201 // |
| 68749 | /* 194288 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 68750 | /* 194291 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68751 | /* 194295 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68752 | /* 194299 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68753 | /* 194303 */ // (umax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMAXUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 68754 | /* 194303 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUWrr), |
| 68755 | /* 194308 */ GIR_RootConstrainSelectedInstOperands, |
| 68756 | /* 194309 */ // GIR_Coverage, 3201, |
| 68757 | /* 194309 */ GIR_Done, |
| 68758 | /* 194310 */ // Label 4319: @194310 |
| 68759 | /* 194310 */ GIM_Try, /*On fail goto*//*Label 4320*/ GIMT_Encode4(194337), // Rule ID 3235 // |
| 68760 | /* 194315 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 68761 | /* 194318 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68762 | /* 194322 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68763 | /* 194326 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68764 | /* 194330 */ // (umax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMAXUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 68765 | /* 194330 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXUWrr), |
| 68766 | /* 194335 */ GIR_RootConstrainSelectedInstOperands, |
| 68767 | /* 194336 */ // GIR_Coverage, 3235, |
| 68768 | /* 194336 */ GIR_Done, |
| 68769 | /* 194337 */ // Label 4320: @194337 |
| 68770 | /* 194337 */ GIM_Try, /*On fail goto*//*Label 4321*/ GIMT_Encode4(194364), // Rule ID 5446 // |
| 68771 | /* 194342 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68772 | /* 194345 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68773 | /* 194349 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68774 | /* 194353 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68775 | /* 194357 */ // (umax:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMAXUWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 68776 | /* 194357 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ128rr), |
| 68777 | /* 194362 */ GIR_RootConstrainSelectedInstOperands, |
| 68778 | /* 194363 */ // GIR_Coverage, 5446, |
| 68779 | /* 194363 */ GIR_Done, |
| 68780 | /* 194364 */ // Label 4321: @194364 |
| 68781 | /* 194364 */ GIM_Reject, |
| 68782 | /* 194365 */ // Label 4314: @194365 |
| 68783 | /* 194365 */ GIM_Reject, |
| 68784 | /* 194366 */ // Label 4287: @194366 |
| 68785 | /* 194366 */ GIM_Try, /*On fail goto*//*Label 4322*/ GIMT_Encode4(194680), |
| 68786 | /* 194371 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 68787 | /* 194374 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 68788 | /* 194377 */ GIM_Try, /*On fail goto*//*Label 4323*/ GIMT_Encode4(194439), // Rule ID 23513 // |
| 68789 | /* 194382 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 68790 | /* 194385 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68791 | /* 194389 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68792 | /* 194393 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68793 | /* 194397 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68794 | /* 194400 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68795 | /* 194404 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68796 | /* 194408 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68797 | /* 194412 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68798 | /* 194414 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68799 | /* 194421 */ // (umax:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPMAXUDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68800 | /* 194421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDYrm), |
| 68801 | /* 194424 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68802 | /* 194426 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68803 | /* 194428 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68804 | /* 194432 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68805 | /* 194437 */ GIR_RootConstrainSelectedInstOperands, |
| 68806 | /* 194438 */ // GIR_Coverage, 23513, |
| 68807 | /* 194438 */ GIR_EraseRootFromParent_Done, |
| 68808 | /* 194439 */ // Label 4323: @194439 |
| 68809 | /* 194439 */ GIM_Try, /*On fail goto*//*Label 4324*/ GIMT_Encode4(194501), // Rule ID 23999 // |
| 68810 | /* 194444 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68811 | /* 194447 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68812 | /* 194451 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68813 | /* 194455 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68814 | /* 194459 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68815 | /* 194462 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68816 | /* 194466 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68817 | /* 194470 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68818 | /* 194474 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68819 | /* 194476 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68820 | /* 194483 */ // (umax:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPMAXUDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68821 | /* 194483 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ256rm), |
| 68822 | /* 194486 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68823 | /* 194488 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68824 | /* 194490 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68825 | /* 194494 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68826 | /* 194499 */ GIR_RootConstrainSelectedInstOperands, |
| 68827 | /* 194500 */ // GIR_Coverage, 23999, |
| 68828 | /* 194500 */ GIR_EraseRootFromParent_Done, |
| 68829 | /* 194501 */ // Label 4324: @194501 |
| 68830 | /* 194501 */ GIM_Try, /*On fail goto*//*Label 4325*/ GIMT_Encode4(194563), // Rule ID 3210 // |
| 68831 | /* 194506 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 68832 | /* 194509 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68833 | /* 194513 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68834 | /* 194517 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68835 | /* 194521 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68836 | /* 194525 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68837 | /* 194528 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68838 | /* 194532 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68839 | /* 194536 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68840 | /* 194538 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68841 | /* 194545 */ // (umax:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68842 | /* 194545 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDYrm), |
| 68843 | /* 194548 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68844 | /* 194550 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68845 | /* 194552 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68846 | /* 194556 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68847 | /* 194561 */ GIR_RootConstrainSelectedInstOperands, |
| 68848 | /* 194562 */ // GIR_Coverage, 3210, |
| 68849 | /* 194562 */ GIR_EraseRootFromParent_Done, |
| 68850 | /* 194563 */ // Label 4325: @194563 |
| 68851 | /* 194563 */ GIM_Try, /*On fail goto*//*Label 4326*/ GIMT_Encode4(194625), // Rule ID 5464 // |
| 68852 | /* 194568 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68853 | /* 194571 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68854 | /* 194575 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68855 | /* 194579 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68856 | /* 194583 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68857 | /* 194587 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68858 | /* 194590 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68859 | /* 194594 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68860 | /* 194598 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68861 | /* 194600 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68862 | /* 194607 */ // (umax:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68863 | /* 194607 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ256rm), |
| 68864 | /* 194610 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68865 | /* 194612 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68866 | /* 194614 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68867 | /* 194618 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68868 | /* 194623 */ GIR_RootConstrainSelectedInstOperands, |
| 68869 | /* 194624 */ // GIR_Coverage, 5464, |
| 68870 | /* 194624 */ GIR_EraseRootFromParent_Done, |
| 68871 | /* 194625 */ // Label 4326: @194625 |
| 68872 | /* 194625 */ GIM_Try, /*On fail goto*//*Label 4327*/ GIMT_Encode4(194652), // Rule ID 3209 // |
| 68873 | /* 194630 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 68874 | /* 194633 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68875 | /* 194637 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68876 | /* 194641 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68877 | /* 194645 */ // (umax:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMAXUDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 68878 | /* 194645 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUDYrr), |
| 68879 | /* 194650 */ GIR_RootConstrainSelectedInstOperands, |
| 68880 | /* 194651 */ // GIR_Coverage, 3209, |
| 68881 | /* 194651 */ GIR_Done, |
| 68882 | /* 194652 */ // Label 4327: @194652 |
| 68883 | /* 194652 */ GIM_Try, /*On fail goto*//*Label 4328*/ GIMT_Encode4(194679), // Rule ID 5461 // |
| 68884 | /* 194657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68885 | /* 194660 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68886 | /* 194664 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68887 | /* 194668 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68888 | /* 194672 */ // (umax:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPMAXUDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 68889 | /* 194672 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ256rr), |
| 68890 | /* 194677 */ GIR_RootConstrainSelectedInstOperands, |
| 68891 | /* 194678 */ // GIR_Coverage, 5461, |
| 68892 | /* 194678 */ GIR_Done, |
| 68893 | /* 194679 */ // Label 4328: @194679 |
| 68894 | /* 194679 */ GIM_Reject, |
| 68895 | /* 194680 */ // Label 4322: @194680 |
| 68896 | /* 194680 */ GIM_Reject, |
| 68897 | /* 194681 */ // Label 4288: @194681 |
| 68898 | /* 194681 */ GIM_Try, /*On fail goto*//*Label 4329*/ GIMT_Encode4(194836), |
| 68899 | /* 194686 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 68900 | /* 194689 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 68901 | /* 194692 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68902 | /* 194696 */ GIM_Try, /*On fail goto*//*Label 4330*/ GIMT_Encode4(194754), // Rule ID 24011 // |
| 68903 | /* 194701 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68904 | /* 194704 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68905 | /* 194708 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68906 | /* 194712 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68907 | /* 194715 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68908 | /* 194719 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68909 | /* 194723 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68910 | /* 194727 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68911 | /* 194729 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68912 | /* 194736 */ // (umax:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPMAXUQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68913 | /* 194736 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZrm), |
| 68914 | /* 194739 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68915 | /* 194741 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68916 | /* 194743 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68917 | /* 194747 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68918 | /* 194752 */ GIR_RootConstrainSelectedInstOperands, |
| 68919 | /* 194753 */ // GIR_Coverage, 24011, |
| 68920 | /* 194753 */ GIR_EraseRootFromParent_Done, |
| 68921 | /* 194754 */ // Label 4330: @194754 |
| 68922 | /* 194754 */ GIM_Try, /*On fail goto*//*Label 4331*/ GIMT_Encode4(194812), // Rule ID 5482 // |
| 68923 | /* 194759 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68924 | /* 194762 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68925 | /* 194766 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68926 | /* 194770 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68927 | /* 194774 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68928 | /* 194777 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68929 | /* 194781 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68930 | /* 194785 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68931 | /* 194787 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68932 | /* 194794 */ // (umax:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68933 | /* 194794 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZrm), |
| 68934 | /* 194797 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68935 | /* 194799 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68936 | /* 194801 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68937 | /* 194805 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68938 | /* 194810 */ GIR_RootConstrainSelectedInstOperands, |
| 68939 | /* 194811 */ // GIR_Coverage, 5482, |
| 68940 | /* 194811 */ GIR_EraseRootFromParent_Done, |
| 68941 | /* 194812 */ // Label 4331: @194812 |
| 68942 | /* 194812 */ GIM_Try, /*On fail goto*//*Label 4332*/ GIMT_Encode4(194835), // Rule ID 5479 // |
| 68943 | /* 194817 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68944 | /* 194820 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68945 | /* 194824 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68946 | /* 194828 */ // (umax:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPMAXUQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 68947 | /* 194828 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZrr), |
| 68948 | /* 194833 */ GIR_RootConstrainSelectedInstOperands, |
| 68949 | /* 194834 */ // GIR_Coverage, 5479, |
| 68950 | /* 194834 */ GIR_Done, |
| 68951 | /* 194835 */ // Label 4332: @194835 |
| 68952 | /* 194835 */ GIM_Reject, |
| 68953 | /* 194836 */ // Label 4329: @194836 |
| 68954 | /* 194836 */ GIM_Reject, |
| 68955 | /* 194837 */ // Label 4289: @194837 |
| 68956 | /* 194837 */ GIM_Try, /*On fail goto*//*Label 4333*/ GIMT_Encode4(195178), |
| 68957 | /* 194842 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 68958 | /* 194845 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 68959 | /* 194848 */ GIM_Try, /*On fail goto*//*Label 4334*/ GIMT_Encode4(194910), // Rule ID 23468 // |
| 68960 | /* 194853 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 68961 | /* 194856 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68962 | /* 194860 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68963 | /* 194864 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68964 | /* 194868 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68965 | /* 194871 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68966 | /* 194875 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68967 | /* 194879 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68968 | /* 194883 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68969 | /* 194885 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68970 | /* 194892 */ // (umax:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPMAXUBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68971 | /* 194892 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBrm), |
| 68972 | /* 194895 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68973 | /* 194897 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68974 | /* 194899 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68975 | /* 194903 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68976 | /* 194908 */ GIR_RootConstrainSelectedInstOperands, |
| 68977 | /* 194909 */ // GIR_Coverage, 23468, |
| 68978 | /* 194909 */ GIR_EraseRootFromParent_Done, |
| 68979 | /* 194910 */ // Label 4334: @194910 |
| 68980 | /* 194910 */ GIM_Try, /*On fail goto*//*Label 4335*/ GIMT_Encode4(194972), // Rule ID 23981 // |
| 68981 | /* 194915 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68982 | /* 194918 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68983 | /* 194922 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68984 | /* 194926 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68985 | /* 194930 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68986 | /* 194933 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68987 | /* 194937 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68988 | /* 194941 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68989 | /* 194945 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68990 | /* 194947 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68991 | /* 194954 */ // (umax:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPMAXUBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68992 | /* 194954 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ128rm), |
| 68993 | /* 194957 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68994 | /* 194959 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68995 | /* 194961 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68996 | /* 194965 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68997 | /* 194970 */ GIR_RootConstrainSelectedInstOperands, |
| 68998 | /* 194971 */ // GIR_Coverage, 23981, |
| 68999 | /* 194971 */ GIR_EraseRootFromParent_Done, |
| 69000 | /* 194972 */ // Label 4335: @194972 |
| 69001 | /* 194972 */ GIM_Try, /*On fail goto*//*Label 4336*/ GIMT_Encode4(195034), // Rule ID 2649 // |
| 69002 | /* 194977 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 69003 | /* 194980 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69004 | /* 194984 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69005 | /* 194988 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 69006 | /* 194992 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69007 | /* 194996 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69008 | /* 194999 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69009 | /* 195003 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69010 | /* 195007 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69011 | /* 195009 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69012 | /* 195016 */ // (umax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69013 | /* 195016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBrm), |
| 69014 | /* 195019 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69015 | /* 195021 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 69016 | /* 195023 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69017 | /* 195027 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69018 | /* 195032 */ GIR_RootConstrainSelectedInstOperands, |
| 69019 | /* 195033 */ // GIR_Coverage, 2649, |
| 69020 | /* 195033 */ GIR_EraseRootFromParent_Done, |
| 69021 | /* 195034 */ // Label 4336: @195034 |
| 69022 | /* 195034 */ GIM_Try, /*On fail goto*//*Label 4337*/ GIMT_Encode4(195096), // Rule ID 5431 // |
| 69023 | /* 195039 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69024 | /* 195042 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69025 | /* 195046 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69026 | /* 195050 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 69027 | /* 195054 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69028 | /* 195058 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69029 | /* 195061 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69030 | /* 195065 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69031 | /* 195069 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69032 | /* 195071 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69033 | /* 195078 */ // (umax:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69034 | /* 195078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ128rm), |
| 69035 | /* 195081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69036 | /* 195083 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 69037 | /* 195085 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69038 | /* 195089 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69039 | /* 195094 */ GIR_RootConstrainSelectedInstOperands, |
| 69040 | /* 195095 */ // GIR_Coverage, 5431, |
| 69041 | /* 195095 */ GIR_EraseRootFromParent_Done, |
| 69042 | /* 195096 */ // Label 4337: @195096 |
| 69043 | /* 195096 */ GIM_Try, /*On fail goto*//*Label 4338*/ GIMT_Encode4(195123), // Rule ID 2648 // |
| 69044 | /* 195101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 69045 | /* 195104 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69046 | /* 195108 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69047 | /* 195112 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69048 | /* 195116 */ // (umax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPMAXUBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 69049 | /* 195116 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUBrr), |
| 69050 | /* 195121 */ GIR_RootConstrainSelectedInstOperands, |
| 69051 | /* 195122 */ // GIR_Coverage, 2648, |
| 69052 | /* 195122 */ GIR_Done, |
| 69053 | /* 195123 */ // Label 4338: @195123 |
| 69054 | /* 195123 */ GIM_Try, /*On fail goto*//*Label 4339*/ GIMT_Encode4(195150), // Rule ID 2650 // |
| 69055 | /* 195128 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 69056 | /* 195131 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69057 | /* 195135 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69058 | /* 195139 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69059 | /* 195143 */ // (umax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PMAXUBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 69060 | /* 195143 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXUBrr), |
| 69061 | /* 195148 */ GIR_RootConstrainSelectedInstOperands, |
| 69062 | /* 195149 */ // GIR_Coverage, 2650, |
| 69063 | /* 195149 */ GIR_Done, |
| 69064 | /* 195150 */ // Label 4339: @195150 |
| 69065 | /* 195150 */ GIM_Try, /*On fail goto*//*Label 4340*/ GIMT_Encode4(195177), // Rule ID 5428 // |
| 69066 | /* 195155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69067 | /* 195158 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69068 | /* 195162 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69069 | /* 195166 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69070 | /* 195170 */ // (umax:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPMAXUBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 69071 | /* 195170 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ128rr), |
| 69072 | /* 195175 */ GIR_RootConstrainSelectedInstOperands, |
| 69073 | /* 195176 */ // GIR_Coverage, 5428, |
| 69074 | /* 195176 */ GIR_Done, |
| 69075 | /* 195177 */ // Label 4340: @195177 |
| 69076 | /* 195177 */ GIM_Reject, |
| 69077 | /* 195178 */ // Label 4333: @195178 |
| 69078 | /* 195178 */ GIM_Reject, |
| 69079 | /* 195179 */ // Label 4290: @195179 |
| 69080 | /* 195179 */ GIM_Try, /*On fail goto*//*Label 4341*/ GIMT_Encode4(195493), |
| 69081 | /* 195184 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 69082 | /* 195187 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 69083 | /* 195190 */ GIM_Try, /*On fail goto*//*Label 4342*/ GIMT_Encode4(195252), // Rule ID 23518 // |
| 69084 | /* 195195 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69085 | /* 195198 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69086 | /* 195202 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69087 | /* 195206 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69088 | /* 195210 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69089 | /* 195213 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69090 | /* 195217 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69091 | /* 195221 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69092 | /* 195225 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69093 | /* 195227 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69094 | /* 195234 */ // (umax:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMAXUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69095 | /* 195234 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWYrm), |
| 69096 | /* 195237 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69097 | /* 195239 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 69098 | /* 195241 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69099 | /* 195245 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69100 | /* 195250 */ GIR_RootConstrainSelectedInstOperands, |
| 69101 | /* 195251 */ // GIR_Coverage, 23518, |
| 69102 | /* 195251 */ GIR_EraseRootFromParent_Done, |
| 69103 | /* 195252 */ // Label 4342: @195252 |
| 69104 | /* 195252 */ GIM_Try, /*On fail goto*//*Label 4343*/ GIMT_Encode4(195314), // Rule ID 23987 // |
| 69105 | /* 195257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69106 | /* 195260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69107 | /* 195264 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69108 | /* 195268 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69109 | /* 195272 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69110 | /* 195275 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69111 | /* 195279 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69112 | /* 195283 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69113 | /* 195287 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69114 | /* 195289 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69115 | /* 195296 */ // (umax:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMAXUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69116 | /* 195296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ256rm), |
| 69117 | /* 195299 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69118 | /* 195301 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 69119 | /* 195303 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69120 | /* 195307 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69121 | /* 195312 */ GIR_RootConstrainSelectedInstOperands, |
| 69122 | /* 195313 */ // GIR_Coverage, 23987, |
| 69123 | /* 195313 */ GIR_EraseRootFromParent_Done, |
| 69124 | /* 195314 */ // Label 4343: @195314 |
| 69125 | /* 195314 */ GIM_Try, /*On fail goto*//*Label 4344*/ GIMT_Encode4(195376), // Rule ID 3220 // |
| 69126 | /* 195319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69127 | /* 195322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69128 | /* 195326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69129 | /* 195330 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 69130 | /* 195334 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69131 | /* 195338 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69132 | /* 195341 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69133 | /* 195345 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69134 | /* 195349 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69135 | /* 195351 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69136 | /* 195358 */ // (umax:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69137 | /* 195358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWYrm), |
| 69138 | /* 195361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69139 | /* 195363 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 69140 | /* 195365 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69141 | /* 195369 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69142 | /* 195374 */ GIR_RootConstrainSelectedInstOperands, |
| 69143 | /* 195375 */ // GIR_Coverage, 3220, |
| 69144 | /* 195375 */ GIR_EraseRootFromParent_Done, |
| 69145 | /* 195376 */ // Label 4344: @195376 |
| 69146 | /* 195376 */ GIM_Try, /*On fail goto*//*Label 4345*/ GIMT_Encode4(195438), // Rule ID 5443 // |
| 69147 | /* 195381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69148 | /* 195384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69149 | /* 195388 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69150 | /* 195392 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 69151 | /* 195396 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69152 | /* 195400 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69153 | /* 195403 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69154 | /* 195407 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69155 | /* 195411 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69156 | /* 195413 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69157 | /* 195420 */ // (umax:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69158 | /* 195420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ256rm), |
| 69159 | /* 195423 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69160 | /* 195425 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 69161 | /* 195427 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69162 | /* 195431 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69163 | /* 195436 */ GIR_RootConstrainSelectedInstOperands, |
| 69164 | /* 195437 */ // GIR_Coverage, 5443, |
| 69165 | /* 195437 */ GIR_EraseRootFromParent_Done, |
| 69166 | /* 195438 */ // Label 4345: @195438 |
| 69167 | /* 195438 */ GIM_Try, /*On fail goto*//*Label 4346*/ GIMT_Encode4(195465), // Rule ID 3219 // |
| 69168 | /* 195443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69169 | /* 195446 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69170 | /* 195450 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69171 | /* 195454 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69172 | /* 195458 */ // (umax:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMAXUWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 69173 | /* 195458 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUWYrr), |
| 69174 | /* 195463 */ GIR_RootConstrainSelectedInstOperands, |
| 69175 | /* 195464 */ // GIR_Coverage, 3219, |
| 69176 | /* 195464 */ GIR_Done, |
| 69177 | /* 195465 */ // Label 4346: @195465 |
| 69178 | /* 195465 */ GIM_Try, /*On fail goto*//*Label 4347*/ GIMT_Encode4(195492), // Rule ID 5440 // |
| 69179 | /* 195470 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69180 | /* 195473 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69181 | /* 195477 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69182 | /* 195481 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69183 | /* 195485 */ // (umax:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMAXUWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 69184 | /* 195485 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ256rr), |
| 69185 | /* 195490 */ GIR_RootConstrainSelectedInstOperands, |
| 69186 | /* 195491 */ // GIR_Coverage, 5440, |
| 69187 | /* 195491 */ GIR_Done, |
| 69188 | /* 195492 */ // Label 4347: @195492 |
| 69189 | /* 195492 */ GIM_Reject, |
| 69190 | /* 195493 */ // Label 4341: @195493 |
| 69191 | /* 195493 */ GIM_Reject, |
| 69192 | /* 195494 */ // Label 4291: @195494 |
| 69193 | /* 195494 */ GIM_Try, /*On fail goto*//*Label 4348*/ GIMT_Encode4(195649), |
| 69194 | /* 195499 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 69195 | /* 195502 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 69196 | /* 195505 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69197 | /* 195509 */ GIM_Try, /*On fail goto*//*Label 4349*/ GIMT_Encode4(195567), // Rule ID 23993 // |
| 69198 | /* 195514 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 69199 | /* 195517 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69200 | /* 195521 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69201 | /* 195525 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69202 | /* 195528 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69203 | /* 195532 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69204 | /* 195536 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69205 | /* 195540 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69206 | /* 195542 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69207 | /* 195549 */ // (umax:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPMAXUDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69208 | /* 195549 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZrm), |
| 69209 | /* 195552 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69210 | /* 195554 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 69211 | /* 195556 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69212 | /* 195560 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69213 | /* 195565 */ GIR_RootConstrainSelectedInstOperands, |
| 69214 | /* 195566 */ // GIR_Coverage, 23993, |
| 69215 | /* 195566 */ GIR_EraseRootFromParent_Done, |
| 69216 | /* 195567 */ // Label 4349: @195567 |
| 69217 | /* 195567 */ GIM_Try, /*On fail goto*//*Label 4350*/ GIMT_Encode4(195625), // Rule ID 5455 // |
| 69218 | /* 195572 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 69219 | /* 195575 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69220 | /* 195579 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 69221 | /* 195583 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69222 | /* 195587 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69223 | /* 195590 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69224 | /* 195594 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69225 | /* 195598 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69226 | /* 195600 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69227 | /* 195607 */ // (umax:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69228 | /* 195607 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZrm), |
| 69229 | /* 195610 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69230 | /* 195612 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 69231 | /* 195614 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69232 | /* 195618 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69233 | /* 195623 */ GIR_RootConstrainSelectedInstOperands, |
| 69234 | /* 195624 */ // GIR_Coverage, 5455, |
| 69235 | /* 195624 */ GIR_EraseRootFromParent_Done, |
| 69236 | /* 195625 */ // Label 4350: @195625 |
| 69237 | /* 195625 */ GIM_Try, /*On fail goto*//*Label 4351*/ GIMT_Encode4(195648), // Rule ID 5452 // |
| 69238 | /* 195630 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 69239 | /* 195633 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69240 | /* 195637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69241 | /* 195641 */ // (umax:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPMAXUDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 69242 | /* 195641 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZrr), |
| 69243 | /* 195646 */ GIR_RootConstrainSelectedInstOperands, |
| 69244 | /* 195647 */ // GIR_Coverage, 5452, |
| 69245 | /* 195647 */ GIR_Done, |
| 69246 | /* 195648 */ // Label 4351: @195648 |
| 69247 | /* 195648 */ GIM_Reject, |
| 69248 | /* 195649 */ // Label 4348: @195649 |
| 69249 | /* 195649 */ GIM_Reject, |
| 69250 | /* 195650 */ // Label 4292: @195650 |
| 69251 | /* 195650 */ GIM_Try, /*On fail goto*//*Label 4352*/ GIMT_Encode4(195964), |
| 69252 | /* 195655 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 69253 | /* 195658 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 69254 | /* 195661 */ GIM_Try, /*On fail goto*//*Label 4353*/ GIMT_Encode4(195723), // Rule ID 23470 // |
| 69255 | /* 195666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69256 | /* 195669 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69257 | /* 195673 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69258 | /* 195677 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69259 | /* 195681 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69260 | /* 195684 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69261 | /* 195688 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69262 | /* 195692 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69263 | /* 195696 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69264 | /* 195698 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69265 | /* 195705 */ // (umax:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPMAXUBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69266 | /* 195705 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBYrm), |
| 69267 | /* 195708 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69268 | /* 195710 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 69269 | /* 195712 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69270 | /* 195716 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69271 | /* 195721 */ GIR_RootConstrainSelectedInstOperands, |
| 69272 | /* 195722 */ // GIR_Coverage, 23470, |
| 69273 | /* 195722 */ GIR_EraseRootFromParent_Done, |
| 69274 | /* 195723 */ // Label 4353: @195723 |
| 69275 | /* 195723 */ GIM_Try, /*On fail goto*//*Label 4354*/ GIMT_Encode4(195785), // Rule ID 23978 // |
| 69276 | /* 195728 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69277 | /* 195731 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69278 | /* 195735 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69279 | /* 195739 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69280 | /* 195743 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69281 | /* 195746 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69282 | /* 195750 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69283 | /* 195754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69284 | /* 195758 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69285 | /* 195760 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69286 | /* 195767 */ // (umax:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPMAXUBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69287 | /* 195767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ256rm), |
| 69288 | /* 195770 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69289 | /* 195772 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 69290 | /* 195774 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69291 | /* 195778 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69292 | /* 195783 */ GIR_RootConstrainSelectedInstOperands, |
| 69293 | /* 195784 */ // GIR_Coverage, 23978, |
| 69294 | /* 195784 */ GIR_EraseRootFromParent_Done, |
| 69295 | /* 195785 */ // Label 4354: @195785 |
| 69296 | /* 195785 */ GIM_Try, /*On fail goto*//*Label 4355*/ GIMT_Encode4(195847), // Rule ID 2653 // |
| 69297 | /* 195790 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69298 | /* 195793 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69299 | /* 195797 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69300 | /* 195801 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 69301 | /* 195805 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69302 | /* 195809 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69303 | /* 195812 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69304 | /* 195816 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69305 | /* 195820 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69306 | /* 195822 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69307 | /* 195829 */ // (umax:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69308 | /* 195829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBYrm), |
| 69309 | /* 195832 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69310 | /* 195834 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 69311 | /* 195836 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69312 | /* 195840 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69313 | /* 195845 */ GIR_RootConstrainSelectedInstOperands, |
| 69314 | /* 195846 */ // GIR_Coverage, 2653, |
| 69315 | /* 195846 */ GIR_EraseRootFromParent_Done, |
| 69316 | /* 195847 */ // Label 4355: @195847 |
| 69317 | /* 195847 */ GIM_Try, /*On fail goto*//*Label 4356*/ GIMT_Encode4(195909), // Rule ID 5425 // |
| 69318 | /* 195852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69319 | /* 195855 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69320 | /* 195859 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69321 | /* 195863 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 69322 | /* 195867 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69323 | /* 195871 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69324 | /* 195874 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69325 | /* 195878 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69326 | /* 195882 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69327 | /* 195884 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69328 | /* 195891 */ // (umax:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69329 | /* 195891 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ256rm), |
| 69330 | /* 195894 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69331 | /* 195896 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 69332 | /* 195898 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69333 | /* 195902 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69334 | /* 195907 */ GIR_RootConstrainSelectedInstOperands, |
| 69335 | /* 195908 */ // GIR_Coverage, 5425, |
| 69336 | /* 195908 */ GIR_EraseRootFromParent_Done, |
| 69337 | /* 195909 */ // Label 4356: @195909 |
| 69338 | /* 195909 */ GIM_Try, /*On fail goto*//*Label 4357*/ GIMT_Encode4(195936), // Rule ID 2652 // |
| 69339 | /* 195914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69340 | /* 195917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69341 | /* 195921 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69342 | /* 195925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69343 | /* 195929 */ // (umax:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPMAXUBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 69344 | /* 195929 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUBYrr), |
| 69345 | /* 195934 */ GIR_RootConstrainSelectedInstOperands, |
| 69346 | /* 195935 */ // GIR_Coverage, 2652, |
| 69347 | /* 195935 */ GIR_Done, |
| 69348 | /* 195936 */ // Label 4357: @195936 |
| 69349 | /* 195936 */ GIM_Try, /*On fail goto*//*Label 4358*/ GIMT_Encode4(195963), // Rule ID 5422 // |
| 69350 | /* 195941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69351 | /* 195944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69352 | /* 195948 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69353 | /* 195952 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69354 | /* 195956 */ // (umax:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPMAXUBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 69355 | /* 195956 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ256rr), |
| 69356 | /* 195961 */ GIR_RootConstrainSelectedInstOperands, |
| 69357 | /* 195962 */ // GIR_Coverage, 5422, |
| 69358 | /* 195962 */ GIR_Done, |
| 69359 | /* 195963 */ // Label 4358: @195963 |
| 69360 | /* 195963 */ GIM_Reject, |
| 69361 | /* 195964 */ // Label 4352: @195964 |
| 69362 | /* 195964 */ GIM_Reject, |
| 69363 | /* 195965 */ // Label 4293: @195965 |
| 69364 | /* 195965 */ GIM_Try, /*On fail goto*//*Label 4359*/ GIMT_Encode4(196120), |
| 69365 | /* 195970 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 69366 | /* 195973 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 69367 | /* 195976 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69368 | /* 195980 */ GIM_Try, /*On fail goto*//*Label 4360*/ GIMT_Encode4(196038), // Rule ID 23984 // |
| 69369 | /* 195985 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 69370 | /* 195988 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69371 | /* 195992 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69372 | /* 195996 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69373 | /* 195999 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69374 | /* 196003 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69375 | /* 196007 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69376 | /* 196011 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69377 | /* 196013 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69378 | /* 196020 */ // (umax:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMAXUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69379 | /* 196020 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZrm), |
| 69380 | /* 196023 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69381 | /* 196025 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 69382 | /* 196027 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69383 | /* 196031 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69384 | /* 196036 */ GIR_RootConstrainSelectedInstOperands, |
| 69385 | /* 196037 */ // GIR_Coverage, 23984, |
| 69386 | /* 196037 */ GIR_EraseRootFromParent_Done, |
| 69387 | /* 196038 */ // Label 4360: @196038 |
| 69388 | /* 196038 */ GIM_Try, /*On fail goto*//*Label 4361*/ GIMT_Encode4(196096), // Rule ID 5437 // |
| 69389 | /* 196043 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 69390 | /* 196046 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69391 | /* 196050 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 69392 | /* 196054 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69393 | /* 196058 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69394 | /* 196061 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69395 | /* 196065 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69396 | /* 196069 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69397 | /* 196071 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69398 | /* 196078 */ // (umax:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69399 | /* 196078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZrm), |
| 69400 | /* 196081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69401 | /* 196083 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 69402 | /* 196085 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69403 | /* 196089 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69404 | /* 196094 */ GIR_RootConstrainSelectedInstOperands, |
| 69405 | /* 196095 */ // GIR_Coverage, 5437, |
| 69406 | /* 196095 */ GIR_EraseRootFromParent_Done, |
| 69407 | /* 196096 */ // Label 4361: @196096 |
| 69408 | /* 196096 */ GIM_Try, /*On fail goto*//*Label 4362*/ GIMT_Encode4(196119), // Rule ID 5434 // |
| 69409 | /* 196101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 69410 | /* 196104 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69411 | /* 196108 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69412 | /* 196112 */ // (umax:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMAXUWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 69413 | /* 196112 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZrr), |
| 69414 | /* 196117 */ GIR_RootConstrainSelectedInstOperands, |
| 69415 | /* 196118 */ // GIR_Coverage, 5434, |
| 69416 | /* 196118 */ GIR_Done, |
| 69417 | /* 196119 */ // Label 4362: @196119 |
| 69418 | /* 196119 */ GIM_Reject, |
| 69419 | /* 196120 */ // Label 4359: @196120 |
| 69420 | /* 196120 */ GIM_Reject, |
| 69421 | /* 196121 */ // Label 4294: @196121 |
| 69422 | /* 196121 */ GIM_Try, /*On fail goto*//*Label 4363*/ GIMT_Encode4(196276), |
| 69423 | /* 196126 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 69424 | /* 196129 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 69425 | /* 196132 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69426 | /* 196136 */ GIM_Try, /*On fail goto*//*Label 4364*/ GIMT_Encode4(196194), // Rule ID 23975 // |
| 69427 | /* 196141 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 69428 | /* 196144 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69429 | /* 196148 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69430 | /* 196152 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69431 | /* 196155 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69432 | /* 196159 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69433 | /* 196163 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69434 | /* 196167 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69435 | /* 196169 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69436 | /* 196176 */ // (umax:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPMAXUBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69437 | /* 196176 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZrm), |
| 69438 | /* 196179 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69439 | /* 196181 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 69440 | /* 196183 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69441 | /* 196187 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69442 | /* 196192 */ GIR_RootConstrainSelectedInstOperands, |
| 69443 | /* 196193 */ // GIR_Coverage, 23975, |
| 69444 | /* 196193 */ GIR_EraseRootFromParent_Done, |
| 69445 | /* 196194 */ // Label 4364: @196194 |
| 69446 | /* 196194 */ GIM_Try, /*On fail goto*//*Label 4365*/ GIMT_Encode4(196252), // Rule ID 5419 // |
| 69447 | /* 196199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 69448 | /* 196202 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69449 | /* 196206 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 69450 | /* 196210 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69451 | /* 196214 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69452 | /* 196217 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69453 | /* 196221 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69454 | /* 196225 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69455 | /* 196227 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69456 | /* 196234 */ // (umax:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 69457 | /* 196234 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZrm), |
| 69458 | /* 196237 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69459 | /* 196239 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 69460 | /* 196241 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 69461 | /* 196245 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69462 | /* 196250 */ GIR_RootConstrainSelectedInstOperands, |
| 69463 | /* 196251 */ // GIR_Coverage, 5419, |
| 69464 | /* 196251 */ GIR_EraseRootFromParent_Done, |
| 69465 | /* 196252 */ // Label 4365: @196252 |
| 69466 | /* 196252 */ GIM_Try, /*On fail goto*//*Label 4366*/ GIMT_Encode4(196275), // Rule ID 5416 // |
| 69467 | /* 196257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 69468 | /* 196260 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69469 | /* 196264 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69470 | /* 196268 */ // (umax:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPMAXUBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 69471 | /* 196268 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZrr), |
| 69472 | /* 196273 */ GIR_RootConstrainSelectedInstOperands, |
| 69473 | /* 196274 */ // GIR_Coverage, 5416, |
| 69474 | /* 196274 */ GIR_Done, |
| 69475 | /* 196275 */ // Label 4366: @196275 |
| 69476 | /* 196275 */ GIM_Reject, |
| 69477 | /* 196276 */ // Label 4363: @196276 |
| 69478 | /* 196276 */ GIM_Reject, |
| 69479 | /* 196277 */ // Label 4295: @196277 |
| 69480 | /* 196277 */ GIM_Reject, |
| 69481 | /* 196278 */ // Label 58: @196278 |
| 69482 | /* 196278 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4379*/ GIMT_Encode4(198158), |
| 69483 | /* 196289 */ /*GILLT_v2s64*//*Label 4367*/ GIMT_Encode4(196357), GIMT_Encode4(0), |
| 69484 | /* 196297 */ /*GILLT_v4s32*//*Label 4368*/ GIMT_Encode4(196553), |
| 69485 | /* 196301 */ /*GILLT_v4s64*//*Label 4369*/ GIMT_Encode4(196744), GIMT_Encode4(0), |
| 69486 | /* 196309 */ /*GILLT_v8s16*//*Label 4370*/ GIMT_Encode4(196932), |
| 69487 | /* 196313 */ /*GILLT_v8s32*//*Label 4371*/ GIMT_Encode4(197123), |
| 69488 | /* 196317 */ /*GILLT_v8s64*//*Label 4372*/ GIMT_Encode4(197291), GIMT_Encode4(0), |
| 69489 | /* 196325 */ /*GILLT_v16s8*//*Label 4373*/ GIMT_Encode4(197376), |
| 69490 | /* 196329 */ /*GILLT_v16s16*//*Label 4374*/ GIMT_Encode4(197567), |
| 69491 | /* 196333 */ /*GILLT_v16s32*//*Label 4375*/ GIMT_Encode4(197735), GIMT_Encode4(0), |
| 69492 | /* 196341 */ /*GILLT_v32s8*//*Label 4376*/ GIMT_Encode4(197820), |
| 69493 | /* 196345 */ /*GILLT_v32s16*//*Label 4377*/ GIMT_Encode4(197988), GIMT_Encode4(0), |
| 69494 | /* 196353 */ /*GILLT_v64s8*//*Label 4378*/ GIMT_Encode4(198073), |
| 69495 | /* 196357 */ // Label 4367: @196357 |
| 69496 | /* 196357 */ GIM_Try, /*On fail goto*//*Label 4380*/ GIMT_Encode4(196552), |
| 69497 | /* 196362 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 69498 | /* 196365 */ GIM_Try, /*On fail goto*//*Label 4381*/ GIMT_Encode4(196421), // Rule ID 13267 // |
| 69499 | /* 196370 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69500 | /* 196373 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69501 | /* 196377 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69502 | /* 196381 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69503 | /* 196385 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69504 | /* 196388 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69505 | /* 196392 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69506 | /* 196396 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69507 | /* 196398 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69508 | /* 196405 */ // (abs:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSQZ128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1) |
| 69509 | /* 196405 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSQZ128rm), |
| 69510 | /* 196408 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69511 | /* 196410 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69512 | /* 196414 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69513 | /* 196419 */ GIR_RootConstrainSelectedInstOperands, |
| 69514 | /* 196420 */ // GIR_Coverage, 13267, |
| 69515 | /* 196420 */ GIR_EraseRootFromParent_Done, |
| 69516 | /* 196421 */ // Label 4381: @196421 |
| 69517 | /* 196421 */ GIM_Try, /*On fail goto*//*Label 4382*/ GIMT_Encode4(196444), // Rule ID 13264 // |
| 69518 | /* 196426 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69519 | /* 196429 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69520 | /* 196433 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69521 | /* 196437 */ // (abs:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) => (VPABSQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) |
| 69522 | /* 196437 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSQZ128rr), |
| 69523 | /* 196442 */ GIR_RootConstrainSelectedInstOperands, |
| 69524 | /* 196443 */ // GIR_Coverage, 13264, |
| 69525 | /* 196443 */ GIR_Done, |
| 69526 | /* 196444 */ // Label 4382: @196444 |
| 69527 | /* 196444 */ GIM_Try, /*On fail goto*//*Label 4383*/ GIMT_Encode4(196551), // Rule ID 21824 // |
| 69528 | /* 196449 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 69529 | /* 196452 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 69530 | /* 196456 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69531 | /* 196460 */ // (abs:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPABSQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 69532 | /* 196460 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 69533 | /* 196463 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 69534 | /* 196467 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 69535 | /* 196472 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 69536 | /* 196474 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 69537 | /* 196477 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 69538 | /* 196481 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 69539 | /* 196486 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 69540 | /* 196489 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 69541 | /* 196493 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 69542 | /* 196496 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 69543 | /* 196501 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69544 | /* 196506 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 69545 | /* 196511 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 69546 | /* 196514 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPABSQZrr), |
| 69547 | /* 196518 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 69548 | /* 196523 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 69549 | /* 196526 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 69550 | /* 196528 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69551 | /* 196531 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69552 | /* 196533 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 69553 | /* 196540 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 69554 | /* 196545 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69555 | /* 196550 */ // GIR_Coverage, 21824, |
| 69556 | /* 196550 */ GIR_EraseRootFromParent_Done, |
| 69557 | /* 196551 */ // Label 4383: @196551 |
| 69558 | /* 196551 */ GIM_Reject, |
| 69559 | /* 196552 */ // Label 4380: @196552 |
| 69560 | /* 196552 */ GIM_Reject, |
| 69561 | /* 196553 */ // Label 4368: @196553 |
| 69562 | /* 196553 */ GIM_Try, /*On fail goto*//*Label 4384*/ GIMT_Encode4(196743), |
| 69563 | /* 196558 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 69564 | /* 196561 */ GIM_Try, /*On fail goto*//*Label 4385*/ GIMT_Encode4(196617), // Rule ID 2995 // |
| 69565 | /* 196566 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 69566 | /* 196569 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69567 | /* 196573 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69568 | /* 196577 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69569 | /* 196581 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69570 | /* 196584 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69571 | /* 196588 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69572 | /* 196592 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69573 | /* 196594 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69574 | /* 196601 */ // (abs:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 69575 | /* 196601 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSDrm), |
| 69576 | /* 196604 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69577 | /* 196606 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69578 | /* 196610 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69579 | /* 196615 */ GIR_RootConstrainSelectedInstOperands, |
| 69580 | /* 196616 */ // GIR_Coverage, 2995, |
| 69581 | /* 196616 */ GIR_EraseRootFromParent_Done, |
| 69582 | /* 196617 */ // Label 4385: @196617 |
| 69583 | /* 196617 */ GIM_Try, /*On fail goto*//*Label 4386*/ GIMT_Encode4(196673), // Rule ID 13294 // |
| 69584 | /* 196622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69585 | /* 196625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69586 | /* 196629 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69587 | /* 196633 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69588 | /* 196637 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69589 | /* 196640 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69590 | /* 196644 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69591 | /* 196648 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69592 | /* 196650 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69593 | /* 196657 */ // (abs:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSDZ128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1) |
| 69594 | /* 196657 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSDZ128rm), |
| 69595 | /* 196660 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69596 | /* 196662 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69597 | /* 196666 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69598 | /* 196671 */ GIR_RootConstrainSelectedInstOperands, |
| 69599 | /* 196672 */ // GIR_Coverage, 13294, |
| 69600 | /* 196672 */ GIR_EraseRootFromParent_Done, |
| 69601 | /* 196673 */ // Label 4386: @196673 |
| 69602 | /* 196673 */ GIM_Try, /*On fail goto*//*Label 4387*/ GIMT_Encode4(196696), // Rule ID 2994 // |
| 69603 | /* 196678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 69604 | /* 196681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69605 | /* 196685 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69606 | /* 196689 */ // (abs:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src) => (VPABSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src) |
| 69607 | /* 196689 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSDrr), |
| 69608 | /* 196694 */ GIR_RootConstrainSelectedInstOperands, |
| 69609 | /* 196695 */ // GIR_Coverage, 2994, |
| 69610 | /* 196695 */ GIR_Done, |
| 69611 | /* 196696 */ // Label 4387: @196696 |
| 69612 | /* 196696 */ GIM_Try, /*On fail goto*//*Label 4388*/ GIMT_Encode4(196719), // Rule ID 3006 // |
| 69613 | /* 196701 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 69614 | /* 196704 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69615 | /* 196708 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69616 | /* 196712 */ // (abs:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src) => (PABSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src) |
| 69617 | /* 196712 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PABSDrr), |
| 69618 | /* 196717 */ GIR_RootConstrainSelectedInstOperands, |
| 69619 | /* 196718 */ // GIR_Coverage, 3006, |
| 69620 | /* 196718 */ GIR_Done, |
| 69621 | /* 196719 */ // Label 4388: @196719 |
| 69622 | /* 196719 */ GIM_Try, /*On fail goto*//*Label 4389*/ GIMT_Encode4(196742), // Rule ID 13291 // |
| 69623 | /* 196724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69624 | /* 196727 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69625 | /* 196731 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69626 | /* 196735 */ // (abs:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) => (VPABSDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) |
| 69627 | /* 196735 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSDZ128rr), |
| 69628 | /* 196740 */ GIR_RootConstrainSelectedInstOperands, |
| 69629 | /* 196741 */ // GIR_Coverage, 13291, |
| 69630 | /* 196741 */ GIR_Done, |
| 69631 | /* 196742 */ // Label 4389: @196742 |
| 69632 | /* 196742 */ GIM_Reject, |
| 69633 | /* 196743 */ // Label 4384: @196743 |
| 69634 | /* 196743 */ GIM_Reject, |
| 69635 | /* 196744 */ // Label 4369: @196744 |
| 69636 | /* 196744 */ GIM_Try, /*On fail goto*//*Label 4390*/ GIMT_Encode4(196931), |
| 69637 | /* 196749 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 69638 | /* 196752 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69639 | /* 196756 */ GIM_Try, /*On fail goto*//*Label 4391*/ GIMT_Encode4(196808), // Rule ID 13258 // |
| 69640 | /* 196761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69641 | /* 196764 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69642 | /* 196768 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69643 | /* 196772 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69644 | /* 196775 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69645 | /* 196779 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69646 | /* 196783 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69647 | /* 196785 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69648 | /* 196792 */ // (abs:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1) |
| 69649 | /* 196792 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSQZ256rm), |
| 69650 | /* 196795 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69651 | /* 196797 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69652 | /* 196801 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69653 | /* 196806 */ GIR_RootConstrainSelectedInstOperands, |
| 69654 | /* 196807 */ // GIR_Coverage, 13258, |
| 69655 | /* 196807 */ GIR_EraseRootFromParent_Done, |
| 69656 | /* 196808 */ // Label 4391: @196808 |
| 69657 | /* 196808 */ GIM_Try, /*On fail goto*//*Label 4392*/ GIMT_Encode4(196827), // Rule ID 13255 // |
| 69658 | /* 196813 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69659 | /* 196816 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69660 | /* 196820 */ // (abs:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) => (VPABSQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) |
| 69661 | /* 196820 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSQZ256rr), |
| 69662 | /* 196825 */ GIR_RootConstrainSelectedInstOperands, |
| 69663 | /* 196826 */ // GIR_Coverage, 13255, |
| 69664 | /* 196826 */ GIR_Done, |
| 69665 | /* 196827 */ // Label 4392: @196827 |
| 69666 | /* 196827 */ GIM_Try, /*On fail goto*//*Label 4393*/ GIMT_Encode4(196930), // Rule ID 21823 // |
| 69667 | /* 196832 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEVEX512_NoVLX), |
| 69668 | /* 196835 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69669 | /* 196839 */ // (abs:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPABSQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 69670 | /* 196839 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 69671 | /* 196842 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 69672 | /* 196846 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 69673 | /* 196851 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 69674 | /* 196853 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 69675 | /* 196856 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 69676 | /* 196860 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 69677 | /* 196865 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 69678 | /* 196868 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 69679 | /* 196872 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 69680 | /* 196875 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 69681 | /* 196880 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69682 | /* 196885 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 69683 | /* 196890 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 69684 | /* 196893 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPABSQZrr), |
| 69685 | /* 196897 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 69686 | /* 196902 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 69687 | /* 196905 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 69688 | /* 196907 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69689 | /* 196910 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69690 | /* 196912 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 69691 | /* 196919 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 69692 | /* 196924 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69693 | /* 196929 */ // GIR_Coverage, 21823, |
| 69694 | /* 196929 */ GIR_EraseRootFromParent_Done, |
| 69695 | /* 196930 */ // Label 4393: @196930 |
| 69696 | /* 196930 */ GIM_Reject, |
| 69697 | /* 196931 */ // Label 4390: @196931 |
| 69698 | /* 196931 */ GIM_Reject, |
| 69699 | /* 196932 */ // Label 4370: @196932 |
| 69700 | /* 196932 */ GIM_Try, /*On fail goto*//*Label 4394*/ GIMT_Encode4(197122), |
| 69701 | /* 196937 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 69702 | /* 196940 */ GIM_Try, /*On fail goto*//*Label 4395*/ GIMT_Encode4(196996), // Rule ID 2993 // |
| 69703 | /* 196945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 69704 | /* 196948 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69705 | /* 196952 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69706 | /* 196956 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69707 | /* 196960 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69708 | /* 196963 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69709 | /* 196967 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69710 | /* 196971 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69711 | /* 196973 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69712 | /* 196980 */ // (abs:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSWrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 69713 | /* 196980 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSWrm), |
| 69714 | /* 196983 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69715 | /* 196985 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69716 | /* 196989 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69717 | /* 196994 */ GIR_RootConstrainSelectedInstOperands, |
| 69718 | /* 196995 */ // GIR_Coverage, 2993, |
| 69719 | /* 196995 */ GIR_EraseRootFromParent_Done, |
| 69720 | /* 196996 */ // Label 4395: @196996 |
| 69721 | /* 196996 */ GIM_Try, /*On fail goto*//*Label 4396*/ GIMT_Encode4(197052), // Rule ID 13315 // |
| 69722 | /* 197001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69723 | /* 197004 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69724 | /* 197008 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69725 | /* 197012 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69726 | /* 197016 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69727 | /* 197019 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69728 | /* 197023 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69729 | /* 197027 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69730 | /* 197029 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69731 | /* 197036 */ // (abs:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSWZ128rm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1) |
| 69732 | /* 197036 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSWZ128rm), |
| 69733 | /* 197039 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69734 | /* 197041 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69735 | /* 197045 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69736 | /* 197050 */ GIR_RootConstrainSelectedInstOperands, |
| 69737 | /* 197051 */ // GIR_Coverage, 13315, |
| 69738 | /* 197051 */ GIR_EraseRootFromParent_Done, |
| 69739 | /* 197052 */ // Label 4396: @197052 |
| 69740 | /* 197052 */ GIM_Try, /*On fail goto*//*Label 4397*/ GIMT_Encode4(197075), // Rule ID 2992 // |
| 69741 | /* 197057 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 69742 | /* 197060 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69743 | /* 197064 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69744 | /* 197068 */ // (abs:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src) => (VPABSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src) |
| 69745 | /* 197068 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSWrr), |
| 69746 | /* 197073 */ GIR_RootConstrainSelectedInstOperands, |
| 69747 | /* 197074 */ // GIR_Coverage, 2992, |
| 69748 | /* 197074 */ GIR_Done, |
| 69749 | /* 197075 */ // Label 4397: @197075 |
| 69750 | /* 197075 */ GIM_Try, /*On fail goto*//*Label 4398*/ GIMT_Encode4(197098), // Rule ID 3004 // |
| 69751 | /* 197080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 69752 | /* 197083 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69753 | /* 197087 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69754 | /* 197091 */ // (abs:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src) => (PABSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src) |
| 69755 | /* 197091 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PABSWrr), |
| 69756 | /* 197096 */ GIR_RootConstrainSelectedInstOperands, |
| 69757 | /* 197097 */ // GIR_Coverage, 3004, |
| 69758 | /* 197097 */ GIR_Done, |
| 69759 | /* 197098 */ // Label 4398: @197098 |
| 69760 | /* 197098 */ GIM_Try, /*On fail goto*//*Label 4399*/ GIMT_Encode4(197121), // Rule ID 13312 // |
| 69761 | /* 197103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69762 | /* 197106 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69763 | /* 197110 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69764 | /* 197114 */ // (abs:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1) => (VPABSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1) |
| 69765 | /* 197114 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSWZ128rr), |
| 69766 | /* 197119 */ GIR_RootConstrainSelectedInstOperands, |
| 69767 | /* 197120 */ // GIR_Coverage, 13312, |
| 69768 | /* 197120 */ GIR_Done, |
| 69769 | /* 197121 */ // Label 4399: @197121 |
| 69770 | /* 197121 */ GIM_Reject, |
| 69771 | /* 197122 */ // Label 4394: @197122 |
| 69772 | /* 197122 */ GIM_Reject, |
| 69773 | /* 197123 */ // Label 4371: @197123 |
| 69774 | /* 197123 */ GIM_Try, /*On fail goto*//*Label 4400*/ GIMT_Encode4(197290), |
| 69775 | /* 197128 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 69776 | /* 197131 */ GIM_Try, /*On fail goto*//*Label 4401*/ GIMT_Encode4(197187), // Rule ID 3001 // |
| 69777 | /* 197136 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 69778 | /* 197139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69779 | /* 197143 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69780 | /* 197147 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69781 | /* 197151 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69782 | /* 197154 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69783 | /* 197158 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69784 | /* 197162 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69785 | /* 197164 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69786 | /* 197171 */ // (abs:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSDYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 69787 | /* 197171 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSDYrm), |
| 69788 | /* 197174 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69789 | /* 197176 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69790 | /* 197180 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69791 | /* 197185 */ GIR_RootConstrainSelectedInstOperands, |
| 69792 | /* 197186 */ // GIR_Coverage, 3001, |
| 69793 | /* 197186 */ GIR_EraseRootFromParent_Done, |
| 69794 | /* 197187 */ // Label 4401: @197187 |
| 69795 | /* 197187 */ GIM_Try, /*On fail goto*//*Label 4402*/ GIMT_Encode4(197243), // Rule ID 13285 // |
| 69796 | /* 197192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69797 | /* 197195 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69798 | /* 197199 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69799 | /* 197203 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69800 | /* 197207 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69801 | /* 197210 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69802 | /* 197214 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69803 | /* 197218 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69804 | /* 197220 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69805 | /* 197227 */ // (abs:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSDZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1) |
| 69806 | /* 197227 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSDZ256rm), |
| 69807 | /* 197230 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69808 | /* 197232 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69809 | /* 197236 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69810 | /* 197241 */ GIR_RootConstrainSelectedInstOperands, |
| 69811 | /* 197242 */ // GIR_Coverage, 13285, |
| 69812 | /* 197242 */ GIR_EraseRootFromParent_Done, |
| 69813 | /* 197243 */ // Label 4402: @197243 |
| 69814 | /* 197243 */ GIM_Try, /*On fail goto*//*Label 4403*/ GIMT_Encode4(197266), // Rule ID 3000 // |
| 69815 | /* 197248 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 69816 | /* 197251 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69817 | /* 197255 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69818 | /* 197259 */ // (abs:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src) => (VPABSDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src) |
| 69819 | /* 197259 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSDYrr), |
| 69820 | /* 197264 */ GIR_RootConstrainSelectedInstOperands, |
| 69821 | /* 197265 */ // GIR_Coverage, 3000, |
| 69822 | /* 197265 */ GIR_Done, |
| 69823 | /* 197266 */ // Label 4403: @197266 |
| 69824 | /* 197266 */ GIM_Try, /*On fail goto*//*Label 4404*/ GIMT_Encode4(197289), // Rule ID 13282 // |
| 69825 | /* 197271 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69826 | /* 197274 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69827 | /* 197278 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69828 | /* 197282 */ // (abs:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) => (VPABSDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) |
| 69829 | /* 197282 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSDZ256rr), |
| 69830 | /* 197287 */ GIR_RootConstrainSelectedInstOperands, |
| 69831 | /* 197288 */ // GIR_Coverage, 13282, |
| 69832 | /* 197288 */ GIR_Done, |
| 69833 | /* 197289 */ // Label 4404: @197289 |
| 69834 | /* 197289 */ GIM_Reject, |
| 69835 | /* 197290 */ // Label 4400: @197290 |
| 69836 | /* 197290 */ GIM_Reject, |
| 69837 | /* 197291 */ // Label 4372: @197291 |
| 69838 | /* 197291 */ GIM_Try, /*On fail goto*//*Label 4405*/ GIMT_Encode4(197375), |
| 69839 | /* 197296 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 69840 | /* 197299 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69841 | /* 197303 */ GIM_Try, /*On fail goto*//*Label 4406*/ GIMT_Encode4(197355), // Rule ID 13249 // |
| 69842 | /* 197308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 69843 | /* 197311 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69844 | /* 197315 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69845 | /* 197319 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69846 | /* 197322 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69847 | /* 197326 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69848 | /* 197330 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69849 | /* 197332 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69850 | /* 197339 */ // (abs:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1) |
| 69851 | /* 197339 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSQZrm), |
| 69852 | /* 197342 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69853 | /* 197344 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69854 | /* 197348 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69855 | /* 197353 */ GIR_RootConstrainSelectedInstOperands, |
| 69856 | /* 197354 */ // GIR_Coverage, 13249, |
| 69857 | /* 197354 */ GIR_EraseRootFromParent_Done, |
| 69858 | /* 197355 */ // Label 4406: @197355 |
| 69859 | /* 197355 */ GIM_Try, /*On fail goto*//*Label 4407*/ GIMT_Encode4(197374), // Rule ID 13246 // |
| 69860 | /* 197360 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 69861 | /* 197363 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69862 | /* 197367 */ // (abs:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) => (VPABSQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) |
| 69863 | /* 197367 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSQZrr), |
| 69864 | /* 197372 */ GIR_RootConstrainSelectedInstOperands, |
| 69865 | /* 197373 */ // GIR_Coverage, 13246, |
| 69866 | /* 197373 */ GIR_Done, |
| 69867 | /* 197374 */ // Label 4407: @197374 |
| 69868 | /* 197374 */ GIM_Reject, |
| 69869 | /* 197375 */ // Label 4405: @197375 |
| 69870 | /* 197375 */ GIM_Reject, |
| 69871 | /* 197376 */ // Label 4373: @197376 |
| 69872 | /* 197376 */ GIM_Try, /*On fail goto*//*Label 4408*/ GIMT_Encode4(197566), |
| 69873 | /* 197381 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 69874 | /* 197384 */ GIM_Try, /*On fail goto*//*Label 4409*/ GIMT_Encode4(197440), // Rule ID 2991 // |
| 69875 | /* 197389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 69876 | /* 197392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69877 | /* 197396 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69878 | /* 197400 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69879 | /* 197404 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69880 | /* 197407 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69881 | /* 197411 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69882 | /* 197415 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69883 | /* 197417 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69884 | /* 197424 */ // (abs:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSBrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 69885 | /* 197424 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSBrm), |
| 69886 | /* 197427 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69887 | /* 197429 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69888 | /* 197433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69889 | /* 197438 */ GIR_RootConstrainSelectedInstOperands, |
| 69890 | /* 197439 */ // GIR_Coverage, 2991, |
| 69891 | /* 197439 */ GIR_EraseRootFromParent_Done, |
| 69892 | /* 197440 */ // Label 4409: @197440 |
| 69893 | /* 197440 */ GIM_Try, /*On fail goto*//*Label 4410*/ GIMT_Encode4(197496), // Rule ID 13333 // |
| 69894 | /* 197445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69895 | /* 197448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69896 | /* 197452 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69897 | /* 197456 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69898 | /* 197460 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69899 | /* 197463 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69900 | /* 197467 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69901 | /* 197471 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69902 | /* 197473 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69903 | /* 197480 */ // (abs:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSBZ128rm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1) |
| 69904 | /* 197480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSBZ128rm), |
| 69905 | /* 197483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69906 | /* 197485 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69907 | /* 197489 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69908 | /* 197494 */ GIR_RootConstrainSelectedInstOperands, |
| 69909 | /* 197495 */ // GIR_Coverage, 13333, |
| 69910 | /* 197495 */ GIR_EraseRootFromParent_Done, |
| 69911 | /* 197496 */ // Label 4410: @197496 |
| 69912 | /* 197496 */ GIM_Try, /*On fail goto*//*Label 4411*/ GIMT_Encode4(197519), // Rule ID 2990 // |
| 69913 | /* 197501 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 69914 | /* 197504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69915 | /* 197508 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69916 | /* 197512 */ // (abs:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src) => (VPABSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src) |
| 69917 | /* 197512 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSBrr), |
| 69918 | /* 197517 */ GIR_RootConstrainSelectedInstOperands, |
| 69919 | /* 197518 */ // GIR_Coverage, 2990, |
| 69920 | /* 197518 */ GIR_Done, |
| 69921 | /* 197519 */ // Label 4411: @197519 |
| 69922 | /* 197519 */ GIM_Try, /*On fail goto*//*Label 4412*/ GIMT_Encode4(197542), // Rule ID 3002 // |
| 69923 | /* 197524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 69924 | /* 197527 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69925 | /* 197531 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69926 | /* 197535 */ // (abs:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src) => (PABSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src) |
| 69927 | /* 197535 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PABSBrr), |
| 69928 | /* 197540 */ GIR_RootConstrainSelectedInstOperands, |
| 69929 | /* 197541 */ // GIR_Coverage, 3002, |
| 69930 | /* 197541 */ GIR_Done, |
| 69931 | /* 197542 */ // Label 4412: @197542 |
| 69932 | /* 197542 */ GIM_Try, /*On fail goto*//*Label 4413*/ GIMT_Encode4(197565), // Rule ID 13330 // |
| 69933 | /* 197547 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69934 | /* 197550 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69935 | /* 197554 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69936 | /* 197558 */ // (abs:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1) => (VPABSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1) |
| 69937 | /* 197558 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSBZ128rr), |
| 69938 | /* 197563 */ GIR_RootConstrainSelectedInstOperands, |
| 69939 | /* 197564 */ // GIR_Coverage, 13330, |
| 69940 | /* 197564 */ GIR_Done, |
| 69941 | /* 197565 */ // Label 4413: @197565 |
| 69942 | /* 197565 */ GIM_Reject, |
| 69943 | /* 197566 */ // Label 4408: @197566 |
| 69944 | /* 197566 */ GIM_Reject, |
| 69945 | /* 197567 */ // Label 4374: @197567 |
| 69946 | /* 197567 */ GIM_Try, /*On fail goto*//*Label 4414*/ GIMT_Encode4(197734), |
| 69947 | /* 197572 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 69948 | /* 197575 */ GIM_Try, /*On fail goto*//*Label 4415*/ GIMT_Encode4(197631), // Rule ID 2999 // |
| 69949 | /* 197580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69950 | /* 197583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69951 | /* 197587 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69952 | /* 197591 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69953 | /* 197595 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69954 | /* 197598 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69955 | /* 197602 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69956 | /* 197606 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69957 | /* 197608 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69958 | /* 197615 */ // (abs:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSWYrm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 69959 | /* 197615 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSWYrm), |
| 69960 | /* 197618 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69961 | /* 197620 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69962 | /* 197624 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69963 | /* 197629 */ GIR_RootConstrainSelectedInstOperands, |
| 69964 | /* 197630 */ // GIR_Coverage, 2999, |
| 69965 | /* 197630 */ GIR_EraseRootFromParent_Done, |
| 69966 | /* 197631 */ // Label 4415: @197631 |
| 69967 | /* 197631 */ GIM_Try, /*On fail goto*//*Label 4416*/ GIMT_Encode4(197687), // Rule ID 13309 // |
| 69968 | /* 197636 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69969 | /* 197639 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69970 | /* 197643 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69971 | /* 197647 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69972 | /* 197651 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69973 | /* 197654 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69974 | /* 197658 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69975 | /* 197662 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69976 | /* 197664 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69977 | /* 197671 */ // (abs:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSWZ256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src1) |
| 69978 | /* 197671 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSWZ256rm), |
| 69979 | /* 197674 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69980 | /* 197676 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69981 | /* 197680 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69982 | /* 197685 */ GIR_RootConstrainSelectedInstOperands, |
| 69983 | /* 197686 */ // GIR_Coverage, 13309, |
| 69984 | /* 197686 */ GIR_EraseRootFromParent_Done, |
| 69985 | /* 197687 */ // Label 4416: @197687 |
| 69986 | /* 197687 */ GIM_Try, /*On fail goto*//*Label 4417*/ GIMT_Encode4(197710), // Rule ID 2998 // |
| 69987 | /* 197692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69988 | /* 197695 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69989 | /* 197699 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69990 | /* 197703 */ // (abs:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src) => (VPABSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src) |
| 69991 | /* 197703 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSWYrr), |
| 69992 | /* 197708 */ GIR_RootConstrainSelectedInstOperands, |
| 69993 | /* 197709 */ // GIR_Coverage, 2998, |
| 69994 | /* 197709 */ GIR_Done, |
| 69995 | /* 197710 */ // Label 4417: @197710 |
| 69996 | /* 197710 */ GIM_Try, /*On fail goto*//*Label 4418*/ GIMT_Encode4(197733), // Rule ID 13306 // |
| 69997 | /* 197715 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69998 | /* 197718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69999 | /* 197722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70000 | /* 197726 */ // (abs:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1) => (VPABSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1) |
| 70001 | /* 197726 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSWZ256rr), |
| 70002 | /* 197731 */ GIR_RootConstrainSelectedInstOperands, |
| 70003 | /* 197732 */ // GIR_Coverage, 13306, |
| 70004 | /* 197732 */ GIR_Done, |
| 70005 | /* 197733 */ // Label 4418: @197733 |
| 70006 | /* 197733 */ GIM_Reject, |
| 70007 | /* 197734 */ // Label 4414: @197734 |
| 70008 | /* 197734 */ GIM_Reject, |
| 70009 | /* 197735 */ // Label 4375: @197735 |
| 70010 | /* 197735 */ GIM_Try, /*On fail goto*//*Label 4419*/ GIMT_Encode4(197819), |
| 70011 | /* 197740 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70012 | /* 197743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70013 | /* 197747 */ GIM_Try, /*On fail goto*//*Label 4420*/ GIMT_Encode4(197799), // Rule ID 13276 // |
| 70014 | /* 197752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 70015 | /* 197755 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 70016 | /* 197759 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 70017 | /* 197763 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 70018 | /* 197766 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 70019 | /* 197770 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 70020 | /* 197774 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70021 | /* 197776 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 70022 | /* 197783 */ // (abs:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1) |
| 70023 | /* 197783 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSDZrm), |
| 70024 | /* 197786 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70025 | /* 197788 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 70026 | /* 197792 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 70027 | /* 197797 */ GIR_RootConstrainSelectedInstOperands, |
| 70028 | /* 197798 */ // GIR_Coverage, 13276, |
| 70029 | /* 197798 */ GIR_EraseRootFromParent_Done, |
| 70030 | /* 197799 */ // Label 4420: @197799 |
| 70031 | /* 197799 */ GIM_Try, /*On fail goto*//*Label 4421*/ GIMT_Encode4(197818), // Rule ID 13273 // |
| 70032 | /* 197804 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 70033 | /* 197807 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70034 | /* 197811 */ // (abs:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) => (VPABSDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) |
| 70035 | /* 197811 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSDZrr), |
| 70036 | /* 197816 */ GIR_RootConstrainSelectedInstOperands, |
| 70037 | /* 197817 */ // GIR_Coverage, 13273, |
| 70038 | /* 197817 */ GIR_Done, |
| 70039 | /* 197818 */ // Label 4421: @197818 |
| 70040 | /* 197818 */ GIM_Reject, |
| 70041 | /* 197819 */ // Label 4419: @197819 |
| 70042 | /* 197819 */ GIM_Reject, |
| 70043 | /* 197820 */ // Label 4376: @197820 |
| 70044 | /* 197820 */ GIM_Try, /*On fail goto*//*Label 4422*/ GIMT_Encode4(197987), |
| 70045 | /* 197825 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 70046 | /* 197828 */ GIM_Try, /*On fail goto*//*Label 4423*/ GIMT_Encode4(197884), // Rule ID 2997 // |
| 70047 | /* 197833 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 70048 | /* 197836 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70049 | /* 197840 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 70050 | /* 197844 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 70051 | /* 197848 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 70052 | /* 197851 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 70053 | /* 197855 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 70054 | /* 197859 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70055 | /* 197861 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 70056 | /* 197868 */ // (abs:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSBYrm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 70057 | /* 197868 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSBYrm), |
| 70058 | /* 197871 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70059 | /* 197873 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 70060 | /* 197877 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 70061 | /* 197882 */ GIR_RootConstrainSelectedInstOperands, |
| 70062 | /* 197883 */ // GIR_Coverage, 2997, |
| 70063 | /* 197883 */ GIR_EraseRootFromParent_Done, |
| 70064 | /* 197884 */ // Label 4423: @197884 |
| 70065 | /* 197884 */ GIM_Try, /*On fail goto*//*Label 4424*/ GIMT_Encode4(197940), // Rule ID 13327 // |
| 70066 | /* 197889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 70067 | /* 197892 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70068 | /* 197896 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 70069 | /* 197900 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 70070 | /* 197904 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 70071 | /* 197907 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 70072 | /* 197911 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 70073 | /* 197915 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70074 | /* 197917 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 70075 | /* 197924 */ // (abs:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSBZ256rm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src1) |
| 70076 | /* 197924 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSBZ256rm), |
| 70077 | /* 197927 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70078 | /* 197929 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 70079 | /* 197933 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 70080 | /* 197938 */ GIR_RootConstrainSelectedInstOperands, |
| 70081 | /* 197939 */ // GIR_Coverage, 13327, |
| 70082 | /* 197939 */ GIR_EraseRootFromParent_Done, |
| 70083 | /* 197940 */ // Label 4424: @197940 |
| 70084 | /* 197940 */ GIM_Try, /*On fail goto*//*Label 4425*/ GIMT_Encode4(197963), // Rule ID 2996 // |
| 70085 | /* 197945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 70086 | /* 197948 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70087 | /* 197952 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70088 | /* 197956 */ // (abs:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src) => (VPABSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src) |
| 70089 | /* 197956 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSBYrr), |
| 70090 | /* 197961 */ GIR_RootConstrainSelectedInstOperands, |
| 70091 | /* 197962 */ // GIR_Coverage, 2996, |
| 70092 | /* 197962 */ GIR_Done, |
| 70093 | /* 197963 */ // Label 4425: @197963 |
| 70094 | /* 197963 */ GIM_Try, /*On fail goto*//*Label 4426*/ GIMT_Encode4(197986), // Rule ID 13324 // |
| 70095 | /* 197968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 70096 | /* 197971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70097 | /* 197975 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70098 | /* 197979 */ // (abs:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1) => (VPABSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1) |
| 70099 | /* 197979 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSBZ256rr), |
| 70100 | /* 197984 */ GIR_RootConstrainSelectedInstOperands, |
| 70101 | /* 197985 */ // GIR_Coverage, 13324, |
| 70102 | /* 197985 */ GIR_Done, |
| 70103 | /* 197986 */ // Label 4426: @197986 |
| 70104 | /* 197986 */ GIM_Reject, |
| 70105 | /* 197987 */ // Label 4422: @197987 |
| 70106 | /* 197987 */ GIM_Reject, |
| 70107 | /* 197988 */ // Label 4377: @197988 |
| 70108 | /* 197988 */ GIM_Try, /*On fail goto*//*Label 4427*/ GIMT_Encode4(198072), |
| 70109 | /* 197993 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70110 | /* 197996 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70111 | /* 198000 */ GIM_Try, /*On fail goto*//*Label 4428*/ GIMT_Encode4(198052), // Rule ID 13303 // |
| 70112 | /* 198005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 70113 | /* 198008 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 70114 | /* 198012 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 70115 | /* 198016 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 70116 | /* 198019 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 70117 | /* 198023 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 70118 | /* 198027 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70119 | /* 198029 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 70120 | /* 198036 */ // (abs:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSWZrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src1) |
| 70121 | /* 198036 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSWZrm), |
| 70122 | /* 198039 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70123 | /* 198041 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 70124 | /* 198045 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 70125 | /* 198050 */ GIR_RootConstrainSelectedInstOperands, |
| 70126 | /* 198051 */ // GIR_Coverage, 13303, |
| 70127 | /* 198051 */ GIR_EraseRootFromParent_Done, |
| 70128 | /* 198052 */ // Label 4428: @198052 |
| 70129 | /* 198052 */ GIM_Try, /*On fail goto*//*Label 4429*/ GIMT_Encode4(198071), // Rule ID 13300 // |
| 70130 | /* 198057 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 70131 | /* 198060 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70132 | /* 198064 */ // (abs:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1) => (VPABSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1) |
| 70133 | /* 198064 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSWZrr), |
| 70134 | /* 198069 */ GIR_RootConstrainSelectedInstOperands, |
| 70135 | /* 198070 */ // GIR_Coverage, 13300, |
| 70136 | /* 198070 */ GIR_Done, |
| 70137 | /* 198071 */ // Label 4429: @198071 |
| 70138 | /* 198071 */ GIM_Reject, |
| 70139 | /* 198072 */ // Label 4427: @198072 |
| 70140 | /* 198072 */ GIM_Reject, |
| 70141 | /* 198073 */ // Label 4378: @198073 |
| 70142 | /* 198073 */ GIM_Try, /*On fail goto*//*Label 4430*/ GIMT_Encode4(198157), |
| 70143 | /* 198078 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 70144 | /* 198081 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70145 | /* 198085 */ GIM_Try, /*On fail goto*//*Label 4431*/ GIMT_Encode4(198137), // Rule ID 13321 // |
| 70146 | /* 198090 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 70147 | /* 198093 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 70148 | /* 198097 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 70149 | /* 198101 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 70150 | /* 198104 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 70151 | /* 198108 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 70152 | /* 198112 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70153 | /* 198114 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 70154 | /* 198121 */ // (abs:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSBZrm:{ *:[v64i8] } addr:{ *:[iPTR] }:$src1) |
| 70155 | /* 198121 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSBZrm), |
| 70156 | /* 198124 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70157 | /* 198126 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 70158 | /* 198130 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 70159 | /* 198135 */ GIR_RootConstrainSelectedInstOperands, |
| 70160 | /* 198136 */ // GIR_Coverage, 13321, |
| 70161 | /* 198136 */ GIR_EraseRootFromParent_Done, |
| 70162 | /* 198137 */ // Label 4431: @198137 |
| 70163 | /* 198137 */ GIM_Try, /*On fail goto*//*Label 4432*/ GIMT_Encode4(198156), // Rule ID 13318 // |
| 70164 | /* 198142 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 70165 | /* 198145 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70166 | /* 198149 */ // (abs:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1) => (VPABSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1) |
| 70167 | /* 198149 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSBZrr), |
| 70168 | /* 198154 */ GIR_RootConstrainSelectedInstOperands, |
| 70169 | /* 198155 */ // GIR_Coverage, 13318, |
| 70170 | /* 198155 */ GIR_Done, |
| 70171 | /* 198156 */ // Label 4432: @198156 |
| 70172 | /* 198156 */ GIM_Reject, |
| 70173 | /* 198157 */ // Label 4430: @198157 |
| 70174 | /* 198157 */ GIM_Reject, |
| 70175 | /* 198158 */ // Label 4379: @198158 |
| 70176 | /* 198158 */ GIM_Reject, |
| 70177 | /* 198159 */ // Label 59: @198159 |
| 70178 | /* 198159 */ GIM_Try, /*On fail goto*//*Label 4433*/ GIMT_Encode4(198174), // Rule ID 630 // |
| 70179 | /* 198164 */ // MIs[0] dst |
| 70180 | /* 198164 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/0, |
| 70181 | /* 198167 */ // (br (bb:{ *:[Other] }):$dst) => (JMP_1 (bb:{ *:[Other] }):$dst) |
| 70182 | /* 198167 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::JMP_1), |
| 70183 | /* 198172 */ GIR_RootConstrainSelectedInstOperands, |
| 70184 | /* 198173 */ // GIR_Coverage, 630, |
| 70185 | /* 198173 */ GIR_Done, |
| 70186 | /* 198174 */ // Label 4433: @198174 |
| 70187 | /* 198174 */ GIM_Reject, |
| 70188 | /* 198175 */ // Label 60: @198175 |
| 70189 | /* 198175 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(22), /*)*//*default:*//*Label 4448*/ GIMT_Encode4(201103), |
| 70190 | /* 198186 */ /*GILLT_s1*//*Label 4434*/ GIMT_Encode4(198274), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 70191 | /* 198214 */ /*GILLT_v2s1*//*Label 4435*/ GIMT_Encode4(198515), |
| 70192 | /* 198218 */ /*GILLT_v2s64*//*Label 4436*/ GIMT_Encode4(198716), |
| 70193 | /* 198222 */ /*GILLT_v4s1*//*Label 4437*/ GIMT_Encode4(199197), |
| 70194 | /* 198226 */ /*GILLT_v4s32*//*Label 4438*/ GIMT_Encode4(199358), |
| 70195 | /* 198230 */ /*GILLT_v4s64*//*Label 4439*/ GIMT_Encode4(199839), |
| 70196 | /* 198234 */ /*GILLT_v8s1*//*Label 4440*/ GIMT_Encode4(199922), |
| 70197 | /* 198238 */ /*GILLT_v8s16*//*Label 4441*/ GIMT_Encode4(200043), |
| 70198 | /* 198242 */ /*GILLT_v8s32*//*Label 4442*/ GIMT_Encode4(200524), GIMT_Encode4(0), |
| 70199 | /* 198250 */ /*GILLT_v16s1*//*Label 4443*/ GIMT_Encode4(200607), |
| 70200 | /* 198254 */ /*GILLT_v16s8*//*Label 4444*/ GIMT_Encode4(200688), |
| 70201 | /* 198258 */ /*GILLT_v16s16*//*Label 4445*/ GIMT_Encode4(200929), GIMT_Encode4(0), |
| 70202 | /* 198266 */ /*GILLT_v32s1*//*Label 4446*/ GIMT_Encode4(201012), |
| 70203 | /* 198270 */ /*GILLT_v32s8*//*Label 4447*/ GIMT_Encode4(201053), |
| 70204 | /* 198274 */ // Label 4434: @198274 |
| 70205 | /* 198274 */ GIM_Try, /*On fail goto*//*Label 4449*/ GIMT_Encode4(198314), // Rule ID 19602 // |
| 70206 | /* 198279 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 70207 | /* 198282 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 70208 | /* 198286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 70209 | /* 198290 */ // MIs[0] Operand 2 |
| 70210 | /* 198290 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70211 | /* 198301 */ // (extract_subvector:{ *:[v1i1] } VK2:{ *:[v2i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK2:{ *:[v2i1] }:$src, VK1:{ *:[i32] }) |
| 70212 | /* 198301 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70213 | /* 198304 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70214 | /* 198306 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70215 | /* 198308 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 70216 | /* 198313 */ // GIR_Coverage, 19602, |
| 70217 | /* 198313 */ GIR_EraseRootFromParent_Done, |
| 70218 | /* 198314 */ // Label 4449: @198314 |
| 70219 | /* 198314 */ GIM_Try, /*On fail goto*//*Label 4450*/ GIMT_Encode4(198354), // Rule ID 19604 // |
| 70220 | /* 198319 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 70221 | /* 198322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 70222 | /* 198326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 70223 | /* 198330 */ // MIs[0] Operand 2 |
| 70224 | /* 198330 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70225 | /* 198341 */ // (extract_subvector:{ *:[v1i1] } VK4:{ *:[v4i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK4:{ *:[v4i1] }:$src, VK1:{ *:[i32] }) |
| 70226 | /* 198341 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70227 | /* 198344 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70228 | /* 198346 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70229 | /* 198348 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 70230 | /* 198353 */ // GIR_Coverage, 19604, |
| 70231 | /* 198353 */ GIR_EraseRootFromParent_Done, |
| 70232 | /* 198354 */ // Label 4450: @198354 |
| 70233 | /* 198354 */ GIM_Try, /*On fail goto*//*Label 4451*/ GIMT_Encode4(198394), // Rule ID 19606 // |
| 70234 | /* 198359 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 70235 | /* 198362 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 70236 | /* 198366 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 70237 | /* 198370 */ // MIs[0] Operand 2 |
| 70238 | /* 198370 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70239 | /* 198381 */ // (extract_subvector:{ *:[v1i1] } VK8:{ *:[v8i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK8:{ *:[v8i1] }:$src, VK1:{ *:[i32] }) |
| 70240 | /* 198381 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70241 | /* 198384 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70242 | /* 198386 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70243 | /* 198388 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 70244 | /* 198393 */ // GIR_Coverage, 19606, |
| 70245 | /* 198393 */ GIR_EraseRootFromParent_Done, |
| 70246 | /* 198394 */ // Label 4451: @198394 |
| 70247 | /* 198394 */ GIM_Try, /*On fail goto*//*Label 4452*/ GIMT_Encode4(198434), // Rule ID 19608 // |
| 70248 | /* 198399 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 70249 | /* 198402 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 70250 | /* 198406 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 70251 | /* 198410 */ // MIs[0] Operand 2 |
| 70252 | /* 198410 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70253 | /* 198421 */ // (extract_subvector:{ *:[v1i1] } VK16:{ *:[v16i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK16:{ *:[v16i1] }:$src, VK1:{ *:[i32] }) |
| 70254 | /* 198421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70255 | /* 198424 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70256 | /* 198426 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70257 | /* 198428 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 70258 | /* 198433 */ // GIR_Coverage, 19608, |
| 70259 | /* 198433 */ GIR_EraseRootFromParent_Done, |
| 70260 | /* 198434 */ // Label 4452: @198434 |
| 70261 | /* 198434 */ GIM_Try, /*On fail goto*//*Label 4453*/ GIMT_Encode4(198474), // Rule ID 19610 // |
| 70262 | /* 198439 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 70263 | /* 198442 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 70264 | /* 198446 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 70265 | /* 198450 */ // MIs[0] Operand 2 |
| 70266 | /* 198450 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70267 | /* 198461 */ // (extract_subvector:{ *:[v1i1] } VK32:{ *:[v32i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK32:{ *:[v32i1] }:$src, VK1:{ *:[i32] }) |
| 70268 | /* 198461 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70269 | /* 198464 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70270 | /* 198466 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70271 | /* 198468 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 70272 | /* 198473 */ // GIR_Coverage, 19610, |
| 70273 | /* 198473 */ GIR_EraseRootFromParent_Done, |
| 70274 | /* 198474 */ // Label 4453: @198474 |
| 70275 | /* 198474 */ GIM_Try, /*On fail goto*//*Label 4454*/ GIMT_Encode4(198514), // Rule ID 19612 // |
| 70276 | /* 198479 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 70277 | /* 198482 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 70278 | /* 198486 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 70279 | /* 198490 */ // MIs[0] Operand 2 |
| 70280 | /* 198490 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70281 | /* 198501 */ // (extract_subvector:{ *:[v1i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK64:{ *:[v64i1] }:$src, VK1:{ *:[i32] }) |
| 70282 | /* 198501 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70283 | /* 198504 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70284 | /* 198506 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70285 | /* 198508 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 70286 | /* 198513 */ // GIR_Coverage, 19612, |
| 70287 | /* 198513 */ GIR_EraseRootFromParent_Done, |
| 70288 | /* 198514 */ // Label 4454: @198514 |
| 70289 | /* 198514 */ GIM_Reject, |
| 70290 | /* 198515 */ // Label 4435: @198515 |
| 70291 | /* 198515 */ GIM_Try, /*On fail goto*//*Label 4455*/ GIMT_Encode4(198555), // Rule ID 19614 // |
| 70292 | /* 198520 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 70293 | /* 198523 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 70294 | /* 198527 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 70295 | /* 198531 */ // MIs[0] Operand 2 |
| 70296 | /* 198531 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70297 | /* 198542 */ // (extract_subvector:{ *:[v2i1] } VK4:{ *:[v4i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } VK4:{ *:[v4i1] }:$src, VK2:{ *:[i32] }) |
| 70298 | /* 198542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70299 | /* 198545 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70300 | /* 198547 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70301 | /* 198549 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 70302 | /* 198554 */ // GIR_Coverage, 19614, |
| 70303 | /* 198554 */ GIR_EraseRootFromParent_Done, |
| 70304 | /* 198555 */ // Label 4455: @198555 |
| 70305 | /* 198555 */ GIM_Try, /*On fail goto*//*Label 4456*/ GIMT_Encode4(198595), // Rule ID 19616 // |
| 70306 | /* 198560 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 70307 | /* 198563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 70308 | /* 198567 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 70309 | /* 198571 */ // MIs[0] Operand 2 |
| 70310 | /* 198571 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70311 | /* 198582 */ // (extract_subvector:{ *:[v2i1] } VK8:{ *:[v8i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } VK8:{ *:[v8i1] }:$src, VK2:{ *:[i32] }) |
| 70312 | /* 198582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70313 | /* 198585 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70314 | /* 198587 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70315 | /* 198589 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 70316 | /* 198594 */ // GIR_Coverage, 19616, |
| 70317 | /* 198594 */ GIR_EraseRootFromParent_Done, |
| 70318 | /* 198595 */ // Label 4456: @198595 |
| 70319 | /* 198595 */ GIM_Try, /*On fail goto*//*Label 4457*/ GIMT_Encode4(198635), // Rule ID 19618 // |
| 70320 | /* 198600 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 70321 | /* 198603 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 70322 | /* 198607 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 70323 | /* 198611 */ // MIs[0] Operand 2 |
| 70324 | /* 198611 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70325 | /* 198622 */ // (extract_subvector:{ *:[v2i1] } VK16:{ *:[v16i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } VK16:{ *:[v16i1] }:$src, VK2:{ *:[i32] }) |
| 70326 | /* 198622 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70327 | /* 198625 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70328 | /* 198627 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70329 | /* 198629 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 70330 | /* 198634 */ // GIR_Coverage, 19618, |
| 70331 | /* 198634 */ GIR_EraseRootFromParent_Done, |
| 70332 | /* 198635 */ // Label 4457: @198635 |
| 70333 | /* 198635 */ GIM_Try, /*On fail goto*//*Label 4458*/ GIMT_Encode4(198675), // Rule ID 19620 // |
| 70334 | /* 198640 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 70335 | /* 198643 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 70336 | /* 198647 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 70337 | /* 198651 */ // MIs[0] Operand 2 |
| 70338 | /* 198651 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70339 | /* 198662 */ // (extract_subvector:{ *:[v2i1] } VK32:{ *:[v32i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } VK32:{ *:[v32i1] }:$src, VK2:{ *:[i32] }) |
| 70340 | /* 198662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70341 | /* 198665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70342 | /* 198667 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70343 | /* 198669 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 70344 | /* 198674 */ // GIR_Coverage, 19620, |
| 70345 | /* 198674 */ GIR_EraseRootFromParent_Done, |
| 70346 | /* 198675 */ // Label 4458: @198675 |
| 70347 | /* 198675 */ GIM_Try, /*On fail goto*//*Label 4459*/ GIMT_Encode4(198715), // Rule ID 19622 // |
| 70348 | /* 198680 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 70349 | /* 198683 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 70350 | /* 198687 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 70351 | /* 198691 */ // MIs[0] Operand 2 |
| 70352 | /* 198691 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70353 | /* 198702 */ // (extract_subvector:{ *:[v2i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } VK64:{ *:[v64i1] }:$src, VK2:{ *:[i32] }) |
| 70354 | /* 198702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70355 | /* 198705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70356 | /* 198707 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70357 | /* 198709 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 70358 | /* 198714 */ // GIR_Coverage, 19622, |
| 70359 | /* 198714 */ GIR_EraseRootFromParent_Done, |
| 70360 | /* 198715 */ // Label 4459: @198715 |
| 70361 | /* 198715 */ GIM_Reject, |
| 70362 | /* 198716 */ // Label 4436: @198716 |
| 70363 | /* 198716 */ GIM_Try, /*On fail goto*//*Label 4460*/ GIMT_Encode4(198787), // Rule ID 19053 // |
| 70364 | /* 198721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_NoVLX), |
| 70365 | /* 198724 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 70366 | /* 198727 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70367 | /* 198731 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70368 | /* 198735 */ // MIs[0] Operand 2 |
| 70369 | /* 198735 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2), |
| 70370 | /* 198746 */ // (extract_subvector:{ *:[v2i64] } VR512:{ *:[v8i64] }:$src, 2:{ *:[iPTR] }) => (VEXTRACTI128rri:{ *:[v2i64] } (EXTRACT_SUBREG:{ *:[v4i64] } VR512:{ *:[v8i64] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70371 | /* 198746 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s64, |
| 70372 | /* 198749 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70373 | /* 198753 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70374 | /* 198758 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70375 | /* 198764 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70376 | /* 198769 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70377 | /* 198774 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI128rri), |
| 70378 | /* 198777 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70379 | /* 198779 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70380 | /* 198782 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70381 | /* 198785 */ GIR_RootConstrainSelectedInstOperands, |
| 70382 | /* 198786 */ // GIR_Coverage, 19053, |
| 70383 | /* 198786 */ GIR_EraseRootFromParent_Done, |
| 70384 | /* 198787 */ // Label 4460: @198787 |
| 70385 | /* 198787 */ GIM_Try, /*On fail goto*//*Label 4461*/ GIMT_Encode4(198858), // Rule ID 19054 // |
| 70386 | /* 198792 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_NoVLX), |
| 70387 | /* 198795 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 70388 | /* 198798 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70389 | /* 198802 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70390 | /* 198806 */ // MIs[0] Operand 2 |
| 70391 | /* 198806 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2), |
| 70392 | /* 198817 */ // (extract_subvector:{ *:[v2f64] } VR512:{ *:[v8f64] }:$src, 2:{ *:[iPTR] }) => (VEXTRACTF128rri:{ *:[v2f64] } (EXTRACT_SUBREG:{ *:[v4f64] } VR512:{ *:[v8f64] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70393 | /* 198817 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s64, |
| 70394 | /* 198820 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70395 | /* 198824 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70396 | /* 198829 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70397 | /* 198835 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70398 | /* 198840 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70399 | /* 198845 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF128rri), |
| 70400 | /* 198848 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70401 | /* 198850 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70402 | /* 198853 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70403 | /* 198856 */ GIR_RootConstrainSelectedInstOperands, |
| 70404 | /* 198857 */ // GIR_Coverage, 19054, |
| 70405 | /* 198857 */ GIR_EraseRootFromParent_Done, |
| 70406 | /* 198858 */ // Label 4461: @198858 |
| 70407 | /* 198858 */ GIM_Try, /*On fail goto*//*Label 4462*/ GIMT_Encode4(198929), // Rule ID 19060 // |
| 70408 | /* 198863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70409 | /* 198866 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 70410 | /* 198869 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70411 | /* 198873 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70412 | /* 198877 */ // MIs[0] Operand 2 |
| 70413 | /* 198877 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2), |
| 70414 | /* 198888 */ // (extract_subvector:{ *:[v2i64] } VR512:{ *:[v8i64] }:$src, 2:{ *:[iPTR] }) => (VEXTRACTI32X4Z256rri:{ *:[v2i64] } (EXTRACT_SUBREG:{ *:[v4i64] } VR512:{ *:[v8i64] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70415 | /* 198888 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s64, |
| 70416 | /* 198891 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70417 | /* 198895 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70418 | /* 198900 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70419 | /* 198906 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70420 | /* 198911 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70421 | /* 198916 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI32X4Z256rri), |
| 70422 | /* 198919 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70423 | /* 198921 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70424 | /* 198924 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70425 | /* 198927 */ GIR_RootConstrainSelectedInstOperands, |
| 70426 | /* 198928 */ // GIR_Coverage, 19060, |
| 70427 | /* 198928 */ GIR_EraseRootFromParent_Done, |
| 70428 | /* 198929 */ // Label 4462: @198929 |
| 70429 | /* 198929 */ GIM_Try, /*On fail goto*//*Label 4463*/ GIMT_Encode4(199000), // Rule ID 19061 // |
| 70430 | /* 198934 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70431 | /* 198937 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 70432 | /* 198940 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70433 | /* 198944 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70434 | /* 198948 */ // MIs[0] Operand 2 |
| 70435 | /* 198948 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2), |
| 70436 | /* 198959 */ // (extract_subvector:{ *:[v2f64] } VR512:{ *:[v8f64] }:$src, 2:{ *:[iPTR] }) => (VEXTRACTF32X4Z256rri:{ *:[v2f64] } (EXTRACT_SUBREG:{ *:[v4f64] } VR512:{ *:[v8f64] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70437 | /* 198959 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s64, |
| 70438 | /* 198962 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70439 | /* 198966 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70440 | /* 198971 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70441 | /* 198977 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70442 | /* 198982 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70443 | /* 198987 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF32X4Z256rri), |
| 70444 | /* 198990 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70445 | /* 198992 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70446 | /* 198995 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70447 | /* 198998 */ GIR_RootConstrainSelectedInstOperands, |
| 70448 | /* 198999 */ // GIR_Coverage, 19061, |
| 70449 | /* 198999 */ GIR_EraseRootFromParent_Done, |
| 70450 | /* 199000 */ // Label 4463: @199000 |
| 70451 | /* 199000 */ GIM_Try, /*On fail goto*//*Label 4464*/ GIMT_Encode4(199049), // Rule ID 23007 // |
| 70452 | /* 199005 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 70453 | /* 199008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70454 | /* 199012 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70455 | /* 199016 */ // MIs[0] Operand 2 |
| 70456 | /* 199016 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70457 | /* 199027 */ // (extract_subvector:{ *:[v2i64] } VR256:{ *:[v4i64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v2i64] } VR256:{ *:[v4i64] }:$src, sub_xmm:{ *:[i32] }) |
| 70458 | /* 199027 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70459 | /* 199030 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70460 | /* 199032 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70461 | /* 199038 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70462 | /* 199043 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70463 | /* 199048 */ // GIR_Coverage, 23007, |
| 70464 | /* 199048 */ GIR_EraseRootFromParent_Done, |
| 70465 | /* 199049 */ // Label 4464: @199049 |
| 70466 | /* 199049 */ GIM_Try, /*On fail goto*//*Label 4465*/ GIMT_Encode4(199098), // Rule ID 23010 // |
| 70467 | /* 199054 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 70468 | /* 199057 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70469 | /* 199061 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70470 | /* 199065 */ // MIs[0] Operand 2 |
| 70471 | /* 199065 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70472 | /* 199076 */ // (extract_subvector:{ *:[v2f64] } VR256:{ *:[v4f64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v2f64] } VR256:{ *:[v4f64] }:$src, sub_xmm:{ *:[i32] }) |
| 70473 | /* 199076 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70474 | /* 199079 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70475 | /* 199081 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70476 | /* 199087 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70477 | /* 199092 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70478 | /* 199097 */ // GIR_Coverage, 23010, |
| 70479 | /* 199097 */ GIR_EraseRootFromParent_Done, |
| 70480 | /* 199098 */ // Label 4465: @199098 |
| 70481 | /* 199098 */ GIM_Try, /*On fail goto*//*Label 4466*/ GIMT_Encode4(199147), // Rule ID 23028 // |
| 70482 | /* 199103 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 70483 | /* 199106 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70484 | /* 199110 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70485 | /* 199114 */ // MIs[0] Operand 2 |
| 70486 | /* 199114 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70487 | /* 199125 */ // (extract_subvector:{ *:[v2i64] } VR512:{ *:[v8i64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v2i64] } VR512:{ *:[v8i64] }:$src, sub_xmm:{ *:[i32] }) |
| 70488 | /* 199125 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70489 | /* 199128 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70490 | /* 199130 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70491 | /* 199136 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70492 | /* 199141 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70493 | /* 199146 */ // GIR_Coverage, 23028, |
| 70494 | /* 199146 */ GIR_EraseRootFromParent_Done, |
| 70495 | /* 199147 */ // Label 4466: @199147 |
| 70496 | /* 199147 */ GIM_Try, /*On fail goto*//*Label 4467*/ GIMT_Encode4(199196), // Rule ID 23031 // |
| 70497 | /* 199152 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 70498 | /* 199155 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70499 | /* 199159 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70500 | /* 199163 */ // MIs[0] Operand 2 |
| 70501 | /* 199163 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70502 | /* 199174 */ // (extract_subvector:{ *:[v2f64] } VR512:{ *:[v8f64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v2f64] } VR512:{ *:[v8f64] }:$src, sub_xmm:{ *:[i32] }) |
| 70503 | /* 199174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70504 | /* 199177 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70505 | /* 199179 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70506 | /* 199185 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70507 | /* 199190 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70508 | /* 199195 */ // GIR_Coverage, 23031, |
| 70509 | /* 199195 */ GIR_EraseRootFromParent_Done, |
| 70510 | /* 199196 */ // Label 4467: @199196 |
| 70511 | /* 199196 */ GIM_Reject, |
| 70512 | /* 199197 */ // Label 4437: @199197 |
| 70513 | /* 199197 */ GIM_Try, /*On fail goto*//*Label 4468*/ GIMT_Encode4(199237), // Rule ID 19624 // |
| 70514 | /* 199202 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 70515 | /* 199205 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 70516 | /* 199209 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 70517 | /* 199213 */ // MIs[0] Operand 2 |
| 70518 | /* 199213 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70519 | /* 199224 */ // (extract_subvector:{ *:[v4i1] } VK8:{ *:[v8i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } VK8:{ *:[v8i1] }:$src, VK4:{ *:[i32] }) |
| 70520 | /* 199224 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70521 | /* 199227 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70522 | /* 199229 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70523 | /* 199231 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 70524 | /* 199236 */ // GIR_Coverage, 19624, |
| 70525 | /* 199236 */ GIR_EraseRootFromParent_Done, |
| 70526 | /* 199237 */ // Label 4468: @199237 |
| 70527 | /* 199237 */ GIM_Try, /*On fail goto*//*Label 4469*/ GIMT_Encode4(199277), // Rule ID 19626 // |
| 70528 | /* 199242 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 70529 | /* 199245 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 70530 | /* 199249 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 70531 | /* 199253 */ // MIs[0] Operand 2 |
| 70532 | /* 199253 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70533 | /* 199264 */ // (extract_subvector:{ *:[v4i1] } VK16:{ *:[v16i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } VK16:{ *:[v16i1] }:$src, VK4:{ *:[i32] }) |
| 70534 | /* 199264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70535 | /* 199267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70536 | /* 199269 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70537 | /* 199271 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 70538 | /* 199276 */ // GIR_Coverage, 19626, |
| 70539 | /* 199276 */ GIR_EraseRootFromParent_Done, |
| 70540 | /* 199277 */ // Label 4469: @199277 |
| 70541 | /* 199277 */ GIM_Try, /*On fail goto*//*Label 4470*/ GIMT_Encode4(199317), // Rule ID 19628 // |
| 70542 | /* 199282 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 70543 | /* 199285 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 70544 | /* 199289 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 70545 | /* 199293 */ // MIs[0] Operand 2 |
| 70546 | /* 199293 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70547 | /* 199304 */ // (extract_subvector:{ *:[v4i1] } VK32:{ *:[v32i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } VK32:{ *:[v32i1] }:$src, VK4:{ *:[i32] }) |
| 70548 | /* 199304 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70549 | /* 199307 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70550 | /* 199309 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70551 | /* 199311 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 70552 | /* 199316 */ // GIR_Coverage, 19628, |
| 70553 | /* 199316 */ GIR_EraseRootFromParent_Done, |
| 70554 | /* 199317 */ // Label 4470: @199317 |
| 70555 | /* 199317 */ GIM_Try, /*On fail goto*//*Label 4471*/ GIMT_Encode4(199357), // Rule ID 19630 // |
| 70556 | /* 199322 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 70557 | /* 199325 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 70558 | /* 199329 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 70559 | /* 199333 */ // MIs[0] Operand 2 |
| 70560 | /* 199333 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70561 | /* 199344 */ // (extract_subvector:{ *:[v4i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } VK64:{ *:[v64i1] }:$src, VK4:{ *:[i32] }) |
| 70562 | /* 199344 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70563 | /* 199347 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70564 | /* 199349 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70565 | /* 199351 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 70566 | /* 199356 */ // GIR_Coverage, 19630, |
| 70567 | /* 199356 */ GIR_EraseRootFromParent_Done, |
| 70568 | /* 199357 */ // Label 4471: @199357 |
| 70569 | /* 199357 */ GIM_Reject, |
| 70570 | /* 199358 */ // Label 4438: @199358 |
| 70571 | /* 199358 */ GIM_Try, /*On fail goto*//*Label 4472*/ GIMT_Encode4(199429), // Rule ID 19055 // |
| 70572 | /* 199363 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_NoVLX), |
| 70573 | /* 199366 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70574 | /* 199369 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70575 | /* 199373 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70576 | /* 199377 */ // MIs[0] Operand 2 |
| 70577 | /* 199377 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(4), |
| 70578 | /* 199388 */ // (extract_subvector:{ *:[v4i32] } VR512:{ *:[v16i32] }:$src, 4:{ *:[iPTR] }) => (VEXTRACTI128rri:{ *:[v4i32] } (EXTRACT_SUBREG:{ *:[v8i32] } VR512:{ *:[v16i32] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70579 | /* 199388 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 70580 | /* 199391 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70581 | /* 199395 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70582 | /* 199400 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70583 | /* 199406 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70584 | /* 199411 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70585 | /* 199416 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI128rri), |
| 70586 | /* 199419 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70587 | /* 199421 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70588 | /* 199424 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70589 | /* 199427 */ GIR_RootConstrainSelectedInstOperands, |
| 70590 | /* 199428 */ // GIR_Coverage, 19055, |
| 70591 | /* 199428 */ GIR_EraseRootFromParent_Done, |
| 70592 | /* 199429 */ // Label 4472: @199429 |
| 70593 | /* 199429 */ GIM_Try, /*On fail goto*//*Label 4473*/ GIMT_Encode4(199500), // Rule ID 19056 // |
| 70594 | /* 199434 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_NoVLX), |
| 70595 | /* 199437 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70596 | /* 199440 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70597 | /* 199444 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70598 | /* 199448 */ // MIs[0] Operand 2 |
| 70599 | /* 199448 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(4), |
| 70600 | /* 199459 */ // (extract_subvector:{ *:[v4f32] } VR512:{ *:[v16f32] }:$src, 4:{ *:[iPTR] }) => (VEXTRACTF128rri:{ *:[v4f32] } (EXTRACT_SUBREG:{ *:[v8f32] } VR512:{ *:[v16f32] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70601 | /* 199459 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 70602 | /* 199462 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70603 | /* 199466 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70604 | /* 199471 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70605 | /* 199477 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70606 | /* 199482 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70607 | /* 199487 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF128rri), |
| 70608 | /* 199490 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70609 | /* 199492 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70610 | /* 199495 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70611 | /* 199498 */ GIR_RootConstrainSelectedInstOperands, |
| 70612 | /* 199499 */ // GIR_Coverage, 19056, |
| 70613 | /* 199499 */ GIR_EraseRootFromParent_Done, |
| 70614 | /* 199500 */ // Label 4473: @199500 |
| 70615 | /* 199500 */ GIM_Try, /*On fail goto*//*Label 4474*/ GIMT_Encode4(199571), // Rule ID 19062 // |
| 70616 | /* 199505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70617 | /* 199508 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70618 | /* 199511 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70619 | /* 199515 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70620 | /* 199519 */ // MIs[0] Operand 2 |
| 70621 | /* 199519 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(4), |
| 70622 | /* 199530 */ // (extract_subvector:{ *:[v4i32] } VR512:{ *:[v16i32] }:$src, 4:{ *:[iPTR] }) => (VEXTRACTI32X4Z256rri:{ *:[v4i32] } (EXTRACT_SUBREG:{ *:[v8i32] } VR512:{ *:[v16i32] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70623 | /* 199530 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 70624 | /* 199533 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70625 | /* 199537 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70626 | /* 199542 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70627 | /* 199548 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70628 | /* 199553 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70629 | /* 199558 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI32X4Z256rri), |
| 70630 | /* 199561 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70631 | /* 199563 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70632 | /* 199566 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70633 | /* 199569 */ GIR_RootConstrainSelectedInstOperands, |
| 70634 | /* 199570 */ // GIR_Coverage, 19062, |
| 70635 | /* 199570 */ GIR_EraseRootFromParent_Done, |
| 70636 | /* 199571 */ // Label 4474: @199571 |
| 70637 | /* 199571 */ GIM_Try, /*On fail goto*//*Label 4475*/ GIMT_Encode4(199642), // Rule ID 19063 // |
| 70638 | /* 199576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70639 | /* 199579 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70640 | /* 199582 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70641 | /* 199586 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70642 | /* 199590 */ // MIs[0] Operand 2 |
| 70643 | /* 199590 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(4), |
| 70644 | /* 199601 */ // (extract_subvector:{ *:[v4f32] } VR512:{ *:[v16f32] }:$src, 4:{ *:[iPTR] }) => (VEXTRACTF32X4Z256rri:{ *:[v4f32] } (EXTRACT_SUBREG:{ *:[v8f32] } VR512:{ *:[v16f32] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70645 | /* 199601 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 70646 | /* 199604 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70647 | /* 199608 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70648 | /* 199613 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70649 | /* 199619 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70650 | /* 199624 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70651 | /* 199629 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF32X4Z256rri), |
| 70652 | /* 199632 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70653 | /* 199634 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70654 | /* 199637 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70655 | /* 199640 */ GIR_RootConstrainSelectedInstOperands, |
| 70656 | /* 199641 */ // GIR_Coverage, 19063, |
| 70657 | /* 199641 */ GIR_EraseRootFromParent_Done, |
| 70658 | /* 199642 */ // Label 4475: @199642 |
| 70659 | /* 199642 */ GIM_Try, /*On fail goto*//*Label 4476*/ GIMT_Encode4(199691), // Rule ID 23001 // |
| 70660 | /* 199647 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 70661 | /* 199650 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70662 | /* 199654 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70663 | /* 199658 */ // MIs[0] Operand 2 |
| 70664 | /* 199658 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70665 | /* 199669 */ // (extract_subvector:{ *:[v4i32] } VR256:{ *:[v8i32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4i32] } VR256:{ *:[v8i32] }:$src, sub_xmm:{ *:[i32] }) |
| 70666 | /* 199669 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70667 | /* 199672 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70668 | /* 199674 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70669 | /* 199680 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70670 | /* 199685 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70671 | /* 199690 */ // GIR_Coverage, 23001, |
| 70672 | /* 199690 */ GIR_EraseRootFromParent_Done, |
| 70673 | /* 199691 */ // Label 4476: @199691 |
| 70674 | /* 199691 */ GIM_Try, /*On fail goto*//*Label 4477*/ GIMT_Encode4(199740), // Rule ID 23004 // |
| 70675 | /* 199696 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 70676 | /* 199699 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70677 | /* 199703 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70678 | /* 199707 */ // MIs[0] Operand 2 |
| 70679 | /* 199707 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70680 | /* 199718 */ // (extract_subvector:{ *:[v4f32] } VR256:{ *:[v8f32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4f32] } VR256:{ *:[v8f32] }:$src, sub_xmm:{ *:[i32] }) |
| 70681 | /* 199718 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70682 | /* 199721 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70683 | /* 199723 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70684 | /* 199729 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70685 | /* 199734 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70686 | /* 199739 */ // GIR_Coverage, 23004, |
| 70687 | /* 199739 */ GIR_EraseRootFromParent_Done, |
| 70688 | /* 199740 */ // Label 4477: @199740 |
| 70689 | /* 199740 */ GIM_Try, /*On fail goto*//*Label 4478*/ GIMT_Encode4(199789), // Rule ID 23022 // |
| 70690 | /* 199745 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70691 | /* 199748 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70692 | /* 199752 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70693 | /* 199756 */ // MIs[0] Operand 2 |
| 70694 | /* 199756 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70695 | /* 199767 */ // (extract_subvector:{ *:[v4i32] } VR512:{ *:[v16i32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4i32] } VR512:{ *:[v16i32] }:$src, sub_xmm:{ *:[i32] }) |
| 70696 | /* 199767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70697 | /* 199770 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70698 | /* 199772 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70699 | /* 199778 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70700 | /* 199783 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70701 | /* 199788 */ // GIR_Coverage, 23022, |
| 70702 | /* 199788 */ GIR_EraseRootFromParent_Done, |
| 70703 | /* 199789 */ // Label 4478: @199789 |
| 70704 | /* 199789 */ GIM_Try, /*On fail goto*//*Label 4479*/ GIMT_Encode4(199838), // Rule ID 23025 // |
| 70705 | /* 199794 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70706 | /* 199797 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70707 | /* 199801 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70708 | /* 199805 */ // MIs[0] Operand 2 |
| 70709 | /* 199805 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70710 | /* 199816 */ // (extract_subvector:{ *:[v4f32] } VR512:{ *:[v16f32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4f32] } VR512:{ *:[v16f32] }:$src, sub_xmm:{ *:[i32] }) |
| 70711 | /* 199816 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70712 | /* 199819 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70713 | /* 199821 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70714 | /* 199827 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70715 | /* 199832 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70716 | /* 199837 */ // GIR_Coverage, 23025, |
| 70717 | /* 199837 */ GIR_EraseRootFromParent_Done, |
| 70718 | /* 199838 */ // Label 4479: @199838 |
| 70719 | /* 199838 */ GIM_Reject, |
| 70720 | /* 199839 */ // Label 4439: @199839 |
| 70721 | /* 199839 */ GIM_Try, /*On fail goto*//*Label 4480*/ GIMT_Encode4(199921), |
| 70722 | /* 199844 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 70723 | /* 199847 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70724 | /* 199851 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70725 | /* 199855 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70726 | /* 199866 */ GIM_Try, /*On fail goto*//*Label 4481*/ GIMT_Encode4(199893), // Rule ID 23049 // |
| 70727 | /* 199871 */ // (extract_subvector:{ *:[v4i64] } VR512:{ *:[v8i64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4i64] } VR512:{ *:[v8i64] }:$src, sub_ymm:{ *:[i32] }) |
| 70728 | /* 199871 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70729 | /* 199874 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70730 | /* 199876 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70731 | /* 199882 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70732 | /* 199887 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70733 | /* 199892 */ // GIR_Coverage, 23049, |
| 70734 | /* 199892 */ GIR_EraseRootFromParent_Done, |
| 70735 | /* 199893 */ // Label 4481: @199893 |
| 70736 | /* 199893 */ GIM_Try, /*On fail goto*//*Label 4482*/ GIMT_Encode4(199920), // Rule ID 23052 // |
| 70737 | /* 199898 */ // (extract_subvector:{ *:[v4f64] } VR512:{ *:[v8f64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4f64] } VR512:{ *:[v8f64] }:$src, sub_ymm:{ *:[i32] }) |
| 70738 | /* 199898 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70739 | /* 199901 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70740 | /* 199903 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70741 | /* 199909 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70742 | /* 199914 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70743 | /* 199919 */ // GIR_Coverage, 23052, |
| 70744 | /* 199919 */ GIR_EraseRootFromParent_Done, |
| 70745 | /* 199920 */ // Label 4482: @199920 |
| 70746 | /* 199920 */ GIM_Reject, |
| 70747 | /* 199921 */ // Label 4480: @199921 |
| 70748 | /* 199921 */ GIM_Reject, |
| 70749 | /* 199922 */ // Label 4440: @199922 |
| 70750 | /* 199922 */ GIM_Try, /*On fail goto*//*Label 4483*/ GIMT_Encode4(199962), // Rule ID 19632 // |
| 70751 | /* 199927 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 70752 | /* 199930 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 70753 | /* 199934 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 70754 | /* 199938 */ // MIs[0] Operand 2 |
| 70755 | /* 199938 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70756 | /* 199949 */ // (extract_subvector:{ *:[v8i1] } VK16:{ *:[v16i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } VK16:{ *:[v16i1] }:$src, VK8:{ *:[i32] }) |
| 70757 | /* 199949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70758 | /* 199952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70759 | /* 199954 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70760 | /* 199956 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 70761 | /* 199961 */ // GIR_Coverage, 19632, |
| 70762 | /* 199961 */ GIR_EraseRootFromParent_Done, |
| 70763 | /* 199962 */ // Label 4483: @199962 |
| 70764 | /* 199962 */ GIM_Try, /*On fail goto*//*Label 4484*/ GIMT_Encode4(200002), // Rule ID 19634 // |
| 70765 | /* 199967 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 70766 | /* 199970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 70767 | /* 199974 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 70768 | /* 199978 */ // MIs[0] Operand 2 |
| 70769 | /* 199978 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70770 | /* 199989 */ // (extract_subvector:{ *:[v8i1] } VK32:{ *:[v32i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } VK32:{ *:[v32i1] }:$src, VK8:{ *:[i32] }) |
| 70771 | /* 199989 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70772 | /* 199992 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70773 | /* 199994 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70774 | /* 199996 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 70775 | /* 200001 */ // GIR_Coverage, 19634, |
| 70776 | /* 200001 */ GIR_EraseRootFromParent_Done, |
| 70777 | /* 200002 */ // Label 4484: @200002 |
| 70778 | /* 200002 */ GIM_Try, /*On fail goto*//*Label 4485*/ GIMT_Encode4(200042), // Rule ID 19636 // |
| 70779 | /* 200007 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 70780 | /* 200010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 70781 | /* 200014 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 70782 | /* 200018 */ // MIs[0] Operand 2 |
| 70783 | /* 200018 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70784 | /* 200029 */ // (extract_subvector:{ *:[v8i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } VK64:{ *:[v64i1] }:$src, VK8:{ *:[i32] }) |
| 70785 | /* 200029 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70786 | /* 200032 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70787 | /* 200034 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70788 | /* 200036 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 70789 | /* 200041 */ // GIR_Coverage, 19636, |
| 70790 | /* 200041 */ GIR_EraseRootFromParent_Done, |
| 70791 | /* 200042 */ // Label 4485: @200042 |
| 70792 | /* 200042 */ GIM_Reject, |
| 70793 | /* 200043 */ // Label 4441: @200043 |
| 70794 | /* 200043 */ GIM_Try, /*On fail goto*//*Label 4486*/ GIMT_Encode4(200114), // Rule ID 19057 // |
| 70795 | /* 200048 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_NoVLX), |
| 70796 | /* 200051 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70797 | /* 200054 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70798 | /* 200058 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70799 | /* 200062 */ // MIs[0] Operand 2 |
| 70800 | /* 200062 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 70801 | /* 200073 */ // (extract_subvector:{ *:[v8i16] } VR512:{ *:[v32i16] }:$src, 8:{ *:[iPTR] }) => (VEXTRACTI128rri:{ *:[v8i16] } (EXTRACT_SUBREG:{ *:[v16i16] } VR512:{ *:[v32i16] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70802 | /* 200073 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s16, |
| 70803 | /* 200076 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70804 | /* 200080 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70805 | /* 200085 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70806 | /* 200091 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70807 | /* 200096 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70808 | /* 200101 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI128rri), |
| 70809 | /* 200104 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70810 | /* 200106 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70811 | /* 200109 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70812 | /* 200112 */ GIR_RootConstrainSelectedInstOperands, |
| 70813 | /* 200113 */ // GIR_Coverage, 19057, |
| 70814 | /* 200113 */ GIR_EraseRootFromParent_Done, |
| 70815 | /* 200114 */ // Label 4486: @200114 |
| 70816 | /* 200114 */ GIM_Try, /*On fail goto*//*Label 4487*/ GIMT_Encode4(200185), // Rule ID 19058 // |
| 70817 | /* 200119 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_NoVLX), |
| 70818 | /* 200122 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70819 | /* 200125 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70820 | /* 200129 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70821 | /* 200133 */ // MIs[0] Operand 2 |
| 70822 | /* 200133 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 70823 | /* 200144 */ // (extract_subvector:{ *:[v8f16] } VR512:{ *:[v32f16] }:$src, 8:{ *:[iPTR] }) => (VEXTRACTF128rri:{ *:[v8f16] } (EXTRACT_SUBREG:{ *:[v16f16] } VR512:{ *:[v32f16] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70824 | /* 200144 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s16, |
| 70825 | /* 200147 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70826 | /* 200151 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70827 | /* 200156 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70828 | /* 200162 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70829 | /* 200167 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70830 | /* 200172 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF128rri), |
| 70831 | /* 200175 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70832 | /* 200177 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70833 | /* 200180 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70834 | /* 200183 */ GIR_RootConstrainSelectedInstOperands, |
| 70835 | /* 200184 */ // GIR_Coverage, 19058, |
| 70836 | /* 200184 */ GIR_EraseRootFromParent_Done, |
| 70837 | /* 200185 */ // Label 4487: @200185 |
| 70838 | /* 200185 */ GIM_Try, /*On fail goto*//*Label 4488*/ GIMT_Encode4(200256), // Rule ID 19064 // |
| 70839 | /* 200190 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70840 | /* 200193 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70841 | /* 200196 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70842 | /* 200200 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70843 | /* 200204 */ // MIs[0] Operand 2 |
| 70844 | /* 200204 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 70845 | /* 200215 */ // (extract_subvector:{ *:[v8i16] } VR512:{ *:[v32i16] }:$src, 8:{ *:[iPTR] }) => (VEXTRACTI32X4Z256rri:{ *:[v8i16] } (EXTRACT_SUBREG:{ *:[v16i16] } VR512:{ *:[v32i16] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70846 | /* 200215 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s16, |
| 70847 | /* 200218 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70848 | /* 200222 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70849 | /* 200227 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70850 | /* 200233 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70851 | /* 200238 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70852 | /* 200243 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI32X4Z256rri), |
| 70853 | /* 200246 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70854 | /* 200248 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70855 | /* 200251 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70856 | /* 200254 */ GIR_RootConstrainSelectedInstOperands, |
| 70857 | /* 200255 */ // GIR_Coverage, 19064, |
| 70858 | /* 200255 */ GIR_EraseRootFromParent_Done, |
| 70859 | /* 200256 */ // Label 4488: @200256 |
| 70860 | /* 200256 */ GIM_Try, /*On fail goto*//*Label 4489*/ GIMT_Encode4(200327), // Rule ID 19065 // |
| 70861 | /* 200261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70862 | /* 200264 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70863 | /* 200267 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70864 | /* 200271 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70865 | /* 200275 */ // MIs[0] Operand 2 |
| 70866 | /* 200275 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 70867 | /* 200286 */ // (extract_subvector:{ *:[v8f16] } VR512:{ *:[v32f16] }:$src, 8:{ *:[iPTR] }) => (VEXTRACTF32X4Z256rri:{ *:[v8f16] } (EXTRACT_SUBREG:{ *:[v16f16] } VR512:{ *:[v32f16] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70868 | /* 200286 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s16, |
| 70869 | /* 200289 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70870 | /* 200293 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 70871 | /* 200298 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70872 | /* 200304 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70873 | /* 200309 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70874 | /* 200314 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF32X4Z256rri), |
| 70875 | /* 200317 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70876 | /* 200319 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70877 | /* 200322 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70878 | /* 200325 */ GIR_RootConstrainSelectedInstOperands, |
| 70879 | /* 200326 */ // GIR_Coverage, 19065, |
| 70880 | /* 200326 */ GIR_EraseRootFromParent_Done, |
| 70881 | /* 200327 */ // Label 4489: @200327 |
| 70882 | /* 200327 */ GIM_Try, /*On fail goto*//*Label 4490*/ GIMT_Encode4(200376), // Rule ID 23013 // |
| 70883 | /* 200332 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 70884 | /* 200335 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70885 | /* 200339 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70886 | /* 200343 */ // MIs[0] Operand 2 |
| 70887 | /* 200343 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70888 | /* 200354 */ // (extract_subvector:{ *:[v8i16] } VR256:{ *:[v16i16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8i16] } VR256:{ *:[v16i16] }:$src, sub_xmm:{ *:[i32] }) |
| 70889 | /* 200354 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70890 | /* 200357 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70891 | /* 200359 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70892 | /* 200365 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70893 | /* 200370 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70894 | /* 200375 */ // GIR_Coverage, 23013, |
| 70895 | /* 200375 */ GIR_EraseRootFromParent_Done, |
| 70896 | /* 200376 */ // Label 4490: @200376 |
| 70897 | /* 200376 */ GIM_Try, /*On fail goto*//*Label 4491*/ GIMT_Encode4(200425), // Rule ID 23019 // |
| 70898 | /* 200381 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 70899 | /* 200384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70900 | /* 200388 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70901 | /* 200392 */ // MIs[0] Operand 2 |
| 70902 | /* 200392 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70903 | /* 200403 */ // (extract_subvector:{ *:[v8f16] } VR256:{ *:[v16f16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8f16] } VR256:{ *:[v16f16] }:$src, sub_xmm:{ *:[i32] }) |
| 70904 | /* 200403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70905 | /* 200406 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70906 | /* 200408 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70907 | /* 200414 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70908 | /* 200419 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70909 | /* 200424 */ // GIR_Coverage, 23019, |
| 70910 | /* 200424 */ GIR_EraseRootFromParent_Done, |
| 70911 | /* 200425 */ // Label 4491: @200425 |
| 70912 | /* 200425 */ GIM_Try, /*On fail goto*//*Label 4492*/ GIMT_Encode4(200474), // Rule ID 23034 // |
| 70913 | /* 200430 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70914 | /* 200433 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70915 | /* 200437 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70916 | /* 200441 */ // MIs[0] Operand 2 |
| 70917 | /* 200441 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70918 | /* 200452 */ // (extract_subvector:{ *:[v8i16] } VR512:{ *:[v32i16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8i16] } VR512:{ *:[v32i16] }:$src, sub_xmm:{ *:[i32] }) |
| 70919 | /* 200452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70920 | /* 200455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70921 | /* 200457 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70922 | /* 200463 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70923 | /* 200468 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70924 | /* 200473 */ // GIR_Coverage, 23034, |
| 70925 | /* 200473 */ GIR_EraseRootFromParent_Done, |
| 70926 | /* 200474 */ // Label 4492: @200474 |
| 70927 | /* 200474 */ GIM_Try, /*On fail goto*//*Label 4493*/ GIMT_Encode4(200523), // Rule ID 23040 // |
| 70928 | /* 200479 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70929 | /* 200482 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70930 | /* 200486 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70931 | /* 200490 */ // MIs[0] Operand 2 |
| 70932 | /* 200490 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70933 | /* 200501 */ // (extract_subvector:{ *:[v8f16] } VR512:{ *:[v32f16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8f16] } VR512:{ *:[v32f16] }:$src, sub_xmm:{ *:[i32] }) |
| 70934 | /* 200501 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70935 | /* 200504 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70936 | /* 200506 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 70937 | /* 200512 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70938 | /* 200517 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70939 | /* 200522 */ // GIR_Coverage, 23040, |
| 70940 | /* 200522 */ GIR_EraseRootFromParent_Done, |
| 70941 | /* 200523 */ // Label 4493: @200523 |
| 70942 | /* 200523 */ GIM_Reject, |
| 70943 | /* 200524 */ // Label 4442: @200524 |
| 70944 | /* 200524 */ GIM_Try, /*On fail goto*//*Label 4494*/ GIMT_Encode4(200606), |
| 70945 | /* 200529 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70946 | /* 200532 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70947 | /* 200536 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70948 | /* 200540 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70949 | /* 200551 */ GIM_Try, /*On fail goto*//*Label 4495*/ GIMT_Encode4(200578), // Rule ID 23043 // |
| 70950 | /* 200556 */ // (extract_subvector:{ *:[v8i32] } VR512:{ *:[v16i32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8i32] } VR512:{ *:[v16i32] }:$src, sub_ymm:{ *:[i32] }) |
| 70951 | /* 200556 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70952 | /* 200559 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70953 | /* 200561 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70954 | /* 200567 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70955 | /* 200572 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70956 | /* 200577 */ // GIR_Coverage, 23043, |
| 70957 | /* 200577 */ GIR_EraseRootFromParent_Done, |
| 70958 | /* 200578 */ // Label 4495: @200578 |
| 70959 | /* 200578 */ GIM_Try, /*On fail goto*//*Label 4496*/ GIMT_Encode4(200605), // Rule ID 23046 // |
| 70960 | /* 200583 */ // (extract_subvector:{ *:[v8f32] } VR512:{ *:[v16f32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8f32] } VR512:{ *:[v16f32] }:$src, sub_ymm:{ *:[i32] }) |
| 70961 | /* 200583 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70962 | /* 200586 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70963 | /* 200588 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 70964 | /* 200594 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70965 | /* 200599 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70966 | /* 200604 */ // GIR_Coverage, 23046, |
| 70967 | /* 200604 */ GIR_EraseRootFromParent_Done, |
| 70968 | /* 200605 */ // Label 4496: @200605 |
| 70969 | /* 200605 */ GIM_Reject, |
| 70970 | /* 200606 */ // Label 4494: @200606 |
| 70971 | /* 200606 */ GIM_Reject, |
| 70972 | /* 200607 */ // Label 4443: @200607 |
| 70973 | /* 200607 */ GIM_Try, /*On fail goto*//*Label 4497*/ GIMT_Encode4(200647), // Rule ID 19638 // |
| 70974 | /* 200612 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 70975 | /* 200615 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 70976 | /* 200619 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 70977 | /* 200623 */ // MIs[0] Operand 2 |
| 70978 | /* 200623 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70979 | /* 200634 */ // (extract_subvector:{ *:[v16i1] } VK32:{ *:[v32i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v16i1] } VK32:{ *:[v32i1] }:$src, VK16:{ *:[i32] }) |
| 70980 | /* 200634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70981 | /* 200637 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70982 | /* 200639 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70983 | /* 200641 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 70984 | /* 200646 */ // GIR_Coverage, 19638, |
| 70985 | /* 200646 */ GIR_EraseRootFromParent_Done, |
| 70986 | /* 200647 */ // Label 4497: @200647 |
| 70987 | /* 200647 */ GIM_Try, /*On fail goto*//*Label 4498*/ GIMT_Encode4(200687), // Rule ID 19640 // |
| 70988 | /* 200652 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 70989 | /* 200655 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 70990 | /* 200659 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 70991 | /* 200663 */ // MIs[0] Operand 2 |
| 70992 | /* 200663 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70993 | /* 200674 */ // (extract_subvector:{ *:[v16i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v16i1] } VK64:{ *:[v64i1] }:$src, VK16:{ *:[i32] }) |
| 70994 | /* 200674 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70995 | /* 200677 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70996 | /* 200679 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70997 | /* 200681 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 70998 | /* 200686 */ // GIR_Coverage, 19640, |
| 70999 | /* 200686 */ GIR_EraseRootFromParent_Done, |
| 71000 | /* 200687 */ // Label 4498: @200687 |
| 71001 | /* 200687 */ GIM_Reject, |
| 71002 | /* 200688 */ // Label 4444: @200688 |
| 71003 | /* 200688 */ GIM_Try, /*On fail goto*//*Label 4499*/ GIMT_Encode4(200759), // Rule ID 19059 // |
| 71004 | /* 200693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_NoVLX), |
| 71005 | /* 200696 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 71006 | /* 200699 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 71007 | /* 200703 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71008 | /* 200707 */ // MIs[0] Operand 2 |
| 71009 | /* 200707 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(16), |
| 71010 | /* 200718 */ // (extract_subvector:{ *:[v16i8] } VR512:{ *:[v64i8] }:$src, 16:{ *:[iPTR] }) => (VEXTRACTI128rri:{ *:[v16i8] } (EXTRACT_SUBREG:{ *:[v32i8] } VR512:{ *:[v64i8] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 71011 | /* 200718 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s8, |
| 71012 | /* 200721 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 71013 | /* 200725 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 71014 | /* 200730 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 71015 | /* 200736 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 71016 | /* 200741 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 71017 | /* 200746 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI128rri), |
| 71018 | /* 200749 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71019 | /* 200751 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 71020 | /* 200754 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 71021 | /* 200757 */ GIR_RootConstrainSelectedInstOperands, |
| 71022 | /* 200758 */ // GIR_Coverage, 19059, |
| 71023 | /* 200758 */ GIR_EraseRootFromParent_Done, |
| 71024 | /* 200759 */ // Label 4499: @200759 |
| 71025 | /* 200759 */ GIM_Try, /*On fail goto*//*Label 4500*/ GIMT_Encode4(200830), // Rule ID 19066 // |
| 71026 | /* 200764 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 71027 | /* 200767 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 71028 | /* 200770 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71029 | /* 200774 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71030 | /* 200778 */ // MIs[0] Operand 2 |
| 71031 | /* 200778 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(16), |
| 71032 | /* 200789 */ // (extract_subvector:{ *:[v16i8] } VR512:{ *:[v64i8] }:$src, 16:{ *:[iPTR] }) => (VEXTRACTI32X4Z256rri:{ *:[v16i8] } (EXTRACT_SUBREG:{ *:[v32i8] } VR512:{ *:[v64i8] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 71033 | /* 200789 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s8, |
| 71034 | /* 200792 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 71035 | /* 200796 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 71036 | /* 200801 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 71037 | /* 200807 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 71038 | /* 200812 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 71039 | /* 200817 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI32X4Z256rri), |
| 71040 | /* 200820 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71041 | /* 200822 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 71042 | /* 200825 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 71043 | /* 200828 */ GIR_RootConstrainSelectedInstOperands, |
| 71044 | /* 200829 */ // GIR_Coverage, 19066, |
| 71045 | /* 200829 */ GIR_EraseRootFromParent_Done, |
| 71046 | /* 200830 */ // Label 4500: @200830 |
| 71047 | /* 200830 */ GIM_Try, /*On fail goto*//*Label 4501*/ GIMT_Encode4(200879), // Rule ID 23016 // |
| 71048 | /* 200835 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 71049 | /* 200838 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 71050 | /* 200842 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 71051 | /* 200846 */ // MIs[0] Operand 2 |
| 71052 | /* 200846 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 71053 | /* 200857 */ // (extract_subvector:{ *:[v16i8] } VR256:{ *:[v32i8] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v16i8] } VR256:{ *:[v32i8] }:$src, sub_xmm:{ *:[i32] }) |
| 71054 | /* 200857 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 71055 | /* 200860 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71056 | /* 200862 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 71057 | /* 200868 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 71058 | /* 200873 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 71059 | /* 200878 */ // GIR_Coverage, 23016, |
| 71060 | /* 200878 */ GIR_EraseRootFromParent_Done, |
| 71061 | /* 200879 */ // Label 4501: @200879 |
| 71062 | /* 200879 */ GIM_Try, /*On fail goto*//*Label 4502*/ GIMT_Encode4(200928), // Rule ID 23037 // |
| 71063 | /* 200884 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 71064 | /* 200887 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 71065 | /* 200891 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71066 | /* 200895 */ // MIs[0] Operand 2 |
| 71067 | /* 200895 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 71068 | /* 200906 */ // (extract_subvector:{ *:[v16i8] } VR512:{ *:[v64i8] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v16i8] } VR512:{ *:[v64i8] }:$src, sub_xmm:{ *:[i32] }) |
| 71069 | /* 200906 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 71070 | /* 200909 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71071 | /* 200911 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(11), // src |
| 71072 | /* 200917 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 71073 | /* 200922 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 71074 | /* 200927 */ // GIR_Coverage, 23037, |
| 71075 | /* 200927 */ GIR_EraseRootFromParent_Done, |
| 71076 | /* 200928 */ // Label 4502: @200928 |
| 71077 | /* 200928 */ GIM_Reject, |
| 71078 | /* 200929 */ // Label 4445: @200929 |
| 71079 | /* 200929 */ GIM_Try, /*On fail goto*//*Label 4503*/ GIMT_Encode4(201011), |
| 71080 | /* 200934 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 71081 | /* 200937 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71082 | /* 200941 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71083 | /* 200945 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 71084 | /* 200956 */ GIM_Try, /*On fail goto*//*Label 4504*/ GIMT_Encode4(200983), // Rule ID 23055 // |
| 71085 | /* 200961 */ // (extract_subvector:{ *:[v16i16] } VR512:{ *:[v32i16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v16i16] } VR512:{ *:[v32i16] }:$src, sub_ymm:{ *:[i32] }) |
| 71086 | /* 200961 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 71087 | /* 200964 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71088 | /* 200966 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 71089 | /* 200972 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 71090 | /* 200977 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 71091 | /* 200982 */ // GIR_Coverage, 23055, |
| 71092 | /* 200982 */ GIR_EraseRootFromParent_Done, |
| 71093 | /* 200983 */ // Label 4504: @200983 |
| 71094 | /* 200983 */ GIM_Try, /*On fail goto*//*Label 4505*/ GIMT_Encode4(201010), // Rule ID 23061 // |
| 71095 | /* 200988 */ // (extract_subvector:{ *:[v16f16] } VR512:{ *:[v32f16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v16f16] } VR512:{ *:[v32f16] }:$src, sub_ymm:{ *:[i32] }) |
| 71096 | /* 200988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 71097 | /* 200991 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71098 | /* 200993 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 71099 | /* 200999 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 71100 | /* 201004 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 71101 | /* 201009 */ // GIR_Coverage, 23061, |
| 71102 | /* 201009 */ GIR_EraseRootFromParent_Done, |
| 71103 | /* 201010 */ // Label 4505: @201010 |
| 71104 | /* 201010 */ GIM_Reject, |
| 71105 | /* 201011 */ // Label 4503: @201011 |
| 71106 | /* 201011 */ GIM_Reject, |
| 71107 | /* 201012 */ // Label 4446: @201012 |
| 71108 | /* 201012 */ GIM_Try, /*On fail goto*//*Label 4506*/ GIMT_Encode4(201052), // Rule ID 19642 // |
| 71109 | /* 201017 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 71110 | /* 201020 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 71111 | /* 201024 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 71112 | /* 201028 */ // MIs[0] Operand 2 |
| 71113 | /* 201028 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 71114 | /* 201039 */ // (extract_subvector:{ *:[v32i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v32i1] } VK64:{ *:[v64i1] }:$src, VK32:{ *:[i32] }) |
| 71115 | /* 201039 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 71116 | /* 201042 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71117 | /* 201044 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71118 | /* 201046 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK32RegClassID), |
| 71119 | /* 201051 */ // GIR_Coverage, 19642, |
| 71120 | /* 201051 */ GIR_EraseRootFromParent_Done, |
| 71121 | /* 201052 */ // Label 4506: @201052 |
| 71122 | /* 201052 */ GIM_Reject, |
| 71123 | /* 201053 */ // Label 4447: @201053 |
| 71124 | /* 201053 */ GIM_Try, /*On fail goto*//*Label 4507*/ GIMT_Encode4(201102), // Rule ID 23058 // |
| 71125 | /* 201058 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 71126 | /* 201061 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71127 | /* 201065 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71128 | /* 201069 */ // MIs[0] Operand 2 |
| 71129 | /* 201069 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 71130 | /* 201080 */ // (extract_subvector:{ *:[v32i8] } VR512:{ *:[v64i8] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v32i8] } VR512:{ *:[v64i8] }:$src, sub_ymm:{ *:[i32] }) |
| 71131 | /* 201080 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 71132 | /* 201083 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71133 | /* 201085 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(12), // src |
| 71134 | /* 201091 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 71135 | /* 201096 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 71136 | /* 201101 */ // GIR_Coverage, 23058, |
| 71137 | /* 201101 */ GIR_EraseRootFromParent_Done, |
| 71138 | /* 201102 */ // Label 4507: @201102 |
| 71139 | /* 201102 */ GIM_Reject, |
| 71140 | /* 201103 */ // Label 4448: @201103 |
| 71141 | /* 201103 */ GIM_Reject, |
| 71142 | /* 201104 */ // Label 61: @201104 |
| 71143 | /* 201104 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4520*/ GIMT_Encode4(203085), |
| 71144 | /* 201115 */ /*GILLT_v2s64*//*Label 4508*/ GIMT_Encode4(201183), GIMT_Encode4(0), |
| 71145 | /* 201123 */ /*GILLT_v4s32*//*Label 4509*/ GIMT_Encode4(201385), |
| 71146 | /* 201127 */ /*GILLT_v4s64*//*Label 4510*/ GIMT_Encode4(201587), GIMT_Encode4(0), |
| 71147 | /* 201135 */ /*GILLT_v8s16*//*Label 4511*/ GIMT_Encode4(201789), |
| 71148 | /* 201139 */ /*GILLT_v8s32*//*Label 4512*/ GIMT_Encode4(201904), |
| 71149 | /* 201143 */ /*GILLT_v8s64*//*Label 4513*/ GIMT_Encode4(202106), GIMT_Encode4(0), |
| 71150 | /* 201151 */ /*GILLT_v16s8*//*Label 4514*/ GIMT_Encode4(202308), |
| 71151 | /* 201155 */ /*GILLT_v16s16*//*Label 4515*/ GIMT_Encode4(202423), |
| 71152 | /* 201159 */ /*GILLT_v16s32*//*Label 4516*/ GIMT_Encode4(202538), GIMT_Encode4(0), |
| 71153 | /* 201167 */ /*GILLT_v32s8*//*Label 4517*/ GIMT_Encode4(202740), |
| 71154 | /* 201171 */ /*GILLT_v32s16*//*Label 4518*/ GIMT_Encode4(202855), GIMT_Encode4(0), |
| 71155 | /* 201179 */ /*GILLT_v64s8*//*Label 4519*/ GIMT_Encode4(202970), |
| 71156 | /* 201183 */ // Label 4508: @201183 |
| 71157 | /* 201183 */ GIM_Try, /*On fail goto*//*Label 4521*/ GIMT_Encode4(201384), |
| 71158 | /* 201188 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 71159 | /* 201191 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s1, |
| 71160 | /* 201194 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 71161 | /* 201197 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71162 | /* 201201 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71163 | /* 201205 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 71164 | /* 201209 */ GIM_Try, /*On fail goto*//*Label 4522*/ GIMT_Encode4(201242), // Rule ID 21696 // |
| 71165 | /* 201214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71166 | /* 201217 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71167 | /* 201221 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71168 | /* 201227 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71169 | /* 201229 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71170 | /* 201231 */ // (vector_compress:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, VK2WM:{ *:[v2i1] }:$mask, immAllZerosV:{ *:[v2i64] }) => (VPCOMPRESSQZ128rrkz:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src) |
| 71171 | /* 201231 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ128rrkz), |
| 71172 | /* 201234 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71173 | /* 201236 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71174 | /* 201238 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71175 | /* 201240 */ GIR_RootConstrainSelectedInstOperands, |
| 71176 | /* 201241 */ // GIR_Coverage, 21696, |
| 71177 | /* 201241 */ GIR_EraseRootFromParent_Done, |
| 71178 | /* 201242 */ // Label 4522: @201242 |
| 71179 | /* 201242 */ GIM_Try, /*On fail goto*//*Label 4523*/ GIMT_Encode4(201275), // Rule ID 21732 // |
| 71180 | /* 201247 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71181 | /* 201250 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71182 | /* 201254 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71183 | /* 201260 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71184 | /* 201262 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71185 | /* 201264 */ // (vector_compress:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src, VK2WM:{ *:[v2i1] }:$mask, immAllZerosV:{ *:[v2f64] }) => (VCOMPRESSPDZ128rrkz:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src) |
| 71186 | /* 201264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ128rrkz), |
| 71187 | /* 201267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71188 | /* 201269 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71189 | /* 201271 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71190 | /* 201273 */ GIR_RootConstrainSelectedInstOperands, |
| 71191 | /* 201274 */ // GIR_Coverage, 21732, |
| 71192 | /* 201274 */ GIR_EraseRootFromParent_Done, |
| 71193 | /* 201275 */ // Label 4523: @201275 |
| 71194 | /* 201275 */ GIM_Try, /*On fail goto*//*Label 4524*/ GIMT_Encode4(201304), // Rule ID 21695 // |
| 71195 | /* 201280 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71196 | /* 201283 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71197 | /* 201287 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71198 | /* 201291 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71199 | /* 201293 */ // (vector_compress:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, VK2WM:{ *:[v2i1] }:$mask, (undef:{ *:[v2i64] })) => (VPCOMPRESSQZ128rrkz:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src) |
| 71200 | /* 201293 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ128rrkz), |
| 71201 | /* 201296 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71202 | /* 201298 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71203 | /* 201300 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71204 | /* 201302 */ GIR_RootConstrainSelectedInstOperands, |
| 71205 | /* 201303 */ // GIR_Coverage, 21695, |
| 71206 | /* 201303 */ GIR_EraseRootFromParent_Done, |
| 71207 | /* 201304 */ // Label 4524: @201304 |
| 71208 | /* 201304 */ GIM_Try, /*On fail goto*//*Label 4525*/ GIMT_Encode4(201333), // Rule ID 21731 // |
| 71209 | /* 201309 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71210 | /* 201312 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71211 | /* 201316 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71212 | /* 201320 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71213 | /* 201322 */ // (vector_compress:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src, VK2WM:{ *:[v2i1] }:$mask, (undef:{ *:[v2f64] })) => (VCOMPRESSPDZ128rrkz:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src) |
| 71214 | /* 201322 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ128rrkz), |
| 71215 | /* 201325 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71216 | /* 201327 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71217 | /* 201329 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71218 | /* 201331 */ GIR_RootConstrainSelectedInstOperands, |
| 71219 | /* 201332 */ // GIR_Coverage, 21731, |
| 71220 | /* 201332 */ GIR_EraseRootFromParent_Done, |
| 71221 | /* 201333 */ // Label 4525: @201333 |
| 71222 | /* 201333 */ GIM_Try, /*On fail goto*//*Label 4526*/ GIMT_Encode4(201358), // Rule ID 21697 // |
| 71223 | /* 201338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71224 | /* 201341 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71225 | /* 201345 */ // (vector_compress:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$passthru) => (VPCOMPRESSQZ128rrk:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$passthru, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src) |
| 71226 | /* 201345 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ128rrk), |
| 71227 | /* 201348 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71228 | /* 201350 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71229 | /* 201352 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71230 | /* 201354 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71231 | /* 201356 */ GIR_RootConstrainSelectedInstOperands, |
| 71232 | /* 201357 */ // GIR_Coverage, 21697, |
| 71233 | /* 201357 */ GIR_EraseRootFromParent_Done, |
| 71234 | /* 201358 */ // Label 4526: @201358 |
| 71235 | /* 201358 */ GIM_Try, /*On fail goto*//*Label 4527*/ GIMT_Encode4(201383), // Rule ID 21733 // |
| 71236 | /* 201363 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71237 | /* 201366 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71238 | /* 201370 */ // (vector_compress:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$passthru) => (VCOMPRESSPDZ128rrk:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$passthru, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src) |
| 71239 | /* 201370 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ128rrk), |
| 71240 | /* 201373 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71241 | /* 201375 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71242 | /* 201377 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71243 | /* 201379 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71244 | /* 201381 */ GIR_RootConstrainSelectedInstOperands, |
| 71245 | /* 201382 */ // GIR_Coverage, 21733, |
| 71246 | /* 201382 */ GIR_EraseRootFromParent_Done, |
| 71247 | /* 201383 */ // Label 4527: @201383 |
| 71248 | /* 201383 */ GIM_Reject, |
| 71249 | /* 201384 */ // Label 4521: @201384 |
| 71250 | /* 201384 */ GIM_Reject, |
| 71251 | /* 201385 */ // Label 4509: @201385 |
| 71252 | /* 201385 */ GIM_Try, /*On fail goto*//*Label 4528*/ GIMT_Encode4(201586), |
| 71253 | /* 201390 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 71254 | /* 201393 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s1, |
| 71255 | /* 201396 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 71256 | /* 201399 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71257 | /* 201403 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71258 | /* 201407 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 71259 | /* 201411 */ GIM_Try, /*On fail goto*//*Label 4529*/ GIMT_Encode4(201444), // Rule ID 21678 // |
| 71260 | /* 201416 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71261 | /* 201419 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71262 | /* 201423 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71263 | /* 201429 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71264 | /* 201431 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71265 | /* 201433 */ // (vector_compress:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, VK4WM:{ *:[v4i1] }:$mask, immAllZerosV:{ *:[v4i32] }) => (VPCOMPRESSDZ128rrkz:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src) |
| 71266 | /* 201433 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ128rrkz), |
| 71267 | /* 201436 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71268 | /* 201438 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71269 | /* 201440 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71270 | /* 201442 */ GIR_RootConstrainSelectedInstOperands, |
| 71271 | /* 201443 */ // GIR_Coverage, 21678, |
| 71272 | /* 201443 */ GIR_EraseRootFromParent_Done, |
| 71273 | /* 201444 */ // Label 4529: @201444 |
| 71274 | /* 201444 */ GIM_Try, /*On fail goto*//*Label 4530*/ GIMT_Encode4(201477), // Rule ID 21714 // |
| 71275 | /* 201449 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71276 | /* 201452 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71277 | /* 201456 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71278 | /* 201462 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71279 | /* 201464 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71280 | /* 201466 */ // (vector_compress:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src, VK4WM:{ *:[v4i1] }:$mask, immAllZerosV:{ *:[v4f32] }) => (VCOMPRESSPSZ128rrkz:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src) |
| 71281 | /* 201466 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ128rrkz), |
| 71282 | /* 201469 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71283 | /* 201471 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71284 | /* 201473 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71285 | /* 201475 */ GIR_RootConstrainSelectedInstOperands, |
| 71286 | /* 201476 */ // GIR_Coverage, 21714, |
| 71287 | /* 201476 */ GIR_EraseRootFromParent_Done, |
| 71288 | /* 201477 */ // Label 4530: @201477 |
| 71289 | /* 201477 */ GIM_Try, /*On fail goto*//*Label 4531*/ GIMT_Encode4(201506), // Rule ID 21677 // |
| 71290 | /* 201482 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71291 | /* 201485 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71292 | /* 201489 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71293 | /* 201493 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71294 | /* 201495 */ // (vector_compress:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, VK4WM:{ *:[v4i1] }:$mask, (undef:{ *:[v4i32] })) => (VPCOMPRESSDZ128rrkz:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src) |
| 71295 | /* 201495 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ128rrkz), |
| 71296 | /* 201498 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71297 | /* 201500 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71298 | /* 201502 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71299 | /* 201504 */ GIR_RootConstrainSelectedInstOperands, |
| 71300 | /* 201505 */ // GIR_Coverage, 21677, |
| 71301 | /* 201505 */ GIR_EraseRootFromParent_Done, |
| 71302 | /* 201506 */ // Label 4531: @201506 |
| 71303 | /* 201506 */ GIM_Try, /*On fail goto*//*Label 4532*/ GIMT_Encode4(201535), // Rule ID 21713 // |
| 71304 | /* 201511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71305 | /* 201514 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71306 | /* 201518 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71307 | /* 201522 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71308 | /* 201524 */ // (vector_compress:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src, VK4WM:{ *:[v4i1] }:$mask, (undef:{ *:[v4f32] })) => (VCOMPRESSPSZ128rrkz:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src) |
| 71309 | /* 201524 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ128rrkz), |
| 71310 | /* 201527 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71311 | /* 201529 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71312 | /* 201531 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71313 | /* 201533 */ GIR_RootConstrainSelectedInstOperands, |
| 71314 | /* 201534 */ // GIR_Coverage, 21713, |
| 71315 | /* 201534 */ GIR_EraseRootFromParent_Done, |
| 71316 | /* 201535 */ // Label 4532: @201535 |
| 71317 | /* 201535 */ GIM_Try, /*On fail goto*//*Label 4533*/ GIMT_Encode4(201560), // Rule ID 21679 // |
| 71318 | /* 201540 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71319 | /* 201543 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71320 | /* 201547 */ // (vector_compress:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$passthru) => (VPCOMPRESSDZ128rrk:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$passthru, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src) |
| 71321 | /* 201547 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ128rrk), |
| 71322 | /* 201550 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71323 | /* 201552 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71324 | /* 201554 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71325 | /* 201556 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71326 | /* 201558 */ GIR_RootConstrainSelectedInstOperands, |
| 71327 | /* 201559 */ // GIR_Coverage, 21679, |
| 71328 | /* 201559 */ GIR_EraseRootFromParent_Done, |
| 71329 | /* 201560 */ // Label 4533: @201560 |
| 71330 | /* 201560 */ GIM_Try, /*On fail goto*//*Label 4534*/ GIMT_Encode4(201585), // Rule ID 21715 // |
| 71331 | /* 201565 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71332 | /* 201568 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71333 | /* 201572 */ // (vector_compress:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$passthru) => (VCOMPRESSPSZ128rrk:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$passthru, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src) |
| 71334 | /* 201572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ128rrk), |
| 71335 | /* 201575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71336 | /* 201577 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71337 | /* 201579 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71338 | /* 201581 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71339 | /* 201583 */ GIR_RootConstrainSelectedInstOperands, |
| 71340 | /* 201584 */ // GIR_Coverage, 21715, |
| 71341 | /* 201584 */ GIR_EraseRootFromParent_Done, |
| 71342 | /* 201585 */ // Label 4534: @201585 |
| 71343 | /* 201585 */ GIM_Reject, |
| 71344 | /* 201586 */ // Label 4528: @201586 |
| 71345 | /* 201586 */ GIM_Reject, |
| 71346 | /* 201587 */ // Label 4510: @201587 |
| 71347 | /* 201587 */ GIM_Try, /*On fail goto*//*Label 4535*/ GIMT_Encode4(201788), |
| 71348 | /* 201592 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 71349 | /* 201595 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s1, |
| 71350 | /* 201598 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 71351 | /* 201601 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71352 | /* 201605 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71353 | /* 201609 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 71354 | /* 201613 */ GIM_Try, /*On fail goto*//*Label 4536*/ GIMT_Encode4(201646), // Rule ID 21690 // |
| 71355 | /* 201618 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71356 | /* 201621 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71357 | /* 201625 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71358 | /* 201631 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71359 | /* 201633 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71360 | /* 201635 */ // (vector_compress:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, VK4WM:{ *:[v4i1] }:$mask, immAllZerosV:{ *:[v4i64] }) => (VPCOMPRESSQZ256rrkz:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src) |
| 71361 | /* 201635 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ256rrkz), |
| 71362 | /* 201638 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71363 | /* 201640 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71364 | /* 201642 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71365 | /* 201644 */ GIR_RootConstrainSelectedInstOperands, |
| 71366 | /* 201645 */ // GIR_Coverage, 21690, |
| 71367 | /* 201645 */ GIR_EraseRootFromParent_Done, |
| 71368 | /* 201646 */ // Label 4536: @201646 |
| 71369 | /* 201646 */ GIM_Try, /*On fail goto*//*Label 4537*/ GIMT_Encode4(201679), // Rule ID 21726 // |
| 71370 | /* 201651 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71371 | /* 201654 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71372 | /* 201658 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71373 | /* 201664 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71374 | /* 201666 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71375 | /* 201668 */ // (vector_compress:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src, VK4WM:{ *:[v4i1] }:$mask, immAllZerosV:{ *:[v4f64] }) => (VCOMPRESSPDZ256rrkz:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src) |
| 71376 | /* 201668 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ256rrkz), |
| 71377 | /* 201671 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71378 | /* 201673 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71379 | /* 201675 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71380 | /* 201677 */ GIR_RootConstrainSelectedInstOperands, |
| 71381 | /* 201678 */ // GIR_Coverage, 21726, |
| 71382 | /* 201678 */ GIR_EraseRootFromParent_Done, |
| 71383 | /* 201679 */ // Label 4537: @201679 |
| 71384 | /* 201679 */ GIM_Try, /*On fail goto*//*Label 4538*/ GIMT_Encode4(201708), // Rule ID 21689 // |
| 71385 | /* 201684 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71386 | /* 201687 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71387 | /* 201691 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71388 | /* 201695 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71389 | /* 201697 */ // (vector_compress:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, VK4WM:{ *:[v4i1] }:$mask, (undef:{ *:[v4i64] })) => (VPCOMPRESSQZ256rrkz:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src) |
| 71390 | /* 201697 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ256rrkz), |
| 71391 | /* 201700 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71392 | /* 201702 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71393 | /* 201704 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71394 | /* 201706 */ GIR_RootConstrainSelectedInstOperands, |
| 71395 | /* 201707 */ // GIR_Coverage, 21689, |
| 71396 | /* 201707 */ GIR_EraseRootFromParent_Done, |
| 71397 | /* 201708 */ // Label 4538: @201708 |
| 71398 | /* 201708 */ GIM_Try, /*On fail goto*//*Label 4539*/ GIMT_Encode4(201737), // Rule ID 21725 // |
| 71399 | /* 201713 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71400 | /* 201716 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71401 | /* 201720 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71402 | /* 201724 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71403 | /* 201726 */ // (vector_compress:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src, VK4WM:{ *:[v4i1] }:$mask, (undef:{ *:[v4f64] })) => (VCOMPRESSPDZ256rrkz:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src) |
| 71404 | /* 201726 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ256rrkz), |
| 71405 | /* 201729 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71406 | /* 201731 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71407 | /* 201733 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71408 | /* 201735 */ GIR_RootConstrainSelectedInstOperands, |
| 71409 | /* 201736 */ // GIR_Coverage, 21725, |
| 71410 | /* 201736 */ GIR_EraseRootFromParent_Done, |
| 71411 | /* 201737 */ // Label 4539: @201737 |
| 71412 | /* 201737 */ GIM_Try, /*On fail goto*//*Label 4540*/ GIMT_Encode4(201762), // Rule ID 21691 // |
| 71413 | /* 201742 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71414 | /* 201745 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71415 | /* 201749 */ // (vector_compress:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$passthru) => (VPCOMPRESSQZ256rrk:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$passthru, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src) |
| 71416 | /* 201749 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ256rrk), |
| 71417 | /* 201752 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71418 | /* 201754 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71419 | /* 201756 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71420 | /* 201758 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71421 | /* 201760 */ GIR_RootConstrainSelectedInstOperands, |
| 71422 | /* 201761 */ // GIR_Coverage, 21691, |
| 71423 | /* 201761 */ GIR_EraseRootFromParent_Done, |
| 71424 | /* 201762 */ // Label 4540: @201762 |
| 71425 | /* 201762 */ GIM_Try, /*On fail goto*//*Label 4541*/ GIMT_Encode4(201787), // Rule ID 21727 // |
| 71426 | /* 201767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71427 | /* 201770 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71428 | /* 201774 */ // (vector_compress:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$passthru) => (VCOMPRESSPDZ256rrk:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$passthru, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src) |
| 71429 | /* 201774 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ256rrk), |
| 71430 | /* 201777 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71431 | /* 201779 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71432 | /* 201781 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71433 | /* 201783 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71434 | /* 201785 */ GIR_RootConstrainSelectedInstOperands, |
| 71435 | /* 201786 */ // GIR_Coverage, 21727, |
| 71436 | /* 201786 */ GIR_EraseRootFromParent_Done, |
| 71437 | /* 201787 */ // Label 4541: @201787 |
| 71438 | /* 201787 */ GIM_Reject, |
| 71439 | /* 201788 */ // Label 4535: @201788 |
| 71440 | /* 201788 */ GIM_Reject, |
| 71441 | /* 201789 */ // Label 4511: @201789 |
| 71442 | /* 201789 */ GIM_Try, /*On fail goto*//*Label 4542*/ GIMT_Encode4(201903), |
| 71443 | /* 201794 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 71444 | /* 201797 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 71445 | /* 201800 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 71446 | /* 201803 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71447 | /* 201807 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71448 | /* 201811 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 71449 | /* 201815 */ GIM_Try, /*On fail goto*//*Label 4543*/ GIMT_Encode4(201848), // Rule ID 22098 // |
| 71450 | /* 201820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71451 | /* 201823 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71452 | /* 201827 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71453 | /* 201833 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71454 | /* 201835 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71455 | /* 201837 */ // (vector_compress:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8i16] }) => (VPCOMPRESSWZ128rrkz:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src) |
| 71456 | /* 201837 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ128rrkz), |
| 71457 | /* 201840 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71458 | /* 201842 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71459 | /* 201844 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71460 | /* 201846 */ GIR_RootConstrainSelectedInstOperands, |
| 71461 | /* 201847 */ // GIR_Coverage, 22098, |
| 71462 | /* 201847 */ GIR_EraseRootFromParent_Done, |
| 71463 | /* 201848 */ // Label 4543: @201848 |
| 71464 | /* 201848 */ GIM_Try, /*On fail goto*//*Label 4544*/ GIMT_Encode4(201877), // Rule ID 22097 // |
| 71465 | /* 201853 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71466 | /* 201856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71467 | /* 201860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71468 | /* 201864 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71469 | /* 201866 */ // (vector_compress:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, VK8WM:{ *:[v8i1] }:$mask, (undef:{ *:[v8i16] })) => (VPCOMPRESSWZ128rrkz:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src) |
| 71470 | /* 201866 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ128rrkz), |
| 71471 | /* 201869 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71472 | /* 201871 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71473 | /* 201873 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71474 | /* 201875 */ GIR_RootConstrainSelectedInstOperands, |
| 71475 | /* 201876 */ // GIR_Coverage, 22097, |
| 71476 | /* 201876 */ GIR_EraseRootFromParent_Done, |
| 71477 | /* 201877 */ // Label 4544: @201877 |
| 71478 | /* 201877 */ GIM_Try, /*On fail goto*//*Label 4545*/ GIMT_Encode4(201902), // Rule ID 22099 // |
| 71479 | /* 201882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71480 | /* 201885 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71481 | /* 201889 */ // (vector_compress:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$passthru) => (VPCOMPRESSWZ128rrk:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$passthru, VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src) |
| 71482 | /* 201889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ128rrk), |
| 71483 | /* 201892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71484 | /* 201894 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71485 | /* 201896 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71486 | /* 201898 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71487 | /* 201900 */ GIR_RootConstrainSelectedInstOperands, |
| 71488 | /* 201901 */ // GIR_Coverage, 22099, |
| 71489 | /* 201901 */ GIR_EraseRootFromParent_Done, |
| 71490 | /* 201902 */ // Label 4545: @201902 |
| 71491 | /* 201902 */ GIM_Reject, |
| 71492 | /* 201903 */ // Label 4542: @201903 |
| 71493 | /* 201903 */ GIM_Reject, |
| 71494 | /* 201904 */ // Label 4512: @201904 |
| 71495 | /* 201904 */ GIM_Try, /*On fail goto*//*Label 4546*/ GIMT_Encode4(202105), |
| 71496 | /* 201909 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 71497 | /* 201912 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 71498 | /* 201915 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 71499 | /* 201918 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71500 | /* 201922 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71501 | /* 201926 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 71502 | /* 201930 */ GIM_Try, /*On fail goto*//*Label 4547*/ GIMT_Encode4(201963), // Rule ID 21672 // |
| 71503 | /* 201935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71504 | /* 201938 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71505 | /* 201942 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71506 | /* 201948 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71507 | /* 201950 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71508 | /* 201952 */ // (vector_compress:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8i32] }) => (VPCOMPRESSDZ256rrkz:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src) |
| 71509 | /* 201952 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ256rrkz), |
| 71510 | /* 201955 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71511 | /* 201957 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71512 | /* 201959 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71513 | /* 201961 */ GIR_RootConstrainSelectedInstOperands, |
| 71514 | /* 201962 */ // GIR_Coverage, 21672, |
| 71515 | /* 201962 */ GIR_EraseRootFromParent_Done, |
| 71516 | /* 201963 */ // Label 4547: @201963 |
| 71517 | /* 201963 */ GIM_Try, /*On fail goto*//*Label 4548*/ GIMT_Encode4(201996), // Rule ID 21708 // |
| 71518 | /* 201968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71519 | /* 201971 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71520 | /* 201975 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71521 | /* 201981 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71522 | /* 201983 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71523 | /* 201985 */ // (vector_compress:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src, VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8f32] }) => (VCOMPRESSPSZ256rrkz:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src) |
| 71524 | /* 201985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ256rrkz), |
| 71525 | /* 201988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71526 | /* 201990 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71527 | /* 201992 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71528 | /* 201994 */ GIR_RootConstrainSelectedInstOperands, |
| 71529 | /* 201995 */ // GIR_Coverage, 21708, |
| 71530 | /* 201995 */ GIR_EraseRootFromParent_Done, |
| 71531 | /* 201996 */ // Label 4548: @201996 |
| 71532 | /* 201996 */ GIM_Try, /*On fail goto*//*Label 4549*/ GIMT_Encode4(202025), // Rule ID 21671 // |
| 71533 | /* 202001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71534 | /* 202004 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71535 | /* 202008 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71536 | /* 202012 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71537 | /* 202014 */ // (vector_compress:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, VK8WM:{ *:[v8i1] }:$mask, (undef:{ *:[v8i32] })) => (VPCOMPRESSDZ256rrkz:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src) |
| 71538 | /* 202014 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ256rrkz), |
| 71539 | /* 202017 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71540 | /* 202019 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71541 | /* 202021 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71542 | /* 202023 */ GIR_RootConstrainSelectedInstOperands, |
| 71543 | /* 202024 */ // GIR_Coverage, 21671, |
| 71544 | /* 202024 */ GIR_EraseRootFromParent_Done, |
| 71545 | /* 202025 */ // Label 4549: @202025 |
| 71546 | /* 202025 */ GIM_Try, /*On fail goto*//*Label 4550*/ GIMT_Encode4(202054), // Rule ID 21707 // |
| 71547 | /* 202030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71548 | /* 202033 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71549 | /* 202037 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71550 | /* 202041 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71551 | /* 202043 */ // (vector_compress:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src, VK8WM:{ *:[v8i1] }:$mask, (undef:{ *:[v8f32] })) => (VCOMPRESSPSZ256rrkz:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src) |
| 71552 | /* 202043 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ256rrkz), |
| 71553 | /* 202046 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71554 | /* 202048 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71555 | /* 202050 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71556 | /* 202052 */ GIR_RootConstrainSelectedInstOperands, |
| 71557 | /* 202053 */ // GIR_Coverage, 21707, |
| 71558 | /* 202053 */ GIR_EraseRootFromParent_Done, |
| 71559 | /* 202054 */ // Label 4550: @202054 |
| 71560 | /* 202054 */ GIM_Try, /*On fail goto*//*Label 4551*/ GIMT_Encode4(202079), // Rule ID 21673 // |
| 71561 | /* 202059 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71562 | /* 202062 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71563 | /* 202066 */ // (vector_compress:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$passthru) => (VPCOMPRESSDZ256rrk:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$passthru, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src) |
| 71564 | /* 202066 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ256rrk), |
| 71565 | /* 202069 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71566 | /* 202071 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71567 | /* 202073 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71568 | /* 202075 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71569 | /* 202077 */ GIR_RootConstrainSelectedInstOperands, |
| 71570 | /* 202078 */ // GIR_Coverage, 21673, |
| 71571 | /* 202078 */ GIR_EraseRootFromParent_Done, |
| 71572 | /* 202079 */ // Label 4551: @202079 |
| 71573 | /* 202079 */ GIM_Try, /*On fail goto*//*Label 4552*/ GIMT_Encode4(202104), // Rule ID 21709 // |
| 71574 | /* 202084 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71575 | /* 202087 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71576 | /* 202091 */ // (vector_compress:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$passthru) => (VCOMPRESSPSZ256rrk:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$passthru, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src) |
| 71577 | /* 202091 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ256rrk), |
| 71578 | /* 202094 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71579 | /* 202096 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71580 | /* 202098 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71581 | /* 202100 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71582 | /* 202102 */ GIR_RootConstrainSelectedInstOperands, |
| 71583 | /* 202103 */ // GIR_Coverage, 21709, |
| 71584 | /* 202103 */ GIR_EraseRootFromParent_Done, |
| 71585 | /* 202104 */ // Label 4552: @202104 |
| 71586 | /* 202104 */ GIM_Reject, |
| 71587 | /* 202105 */ // Label 4546: @202105 |
| 71588 | /* 202105 */ GIM_Reject, |
| 71589 | /* 202106 */ // Label 4513: @202106 |
| 71590 | /* 202106 */ GIM_Try, /*On fail goto*//*Label 4553*/ GIMT_Encode4(202307), |
| 71591 | /* 202111 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 71592 | /* 202114 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 71593 | /* 202117 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 71594 | /* 202120 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71595 | /* 202124 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71596 | /* 202128 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 71597 | /* 202132 */ GIM_Try, /*On fail goto*//*Label 4554*/ GIMT_Encode4(202165), // Rule ID 21684 // |
| 71598 | /* 202137 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71599 | /* 202140 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71600 | /* 202144 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71601 | /* 202150 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71602 | /* 202152 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71603 | /* 202154 */ // (vector_compress:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src, VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8i64] }) => (VPCOMPRESSQZrrkz:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src) |
| 71604 | /* 202154 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZrrkz), |
| 71605 | /* 202157 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71606 | /* 202159 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71607 | /* 202161 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71608 | /* 202163 */ GIR_RootConstrainSelectedInstOperands, |
| 71609 | /* 202164 */ // GIR_Coverage, 21684, |
| 71610 | /* 202164 */ GIR_EraseRootFromParent_Done, |
| 71611 | /* 202165 */ // Label 4554: @202165 |
| 71612 | /* 202165 */ GIM_Try, /*On fail goto*//*Label 4555*/ GIMT_Encode4(202198), // Rule ID 21720 // |
| 71613 | /* 202170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71614 | /* 202173 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71615 | /* 202177 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71616 | /* 202183 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71617 | /* 202185 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71618 | /* 202187 */ // (vector_compress:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src, VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8f64] }) => (VCOMPRESSPDZrrkz:{ *:[v8f64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src) |
| 71619 | /* 202187 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZrrkz), |
| 71620 | /* 202190 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71621 | /* 202192 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71622 | /* 202194 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71623 | /* 202196 */ GIR_RootConstrainSelectedInstOperands, |
| 71624 | /* 202197 */ // GIR_Coverage, 21720, |
| 71625 | /* 202197 */ GIR_EraseRootFromParent_Done, |
| 71626 | /* 202198 */ // Label 4555: @202198 |
| 71627 | /* 202198 */ GIM_Try, /*On fail goto*//*Label 4556*/ GIMT_Encode4(202227), // Rule ID 21683 // |
| 71628 | /* 202203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71629 | /* 202206 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71630 | /* 202210 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71631 | /* 202214 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71632 | /* 202216 */ // (vector_compress:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src, VK8WM:{ *:[v8i1] }:$mask, (undef:{ *:[v8i64] })) => (VPCOMPRESSQZrrkz:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src) |
| 71633 | /* 202216 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZrrkz), |
| 71634 | /* 202219 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71635 | /* 202221 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71636 | /* 202223 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71637 | /* 202225 */ GIR_RootConstrainSelectedInstOperands, |
| 71638 | /* 202226 */ // GIR_Coverage, 21683, |
| 71639 | /* 202226 */ GIR_EraseRootFromParent_Done, |
| 71640 | /* 202227 */ // Label 4556: @202227 |
| 71641 | /* 202227 */ GIM_Try, /*On fail goto*//*Label 4557*/ GIMT_Encode4(202256), // Rule ID 21719 // |
| 71642 | /* 202232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71643 | /* 202235 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71644 | /* 202239 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71645 | /* 202243 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71646 | /* 202245 */ // (vector_compress:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src, VK8WM:{ *:[v8i1] }:$mask, (undef:{ *:[v8f64] })) => (VCOMPRESSPDZrrkz:{ *:[v8f64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src) |
| 71647 | /* 202245 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZrrkz), |
| 71648 | /* 202248 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71649 | /* 202250 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71650 | /* 202252 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71651 | /* 202254 */ GIR_RootConstrainSelectedInstOperands, |
| 71652 | /* 202255 */ // GIR_Coverage, 21719, |
| 71653 | /* 202255 */ GIR_EraseRootFromParent_Done, |
| 71654 | /* 202256 */ // Label 4557: @202256 |
| 71655 | /* 202256 */ GIM_Try, /*On fail goto*//*Label 4558*/ GIMT_Encode4(202281), // Rule ID 21685 // |
| 71656 | /* 202261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71657 | /* 202264 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71658 | /* 202268 */ // (vector_compress:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$passthru) => (VPCOMPRESSQZrrk:{ *:[v8i64] } VR512:{ *:[v8i64] }:$passthru, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src) |
| 71659 | /* 202268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZrrk), |
| 71660 | /* 202271 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71661 | /* 202273 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71662 | /* 202275 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71663 | /* 202277 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71664 | /* 202279 */ GIR_RootConstrainSelectedInstOperands, |
| 71665 | /* 202280 */ // GIR_Coverage, 21685, |
| 71666 | /* 202280 */ GIR_EraseRootFromParent_Done, |
| 71667 | /* 202281 */ // Label 4558: @202281 |
| 71668 | /* 202281 */ GIM_Try, /*On fail goto*//*Label 4559*/ GIMT_Encode4(202306), // Rule ID 21721 // |
| 71669 | /* 202286 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71670 | /* 202289 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71671 | /* 202293 */ // (vector_compress:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$passthru) => (VCOMPRESSPDZrrk:{ *:[v8f64] } VR512:{ *:[v8f64] }:$passthru, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src) |
| 71672 | /* 202293 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZrrk), |
| 71673 | /* 202296 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71674 | /* 202298 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71675 | /* 202300 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71676 | /* 202302 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71677 | /* 202304 */ GIR_RootConstrainSelectedInstOperands, |
| 71678 | /* 202305 */ // GIR_Coverage, 21721, |
| 71679 | /* 202305 */ GIR_EraseRootFromParent_Done, |
| 71680 | /* 202306 */ // Label 4559: @202306 |
| 71681 | /* 202306 */ GIM_Reject, |
| 71682 | /* 202307 */ // Label 4553: @202307 |
| 71683 | /* 202307 */ GIM_Reject, |
| 71684 | /* 202308 */ // Label 4514: @202308 |
| 71685 | /* 202308 */ GIM_Try, /*On fail goto*//*Label 4560*/ GIMT_Encode4(202422), |
| 71686 | /* 202313 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 71687 | /* 202316 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 71688 | /* 202319 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 71689 | /* 202322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71690 | /* 202326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71691 | /* 202330 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 71692 | /* 202334 */ GIM_Try, /*On fail goto*//*Label 4561*/ GIMT_Encode4(202367), // Rule ID 22080 // |
| 71693 | /* 202339 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71694 | /* 202342 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71695 | /* 202346 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71696 | /* 202352 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71697 | /* 202354 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71698 | /* 202356 */ // (vector_compress:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, VK16WM:{ *:[v16i1] }:$mask, immAllZerosV:{ *:[v16i8] }) => (VPCOMPRESSBZ128rrkz:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src) |
| 71699 | /* 202356 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ128rrkz), |
| 71700 | /* 202359 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71701 | /* 202361 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71702 | /* 202363 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71703 | /* 202365 */ GIR_RootConstrainSelectedInstOperands, |
| 71704 | /* 202366 */ // GIR_Coverage, 22080, |
| 71705 | /* 202366 */ GIR_EraseRootFromParent_Done, |
| 71706 | /* 202367 */ // Label 4561: @202367 |
| 71707 | /* 202367 */ GIM_Try, /*On fail goto*//*Label 4562*/ GIMT_Encode4(202396), // Rule ID 22079 // |
| 71708 | /* 202372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71709 | /* 202375 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71710 | /* 202379 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71711 | /* 202383 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71712 | /* 202385 */ // (vector_compress:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, VK16WM:{ *:[v16i1] }:$mask, (undef:{ *:[v16i8] })) => (VPCOMPRESSBZ128rrkz:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src) |
| 71713 | /* 202385 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ128rrkz), |
| 71714 | /* 202388 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71715 | /* 202390 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71716 | /* 202392 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71717 | /* 202394 */ GIR_RootConstrainSelectedInstOperands, |
| 71718 | /* 202395 */ // GIR_Coverage, 22079, |
| 71719 | /* 202395 */ GIR_EraseRootFromParent_Done, |
| 71720 | /* 202396 */ // Label 4562: @202396 |
| 71721 | /* 202396 */ GIM_Try, /*On fail goto*//*Label 4563*/ GIMT_Encode4(202421), // Rule ID 22081 // |
| 71722 | /* 202401 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71723 | /* 202404 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71724 | /* 202408 */ // (vector_compress:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$passthru) => (VPCOMPRESSBZ128rrk:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$passthru, VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src) |
| 71725 | /* 202408 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ128rrk), |
| 71726 | /* 202411 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71727 | /* 202413 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71728 | /* 202415 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71729 | /* 202417 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71730 | /* 202419 */ GIR_RootConstrainSelectedInstOperands, |
| 71731 | /* 202420 */ // GIR_Coverage, 22081, |
| 71732 | /* 202420 */ GIR_EraseRootFromParent_Done, |
| 71733 | /* 202421 */ // Label 4563: @202421 |
| 71734 | /* 202421 */ GIM_Reject, |
| 71735 | /* 202422 */ // Label 4560: @202422 |
| 71736 | /* 202422 */ GIM_Reject, |
| 71737 | /* 202423 */ // Label 4515: @202423 |
| 71738 | /* 202423 */ GIM_Try, /*On fail goto*//*Label 4564*/ GIMT_Encode4(202537), |
| 71739 | /* 202428 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 71740 | /* 202431 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 71741 | /* 202434 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 71742 | /* 202437 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71743 | /* 202441 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71744 | /* 202445 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 71745 | /* 202449 */ GIM_Try, /*On fail goto*//*Label 4565*/ GIMT_Encode4(202482), // Rule ID 22092 // |
| 71746 | /* 202454 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71747 | /* 202457 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71748 | /* 202461 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71749 | /* 202467 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71750 | /* 202469 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71751 | /* 202471 */ // (vector_compress:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, VK16WM:{ *:[v16i1] }:$mask, immAllZerosV:{ *:[v16i16] }) => (VPCOMPRESSWZ256rrkz:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src) |
| 71752 | /* 202471 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ256rrkz), |
| 71753 | /* 202474 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71754 | /* 202476 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71755 | /* 202478 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71756 | /* 202480 */ GIR_RootConstrainSelectedInstOperands, |
| 71757 | /* 202481 */ // GIR_Coverage, 22092, |
| 71758 | /* 202481 */ GIR_EraseRootFromParent_Done, |
| 71759 | /* 202482 */ // Label 4565: @202482 |
| 71760 | /* 202482 */ GIM_Try, /*On fail goto*//*Label 4566*/ GIMT_Encode4(202511), // Rule ID 22091 // |
| 71761 | /* 202487 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71762 | /* 202490 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71763 | /* 202494 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71764 | /* 202498 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71765 | /* 202500 */ // (vector_compress:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, VK16WM:{ *:[v16i1] }:$mask, (undef:{ *:[v16i16] })) => (VPCOMPRESSWZ256rrkz:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src) |
| 71766 | /* 202500 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ256rrkz), |
| 71767 | /* 202503 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71768 | /* 202505 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71769 | /* 202507 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71770 | /* 202509 */ GIR_RootConstrainSelectedInstOperands, |
| 71771 | /* 202510 */ // GIR_Coverage, 22091, |
| 71772 | /* 202510 */ GIR_EraseRootFromParent_Done, |
| 71773 | /* 202511 */ // Label 4566: @202511 |
| 71774 | /* 202511 */ GIM_Try, /*On fail goto*//*Label 4567*/ GIMT_Encode4(202536), // Rule ID 22093 // |
| 71775 | /* 202516 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71776 | /* 202519 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71777 | /* 202523 */ // (vector_compress:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$passthru) => (VPCOMPRESSWZ256rrk:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$passthru, VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src) |
| 71778 | /* 202523 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ256rrk), |
| 71779 | /* 202526 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71780 | /* 202528 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71781 | /* 202530 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71782 | /* 202532 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71783 | /* 202534 */ GIR_RootConstrainSelectedInstOperands, |
| 71784 | /* 202535 */ // GIR_Coverage, 22093, |
| 71785 | /* 202535 */ GIR_EraseRootFromParent_Done, |
| 71786 | /* 202536 */ // Label 4567: @202536 |
| 71787 | /* 202536 */ GIM_Reject, |
| 71788 | /* 202537 */ // Label 4564: @202537 |
| 71789 | /* 202537 */ GIM_Reject, |
| 71790 | /* 202538 */ // Label 4516: @202538 |
| 71791 | /* 202538 */ GIM_Try, /*On fail goto*//*Label 4568*/ GIMT_Encode4(202739), |
| 71792 | /* 202543 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 71793 | /* 202546 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 71794 | /* 202549 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 71795 | /* 202552 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71796 | /* 202556 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71797 | /* 202560 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 71798 | /* 202564 */ GIM_Try, /*On fail goto*//*Label 4569*/ GIMT_Encode4(202597), // Rule ID 21666 // |
| 71799 | /* 202569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71800 | /* 202572 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71801 | /* 202576 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71802 | /* 202582 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71803 | /* 202584 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71804 | /* 202586 */ // (vector_compress:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src, VK16WM:{ *:[v16i1] }:$mask, immAllZerosV:{ *:[v16i32] }) => (VPCOMPRESSDZrrkz:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src) |
| 71805 | /* 202586 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZrrkz), |
| 71806 | /* 202589 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71807 | /* 202591 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71808 | /* 202593 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71809 | /* 202595 */ GIR_RootConstrainSelectedInstOperands, |
| 71810 | /* 202596 */ // GIR_Coverage, 21666, |
| 71811 | /* 202596 */ GIR_EraseRootFromParent_Done, |
| 71812 | /* 202597 */ // Label 4569: @202597 |
| 71813 | /* 202597 */ GIM_Try, /*On fail goto*//*Label 4570*/ GIMT_Encode4(202630), // Rule ID 21702 // |
| 71814 | /* 202602 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71815 | /* 202605 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71816 | /* 202609 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71817 | /* 202615 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71818 | /* 202617 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71819 | /* 202619 */ // (vector_compress:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src, VK16WM:{ *:[v16i1] }:$mask, immAllZerosV:{ *:[v16f32] }) => (VCOMPRESSPSZrrkz:{ *:[v16f32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src) |
| 71820 | /* 202619 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZrrkz), |
| 71821 | /* 202622 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71822 | /* 202624 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71823 | /* 202626 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71824 | /* 202628 */ GIR_RootConstrainSelectedInstOperands, |
| 71825 | /* 202629 */ // GIR_Coverage, 21702, |
| 71826 | /* 202629 */ GIR_EraseRootFromParent_Done, |
| 71827 | /* 202630 */ // Label 4570: @202630 |
| 71828 | /* 202630 */ GIM_Try, /*On fail goto*//*Label 4571*/ GIMT_Encode4(202659), // Rule ID 21665 // |
| 71829 | /* 202635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71830 | /* 202638 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71831 | /* 202642 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71832 | /* 202646 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71833 | /* 202648 */ // (vector_compress:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src, VK16WM:{ *:[v16i1] }:$mask, (undef:{ *:[v16i32] })) => (VPCOMPRESSDZrrkz:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src) |
| 71834 | /* 202648 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZrrkz), |
| 71835 | /* 202651 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71836 | /* 202653 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71837 | /* 202655 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71838 | /* 202657 */ GIR_RootConstrainSelectedInstOperands, |
| 71839 | /* 202658 */ // GIR_Coverage, 21665, |
| 71840 | /* 202658 */ GIR_EraseRootFromParent_Done, |
| 71841 | /* 202659 */ // Label 4571: @202659 |
| 71842 | /* 202659 */ GIM_Try, /*On fail goto*//*Label 4572*/ GIMT_Encode4(202688), // Rule ID 21701 // |
| 71843 | /* 202664 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71844 | /* 202667 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71845 | /* 202671 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71846 | /* 202675 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71847 | /* 202677 */ // (vector_compress:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src, VK16WM:{ *:[v16i1] }:$mask, (undef:{ *:[v16f32] })) => (VCOMPRESSPSZrrkz:{ *:[v16f32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src) |
| 71848 | /* 202677 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZrrkz), |
| 71849 | /* 202680 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71850 | /* 202682 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71851 | /* 202684 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71852 | /* 202686 */ GIR_RootConstrainSelectedInstOperands, |
| 71853 | /* 202687 */ // GIR_Coverage, 21701, |
| 71854 | /* 202687 */ GIR_EraseRootFromParent_Done, |
| 71855 | /* 202688 */ // Label 4572: @202688 |
| 71856 | /* 202688 */ GIM_Try, /*On fail goto*//*Label 4573*/ GIMT_Encode4(202713), // Rule ID 21667 // |
| 71857 | /* 202693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71858 | /* 202696 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71859 | /* 202700 */ // (vector_compress:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$passthru) => (VPCOMPRESSDZrrk:{ *:[v16i32] } VR512:{ *:[v16i32] }:$passthru, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src) |
| 71860 | /* 202700 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZrrk), |
| 71861 | /* 202703 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71862 | /* 202705 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71863 | /* 202707 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71864 | /* 202709 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71865 | /* 202711 */ GIR_RootConstrainSelectedInstOperands, |
| 71866 | /* 202712 */ // GIR_Coverage, 21667, |
| 71867 | /* 202712 */ GIR_EraseRootFromParent_Done, |
| 71868 | /* 202713 */ // Label 4573: @202713 |
| 71869 | /* 202713 */ GIM_Try, /*On fail goto*//*Label 4574*/ GIMT_Encode4(202738), // Rule ID 21703 // |
| 71870 | /* 202718 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71871 | /* 202721 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71872 | /* 202725 */ // (vector_compress:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$passthru) => (VCOMPRESSPSZrrk:{ *:[v16f32] } VR512:{ *:[v16f32] }:$passthru, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src) |
| 71873 | /* 202725 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZrrk), |
| 71874 | /* 202728 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71875 | /* 202730 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71876 | /* 202732 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71877 | /* 202734 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71878 | /* 202736 */ GIR_RootConstrainSelectedInstOperands, |
| 71879 | /* 202737 */ // GIR_Coverage, 21703, |
| 71880 | /* 202737 */ GIR_EraseRootFromParent_Done, |
| 71881 | /* 202738 */ // Label 4574: @202738 |
| 71882 | /* 202738 */ GIM_Reject, |
| 71883 | /* 202739 */ // Label 4568: @202739 |
| 71884 | /* 202739 */ GIM_Reject, |
| 71885 | /* 202740 */ // Label 4517: @202740 |
| 71886 | /* 202740 */ GIM_Try, /*On fail goto*//*Label 4575*/ GIMT_Encode4(202854), |
| 71887 | /* 202745 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 71888 | /* 202748 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 71889 | /* 202751 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 71890 | /* 202754 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71891 | /* 202758 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71892 | /* 202762 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32WMRegClassID), |
| 71893 | /* 202766 */ GIM_Try, /*On fail goto*//*Label 4576*/ GIMT_Encode4(202799), // Rule ID 22074 // |
| 71894 | /* 202771 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71895 | /* 202774 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71896 | /* 202778 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71897 | /* 202784 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71898 | /* 202786 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71899 | /* 202788 */ // (vector_compress:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, VK32WM:{ *:[v32i1] }:$mask, immAllZerosV:{ *:[v32i8] }) => (VPCOMPRESSBZ256rrkz:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src) |
| 71900 | /* 202788 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ256rrkz), |
| 71901 | /* 202791 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71902 | /* 202793 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71903 | /* 202795 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71904 | /* 202797 */ GIR_RootConstrainSelectedInstOperands, |
| 71905 | /* 202798 */ // GIR_Coverage, 22074, |
| 71906 | /* 202798 */ GIR_EraseRootFromParent_Done, |
| 71907 | /* 202799 */ // Label 4576: @202799 |
| 71908 | /* 202799 */ GIM_Try, /*On fail goto*//*Label 4577*/ GIMT_Encode4(202828), // Rule ID 22073 // |
| 71909 | /* 202804 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71910 | /* 202807 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71911 | /* 202811 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71912 | /* 202815 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71913 | /* 202817 */ // (vector_compress:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, VK32WM:{ *:[v32i1] }:$mask, (undef:{ *:[v32i8] })) => (VPCOMPRESSBZ256rrkz:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src) |
| 71914 | /* 202817 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ256rrkz), |
| 71915 | /* 202820 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71916 | /* 202822 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71917 | /* 202824 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71918 | /* 202826 */ GIR_RootConstrainSelectedInstOperands, |
| 71919 | /* 202827 */ // GIR_Coverage, 22073, |
| 71920 | /* 202827 */ GIR_EraseRootFromParent_Done, |
| 71921 | /* 202828 */ // Label 4577: @202828 |
| 71922 | /* 202828 */ GIM_Try, /*On fail goto*//*Label 4578*/ GIMT_Encode4(202853), // Rule ID 22075 // |
| 71923 | /* 202833 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71924 | /* 202836 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71925 | /* 202840 */ // (vector_compress:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$passthru) => (VPCOMPRESSBZ256rrk:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$passthru, VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src) |
| 71926 | /* 202840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ256rrk), |
| 71927 | /* 202843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71928 | /* 202845 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71929 | /* 202847 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71930 | /* 202849 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71931 | /* 202851 */ GIR_RootConstrainSelectedInstOperands, |
| 71932 | /* 202852 */ // GIR_Coverage, 22075, |
| 71933 | /* 202852 */ GIR_EraseRootFromParent_Done, |
| 71934 | /* 202853 */ // Label 4578: @202853 |
| 71935 | /* 202853 */ GIM_Reject, |
| 71936 | /* 202854 */ // Label 4575: @202854 |
| 71937 | /* 202854 */ GIM_Reject, |
| 71938 | /* 202855 */ // Label 4518: @202855 |
| 71939 | /* 202855 */ GIM_Try, /*On fail goto*//*Label 4579*/ GIMT_Encode4(202969), |
| 71940 | /* 202860 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 71941 | /* 202863 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 71942 | /* 202866 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 71943 | /* 202869 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71944 | /* 202873 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71945 | /* 202877 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32WMRegClassID), |
| 71946 | /* 202881 */ GIM_Try, /*On fail goto*//*Label 4580*/ GIMT_Encode4(202914), // Rule ID 22086 // |
| 71947 | /* 202886 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 71948 | /* 202889 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71949 | /* 202893 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71950 | /* 202899 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71951 | /* 202901 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71952 | /* 202903 */ // (vector_compress:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src, VK32WM:{ *:[v32i1] }:$mask, immAllZerosV:{ *:[v32i16] }) => (VPCOMPRESSWZrrkz:{ *:[v32i16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src) |
| 71953 | /* 202903 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZrrkz), |
| 71954 | /* 202906 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71955 | /* 202908 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71956 | /* 202910 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71957 | /* 202912 */ GIR_RootConstrainSelectedInstOperands, |
| 71958 | /* 202913 */ // GIR_Coverage, 22086, |
| 71959 | /* 202913 */ GIR_EraseRootFromParent_Done, |
| 71960 | /* 202914 */ // Label 4580: @202914 |
| 71961 | /* 202914 */ GIM_Try, /*On fail goto*//*Label 4581*/ GIMT_Encode4(202943), // Rule ID 22085 // |
| 71962 | /* 202919 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 71963 | /* 202922 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71964 | /* 202926 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71965 | /* 202930 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71966 | /* 202932 */ // (vector_compress:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src, VK32WM:{ *:[v32i1] }:$mask, (undef:{ *:[v32i16] })) => (VPCOMPRESSWZrrkz:{ *:[v32i16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src) |
| 71967 | /* 202932 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZrrkz), |
| 71968 | /* 202935 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71969 | /* 202937 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71970 | /* 202939 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71971 | /* 202941 */ GIR_RootConstrainSelectedInstOperands, |
| 71972 | /* 202942 */ // GIR_Coverage, 22085, |
| 71973 | /* 202942 */ GIR_EraseRootFromParent_Done, |
| 71974 | /* 202943 */ // Label 4581: @202943 |
| 71975 | /* 202943 */ GIM_Try, /*On fail goto*//*Label 4582*/ GIMT_Encode4(202968), // Rule ID 22087 // |
| 71976 | /* 202948 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 71977 | /* 202951 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71978 | /* 202955 */ // (vector_compress:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src, VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$passthru) => (VPCOMPRESSWZrrk:{ *:[v32i16] } VR512:{ *:[v32i16] }:$passthru, VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src) |
| 71979 | /* 202955 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZrrk), |
| 71980 | /* 202958 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71981 | /* 202960 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71982 | /* 202962 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71983 | /* 202964 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71984 | /* 202966 */ GIR_RootConstrainSelectedInstOperands, |
| 71985 | /* 202967 */ // GIR_Coverage, 22087, |
| 71986 | /* 202967 */ GIR_EraseRootFromParent_Done, |
| 71987 | /* 202968 */ // Label 4582: @202968 |
| 71988 | /* 202968 */ GIM_Reject, |
| 71989 | /* 202969 */ // Label 4579: @202969 |
| 71990 | /* 202969 */ GIM_Reject, |
| 71991 | /* 202970 */ // Label 4519: @202970 |
| 71992 | /* 202970 */ GIM_Try, /*On fail goto*//*Label 4583*/ GIMT_Encode4(203084), |
| 71993 | /* 202975 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 71994 | /* 202978 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s1, |
| 71995 | /* 202981 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v64s8, |
| 71996 | /* 202984 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71997 | /* 202988 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71998 | /* 202992 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64WMRegClassID), |
| 71999 | /* 202996 */ GIM_Try, /*On fail goto*//*Label 4584*/ GIMT_Encode4(203029), // Rule ID 22068 // |
| 72000 | /* 203001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 72001 | /* 203004 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 72002 | /* 203008 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 72003 | /* 203014 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 72004 | /* 203016 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72005 | /* 203018 */ // (vector_compress:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src, VK64WM:{ *:[v64i1] }:$mask, immAllZerosV:{ *:[v64i8] }) => (VPCOMPRESSBZrrkz:{ *:[v64i8] } VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src) |
| 72006 | /* 203018 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZrrkz), |
| 72007 | /* 203021 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72008 | /* 203023 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 72009 | /* 203025 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 72010 | /* 203027 */ GIR_RootConstrainSelectedInstOperands, |
| 72011 | /* 203028 */ // GIR_Coverage, 22068, |
| 72012 | /* 203028 */ GIR_EraseRootFromParent_Done, |
| 72013 | /* 203029 */ // Label 4584: @203029 |
| 72014 | /* 203029 */ GIM_Try, /*On fail goto*//*Label 4585*/ GIMT_Encode4(203058), // Rule ID 22067 // |
| 72015 | /* 203034 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 72016 | /* 203037 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 72017 | /* 203041 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 72018 | /* 203045 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72019 | /* 203047 */ // (vector_compress:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src, VK64WM:{ *:[v64i1] }:$mask, (undef:{ *:[v64i8] })) => (VPCOMPRESSBZrrkz:{ *:[v64i8] } VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src) |
| 72020 | /* 203047 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZrrkz), |
| 72021 | /* 203050 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72022 | /* 203052 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 72023 | /* 203054 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 72024 | /* 203056 */ GIR_RootConstrainSelectedInstOperands, |
| 72025 | /* 203057 */ // GIR_Coverage, 22067, |
| 72026 | /* 203057 */ GIR_EraseRootFromParent_Done, |
| 72027 | /* 203058 */ // Label 4585: @203058 |
| 72028 | /* 203058 */ GIM_Try, /*On fail goto*//*Label 4586*/ GIMT_Encode4(203083), // Rule ID 22069 // |
| 72029 | /* 203063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 72030 | /* 203066 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72031 | /* 203070 */ // (vector_compress:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src, VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$passthru) => (VPCOMPRESSBZrrk:{ *:[v64i8] } VR512:{ *:[v64i8] }:$passthru, VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src) |
| 72032 | /* 203070 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZrrk), |
| 72033 | /* 203073 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72034 | /* 203075 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 72035 | /* 203077 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 72036 | /* 203079 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 72037 | /* 203081 */ GIR_RootConstrainSelectedInstOperands, |
| 72038 | /* 203082 */ // GIR_Coverage, 22069, |
| 72039 | /* 203082 */ GIR_EraseRootFromParent_Done, |
| 72040 | /* 203083 */ // Label 4586: @203083 |
| 72041 | /* 203083 */ GIM_Reject, |
| 72042 | /* 203084 */ // Label 4583: @203084 |
| 72043 | /* 203084 */ GIM_Reject, |
| 72044 | /* 203085 */ // Label 4520: @203085 |
| 72045 | /* 203085 */ GIM_Reject, |
| 72046 | /* 203086 */ // Label 62: @203086 |
| 72047 | /* 203086 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 4590*/ GIMT_Encode4(203391), |
| 72048 | /* 203097 */ /*GILLT_s16*//*Label 4587*/ GIMT_Encode4(203109), |
| 72049 | /* 203101 */ /*GILLT_s32*//*Label 4588*/ GIMT_Encode4(203203), |
| 72050 | /* 203105 */ /*GILLT_s64*//*Label 4589*/ GIMT_Encode4(203297), |
| 72051 | /* 203109 */ // Label 4587: @203109 |
| 72052 | /* 203109 */ GIM_Try, /*On fail goto*//*Label 4591*/ GIMT_Encode4(203202), |
| 72053 | /* 203114 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 72054 | /* 203117 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 72055 | /* 203121 */ GIM_Try, /*On fail goto*//*Label 4592*/ GIMT_Encode4(203176), // Rule ID 77 // |
| 72056 | /* 203126 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 72057 | /* 203129 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72058 | /* 203133 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72059 | /* 203137 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72060 | /* 203140 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72061 | /* 203144 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 72062 | /* 203148 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72063 | /* 203150 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72064 | /* 203157 */ // (cttz:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (TZCNT16rm:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72065 | /* 203157 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZCNT16rm), |
| 72066 | /* 203160 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72067 | /* 203162 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72068 | /* 203166 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72069 | /* 203169 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72070 | /* 203174 */ GIR_RootConstrainSelectedInstOperands, |
| 72071 | /* 203175 */ // GIR_Coverage, 77, |
| 72072 | /* 203175 */ GIR_EraseRootFromParent_Done, |
| 72073 | /* 203176 */ // Label 4592: @203176 |
| 72074 | /* 203176 */ GIM_Try, /*On fail goto*//*Label 4593*/ GIMT_Encode4(203201), // Rule ID 76 // |
| 72075 | /* 203181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 72076 | /* 203184 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 72077 | /* 203188 */ // (cttz:{ *:[i16] } GR16:{ *:[i16] }:$src1) => (TZCNT16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 72078 | /* 203188 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::TZCNT16rr), |
| 72079 | /* 203193 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 72080 | /* 203199 */ GIR_RootConstrainSelectedInstOperands, |
| 72081 | /* 203200 */ // GIR_Coverage, 76, |
| 72082 | /* 203200 */ GIR_Done, |
| 72083 | /* 203201 */ // Label 4593: @203201 |
| 72084 | /* 203201 */ GIM_Reject, |
| 72085 | /* 203202 */ // Label 4591: @203202 |
| 72086 | /* 203202 */ GIM_Reject, |
| 72087 | /* 203203 */ // Label 4588: @203203 |
| 72088 | /* 203203 */ GIM_Try, /*On fail goto*//*Label 4594*/ GIMT_Encode4(203296), |
| 72089 | /* 203208 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 72090 | /* 203211 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 72091 | /* 203215 */ GIM_Try, /*On fail goto*//*Label 4595*/ GIMT_Encode4(203270), // Rule ID 79 // |
| 72092 | /* 203220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 72093 | /* 203223 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72094 | /* 203227 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72095 | /* 203231 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72096 | /* 203234 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72097 | /* 203238 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 72098 | /* 203242 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72099 | /* 203244 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72100 | /* 203251 */ // (cttz:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (TZCNT32rm:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72101 | /* 203251 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZCNT32rm), |
| 72102 | /* 203254 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72103 | /* 203256 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72104 | /* 203260 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72105 | /* 203263 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72106 | /* 203268 */ GIR_RootConstrainSelectedInstOperands, |
| 72107 | /* 203269 */ // GIR_Coverage, 79, |
| 72108 | /* 203269 */ GIR_EraseRootFromParent_Done, |
| 72109 | /* 203270 */ // Label 4595: @203270 |
| 72110 | /* 203270 */ GIM_Try, /*On fail goto*//*Label 4596*/ GIMT_Encode4(203295), // Rule ID 78 // |
| 72111 | /* 203275 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 72112 | /* 203278 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 72113 | /* 203282 */ // (cttz:{ *:[i32] } GR32:{ *:[i32] }:$src1) => (TZCNT32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 72114 | /* 203282 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::TZCNT32rr), |
| 72115 | /* 203287 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 72116 | /* 203293 */ GIR_RootConstrainSelectedInstOperands, |
| 72117 | /* 203294 */ // GIR_Coverage, 78, |
| 72118 | /* 203294 */ GIR_Done, |
| 72119 | /* 203295 */ // Label 4596: @203295 |
| 72120 | /* 203295 */ GIM_Reject, |
| 72121 | /* 203296 */ // Label 4594: @203296 |
| 72122 | /* 203296 */ GIM_Reject, |
| 72123 | /* 203297 */ // Label 4589: @203297 |
| 72124 | /* 203297 */ GIM_Try, /*On fail goto*//*Label 4597*/ GIMT_Encode4(203390), |
| 72125 | /* 203302 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 72126 | /* 203305 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 72127 | /* 203309 */ GIM_Try, /*On fail goto*//*Label 4598*/ GIMT_Encode4(203364), // Rule ID 81 // |
| 72128 | /* 203314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 72129 | /* 203317 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72130 | /* 203321 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72131 | /* 203325 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72132 | /* 203328 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72133 | /* 203332 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72134 | /* 203336 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72135 | /* 203338 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72136 | /* 203345 */ // (cttz:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (TZCNT64rm:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72137 | /* 203345 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZCNT64rm), |
| 72138 | /* 203348 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72139 | /* 203350 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72140 | /* 203354 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72141 | /* 203357 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72142 | /* 203362 */ GIR_RootConstrainSelectedInstOperands, |
| 72143 | /* 203363 */ // GIR_Coverage, 81, |
| 72144 | /* 203363 */ GIR_EraseRootFromParent_Done, |
| 72145 | /* 203364 */ // Label 4598: @203364 |
| 72146 | /* 203364 */ GIM_Try, /*On fail goto*//*Label 4599*/ GIMT_Encode4(203389), // Rule ID 80 // |
| 72147 | /* 203369 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 72148 | /* 203372 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 72149 | /* 203376 */ // (cttz:{ *:[i64] } GR64:{ *:[i64] }:$src1) => (TZCNT64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 72150 | /* 203376 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::TZCNT64rr), |
| 72151 | /* 203381 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 72152 | /* 203387 */ GIR_RootConstrainSelectedInstOperands, |
| 72153 | /* 203388 */ // GIR_Coverage, 80, |
| 72154 | /* 203388 */ GIR_Done, |
| 72155 | /* 203389 */ // Label 4599: @203389 |
| 72156 | /* 203389 */ GIM_Reject, |
| 72157 | /* 203390 */ // Label 4597: @203390 |
| 72158 | /* 203390 */ GIM_Reject, |
| 72159 | /* 203391 */ // Label 4590: @203391 |
| 72160 | /* 203391 */ GIM_Reject, |
| 72161 | /* 203392 */ // Label 63: @203392 |
| 72162 | /* 203392 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 4603*/ GIMT_Encode4(203778), |
| 72163 | /* 203403 */ /*GILLT_s16*//*Label 4600*/ GIMT_Encode4(203415), |
| 72164 | /* 203407 */ /*GILLT_s32*//*Label 4601*/ GIMT_Encode4(203536), |
| 72165 | /* 203411 */ /*GILLT_s64*//*Label 4602*/ GIMT_Encode4(203657), |
| 72166 | /* 203415 */ // Label 4600: @203415 |
| 72167 | /* 203415 */ GIM_Try, /*On fail goto*//*Label 4604*/ GIMT_Encode4(203535), |
| 72168 | /* 203420 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 72169 | /* 203423 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 72170 | /* 203427 */ GIM_Try, /*On fail goto*//*Label 4605*/ GIMT_Encode4(203496), // Rule ID 22985 // |
| 72171 | /* 203432 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72172 | /* 203436 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72173 | /* 203440 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72174 | /* 203443 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72175 | /* 203447 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 72176 | /* 203451 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72177 | /* 203453 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72178 | /* 203460 */ // (cttz_zero_undef:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (BSF16rm:{ *:[i16] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i16] }), addr:{ *:[iPTR] }:$src) |
| 72179 | /* 203460 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 72180 | /* 203463 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72181 | /* 203467 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72182 | /* 203472 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72183 | /* 203474 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF16rm), |
| 72184 | /* 203477 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72185 | /* 203479 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 72186 | /* 203482 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 72187 | /* 203486 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72188 | /* 203489 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72189 | /* 203494 */ GIR_RootConstrainSelectedInstOperands, |
| 72190 | /* 203495 */ // GIR_Coverage, 22985, |
| 72191 | /* 203495 */ GIR_EraseRootFromParent_Done, |
| 72192 | /* 203496 */ // Label 4605: @203496 |
| 72193 | /* 203496 */ GIM_Try, /*On fail goto*//*Label 4606*/ GIMT_Encode4(203534), // Rule ID 22982 // |
| 72194 | /* 203501 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 72195 | /* 203505 */ // (cttz_zero_undef:{ *:[i16] } GR16:{ *:[i16] }:$src) => (BSF16rr:{ *:[i16] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i16] }), GR16:{ *:[i16] }:$src) |
| 72196 | /* 203505 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 72197 | /* 203508 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72198 | /* 203512 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72199 | /* 203517 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72200 | /* 203519 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF16rr), |
| 72201 | /* 203522 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72202 | /* 203524 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 72203 | /* 203527 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 72204 | /* 203529 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72205 | /* 203532 */ GIR_RootConstrainSelectedInstOperands, |
| 72206 | /* 203533 */ // GIR_Coverage, 22982, |
| 72207 | /* 203533 */ GIR_EraseRootFromParent_Done, |
| 72208 | /* 203534 */ // Label 4606: @203534 |
| 72209 | /* 203534 */ GIM_Reject, |
| 72210 | /* 203535 */ // Label 4604: @203535 |
| 72211 | /* 203535 */ GIM_Reject, |
| 72212 | /* 203536 */ // Label 4601: @203536 |
| 72213 | /* 203536 */ GIM_Try, /*On fail goto*//*Label 4607*/ GIMT_Encode4(203656), |
| 72214 | /* 203541 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 72215 | /* 203544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 72216 | /* 203548 */ GIM_Try, /*On fail goto*//*Label 4608*/ GIMT_Encode4(203617), // Rule ID 22986 // |
| 72217 | /* 203553 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72218 | /* 203557 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72219 | /* 203561 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72220 | /* 203564 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72221 | /* 203568 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 72222 | /* 203572 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72223 | /* 203574 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72224 | /* 203581 */ // (cttz_zero_undef:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (BSF32rm:{ *:[i32] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), addr:{ *:[iPTR] }:$src) |
| 72225 | /* 203581 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 72226 | /* 203584 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72227 | /* 203588 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72228 | /* 203593 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72229 | /* 203595 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF32rm), |
| 72230 | /* 203598 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72231 | /* 203600 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 72232 | /* 203603 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 72233 | /* 203607 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72234 | /* 203610 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72235 | /* 203615 */ GIR_RootConstrainSelectedInstOperands, |
| 72236 | /* 203616 */ // GIR_Coverage, 22986, |
| 72237 | /* 203616 */ GIR_EraseRootFromParent_Done, |
| 72238 | /* 203617 */ // Label 4608: @203617 |
| 72239 | /* 203617 */ GIM_Try, /*On fail goto*//*Label 4609*/ GIMT_Encode4(203655), // Rule ID 22983 // |
| 72240 | /* 203622 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 72241 | /* 203626 */ // (cttz_zero_undef:{ *:[i32] } GR32:{ *:[i32] }:$src) => (BSF32rr:{ *:[i32] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR32:{ *:[i32] }:$src) |
| 72242 | /* 203626 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 72243 | /* 203629 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72244 | /* 203633 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72245 | /* 203638 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72246 | /* 203640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF32rr), |
| 72247 | /* 203643 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72248 | /* 203645 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 72249 | /* 203648 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 72250 | /* 203650 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72251 | /* 203653 */ GIR_RootConstrainSelectedInstOperands, |
| 72252 | /* 203654 */ // GIR_Coverage, 22983, |
| 72253 | /* 203654 */ GIR_EraseRootFromParent_Done, |
| 72254 | /* 203655 */ // Label 4609: @203655 |
| 72255 | /* 203655 */ GIM_Reject, |
| 72256 | /* 203656 */ // Label 4607: @203656 |
| 72257 | /* 203656 */ GIM_Reject, |
| 72258 | /* 203657 */ // Label 4602: @203657 |
| 72259 | /* 203657 */ GIM_Try, /*On fail goto*//*Label 4610*/ GIMT_Encode4(203777), |
| 72260 | /* 203662 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 72261 | /* 203665 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 72262 | /* 203669 */ GIM_Try, /*On fail goto*//*Label 4611*/ GIMT_Encode4(203738), // Rule ID 22987 // |
| 72263 | /* 203674 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72264 | /* 203678 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72265 | /* 203682 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72266 | /* 203685 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72267 | /* 203689 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72268 | /* 203693 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72269 | /* 203695 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72270 | /* 203702 */ // (cttz_zero_undef:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (BSF64rm:{ *:[i64] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i64] }), addr:{ *:[iPTR] }:$src) |
| 72271 | /* 203702 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 72272 | /* 203705 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72273 | /* 203709 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72274 | /* 203714 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72275 | /* 203716 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF64rm), |
| 72276 | /* 203719 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72277 | /* 203721 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 72278 | /* 203724 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 72279 | /* 203728 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72280 | /* 203731 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72281 | /* 203736 */ GIR_RootConstrainSelectedInstOperands, |
| 72282 | /* 203737 */ // GIR_Coverage, 22987, |
| 72283 | /* 203737 */ GIR_EraseRootFromParent_Done, |
| 72284 | /* 203738 */ // Label 4611: @203738 |
| 72285 | /* 203738 */ GIM_Try, /*On fail goto*//*Label 4612*/ GIMT_Encode4(203776), // Rule ID 22984 // |
| 72286 | /* 203743 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 72287 | /* 203747 */ // (cttz_zero_undef:{ *:[i64] } GR64:{ *:[i64] }:$src) => (BSF64rr:{ *:[i64] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i64] }), GR64:{ *:[i64] }:$src) |
| 72288 | /* 203747 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 72289 | /* 203750 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72290 | /* 203754 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72291 | /* 203759 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72292 | /* 203761 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF64rr), |
| 72293 | /* 203764 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72294 | /* 203766 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 72295 | /* 203769 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 72296 | /* 203771 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72297 | /* 203774 */ GIR_RootConstrainSelectedInstOperands, |
| 72298 | /* 203775 */ // GIR_Coverage, 22984, |
| 72299 | /* 203775 */ GIR_EraseRootFromParent_Done, |
| 72300 | /* 203776 */ // Label 4612: @203776 |
| 72301 | /* 203776 */ GIM_Reject, |
| 72302 | /* 203777 */ // Label 4610: @203777 |
| 72303 | /* 203777 */ GIM_Reject, |
| 72304 | /* 203778 */ // Label 4603: @203778 |
| 72305 | /* 203778 */ GIM_Reject, |
| 72306 | /* 203779 */ // Label 64: @203779 |
| 72307 | /* 203779 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(20), /*)*//*default:*//*Label 4622*/ GIMT_Encode4(205082), |
| 72308 | /* 203790 */ /*GILLT_s16*//*Label 4613*/ GIMT_Encode4(203862), |
| 72309 | /* 203794 */ /*GILLT_s32*//*Label 4614*/ GIMT_Encode4(203956), |
| 72310 | /* 203798 */ /*GILLT_s64*//*Label 4615*/ GIMT_Encode4(204050), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 72311 | /* 203814 */ /*GILLT_v2s64*//*Label 4616*/ GIMT_Encode4(204144), GIMT_Encode4(0), |
| 72312 | /* 203822 */ /*GILLT_v4s32*//*Label 4617*/ GIMT_Encode4(204340), |
| 72313 | /* 203826 */ /*GILLT_v4s64*//*Label 4618*/ GIMT_Encode4(204536), GIMT_Encode4(0), GIMT_Encode4(0), |
| 72314 | /* 203838 */ /*GILLT_v8s32*//*Label 4619*/ GIMT_Encode4(204724), |
| 72315 | /* 203842 */ /*GILLT_v8s64*//*Label 4620*/ GIMT_Encode4(204912), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 72316 | /* 203858 */ /*GILLT_v16s32*//*Label 4621*/ GIMT_Encode4(204997), |
| 72317 | /* 203862 */ // Label 4613: @203862 |
| 72318 | /* 203862 */ GIM_Try, /*On fail goto*//*Label 4623*/ GIMT_Encode4(203955), |
| 72319 | /* 203867 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 72320 | /* 203870 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 72321 | /* 203874 */ GIM_Try, /*On fail goto*//*Label 4624*/ GIMT_Encode4(203929), // Rule ID 71 // |
| 72322 | /* 203879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 72323 | /* 203882 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72324 | /* 203886 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72325 | /* 203890 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72326 | /* 203893 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72327 | /* 203897 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 72328 | /* 203901 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72329 | /* 203903 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72330 | /* 203910 */ // (ctlz:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (LZCNT16rm:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72331 | /* 203910 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LZCNT16rm), |
| 72332 | /* 203913 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72333 | /* 203915 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72334 | /* 203919 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72335 | /* 203922 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72336 | /* 203927 */ GIR_RootConstrainSelectedInstOperands, |
| 72337 | /* 203928 */ // GIR_Coverage, 71, |
| 72338 | /* 203928 */ GIR_EraseRootFromParent_Done, |
| 72339 | /* 203929 */ // Label 4624: @203929 |
| 72340 | /* 203929 */ GIM_Try, /*On fail goto*//*Label 4625*/ GIMT_Encode4(203954), // Rule ID 70 // |
| 72341 | /* 203934 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 72342 | /* 203937 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 72343 | /* 203941 */ // (ctlz:{ *:[i16] } GR16:{ *:[i16] }:$src1) => (LZCNT16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 72344 | /* 203941 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::LZCNT16rr), |
| 72345 | /* 203946 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 72346 | /* 203952 */ GIR_RootConstrainSelectedInstOperands, |
| 72347 | /* 203953 */ // GIR_Coverage, 70, |
| 72348 | /* 203953 */ GIR_Done, |
| 72349 | /* 203954 */ // Label 4625: @203954 |
| 72350 | /* 203954 */ GIM_Reject, |
| 72351 | /* 203955 */ // Label 4623: @203955 |
| 72352 | /* 203955 */ GIM_Reject, |
| 72353 | /* 203956 */ // Label 4614: @203956 |
| 72354 | /* 203956 */ GIM_Try, /*On fail goto*//*Label 4626*/ GIMT_Encode4(204049), |
| 72355 | /* 203961 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 72356 | /* 203964 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 72357 | /* 203968 */ GIM_Try, /*On fail goto*//*Label 4627*/ GIMT_Encode4(204023), // Rule ID 73 // |
| 72358 | /* 203973 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 72359 | /* 203976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72360 | /* 203980 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72361 | /* 203984 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72362 | /* 203987 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72363 | /* 203991 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 72364 | /* 203995 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72365 | /* 203997 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72366 | /* 204004 */ // (ctlz:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (LZCNT32rm:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72367 | /* 204004 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LZCNT32rm), |
| 72368 | /* 204007 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72369 | /* 204009 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72370 | /* 204013 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72371 | /* 204016 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72372 | /* 204021 */ GIR_RootConstrainSelectedInstOperands, |
| 72373 | /* 204022 */ // GIR_Coverage, 73, |
| 72374 | /* 204022 */ GIR_EraseRootFromParent_Done, |
| 72375 | /* 204023 */ // Label 4627: @204023 |
| 72376 | /* 204023 */ GIM_Try, /*On fail goto*//*Label 4628*/ GIMT_Encode4(204048), // Rule ID 72 // |
| 72377 | /* 204028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 72378 | /* 204031 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 72379 | /* 204035 */ // (ctlz:{ *:[i32] } GR32:{ *:[i32] }:$src1) => (LZCNT32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 72380 | /* 204035 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::LZCNT32rr), |
| 72381 | /* 204040 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 72382 | /* 204046 */ GIR_RootConstrainSelectedInstOperands, |
| 72383 | /* 204047 */ // GIR_Coverage, 72, |
| 72384 | /* 204047 */ GIR_Done, |
| 72385 | /* 204048 */ // Label 4628: @204048 |
| 72386 | /* 204048 */ GIM_Reject, |
| 72387 | /* 204049 */ // Label 4626: @204049 |
| 72388 | /* 204049 */ GIM_Reject, |
| 72389 | /* 204050 */ // Label 4615: @204050 |
| 72390 | /* 204050 */ GIM_Try, /*On fail goto*//*Label 4629*/ GIMT_Encode4(204143), |
| 72391 | /* 204055 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 72392 | /* 204058 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 72393 | /* 204062 */ GIM_Try, /*On fail goto*//*Label 4630*/ GIMT_Encode4(204117), // Rule ID 75 // |
| 72394 | /* 204067 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 72395 | /* 204070 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72396 | /* 204074 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72397 | /* 204078 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72398 | /* 204081 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72399 | /* 204085 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72400 | /* 204089 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72401 | /* 204091 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72402 | /* 204098 */ // (ctlz:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (LZCNT64rm:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72403 | /* 204098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LZCNT64rm), |
| 72404 | /* 204101 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72405 | /* 204103 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72406 | /* 204107 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72407 | /* 204110 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72408 | /* 204115 */ GIR_RootConstrainSelectedInstOperands, |
| 72409 | /* 204116 */ // GIR_Coverage, 75, |
| 72410 | /* 204116 */ GIR_EraseRootFromParent_Done, |
| 72411 | /* 204117 */ // Label 4630: @204117 |
| 72412 | /* 204117 */ GIM_Try, /*On fail goto*//*Label 4631*/ GIMT_Encode4(204142), // Rule ID 74 // |
| 72413 | /* 204122 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 72414 | /* 204125 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 72415 | /* 204129 */ // (ctlz:{ *:[i64] } GR64:{ *:[i64] }:$src1) => (LZCNT64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 72416 | /* 204129 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::LZCNT64rr), |
| 72417 | /* 204134 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 72418 | /* 204140 */ GIR_RootConstrainSelectedInstOperands, |
| 72419 | /* 204141 */ // GIR_Coverage, 74, |
| 72420 | /* 204141 */ GIR_Done, |
| 72421 | /* 204142 */ // Label 4631: @204142 |
| 72422 | /* 204142 */ GIM_Reject, |
| 72423 | /* 204143 */ // Label 4629: @204143 |
| 72424 | /* 204143 */ GIM_Reject, |
| 72425 | /* 204144 */ // Label 4616: @204144 |
| 72426 | /* 204144 */ GIM_Try, /*On fail goto*//*Label 4632*/ GIMT_Encode4(204339), |
| 72427 | /* 204149 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 72428 | /* 204152 */ GIM_Try, /*On fail goto*//*Label 4633*/ GIMT_Encode4(204208), // Rule ID 13357 // |
| 72429 | /* 204157 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72430 | /* 204160 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72431 | /* 204164 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72432 | /* 204168 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72433 | /* 204172 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72434 | /* 204175 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72435 | /* 204179 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72436 | /* 204183 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72437 | /* 204185 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72438 | /* 204192 */ // (ctlz:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTQZ128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1) |
| 72439 | /* 204192 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZ128rm), |
| 72440 | /* 204195 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72441 | /* 204197 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72442 | /* 204201 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72443 | /* 204206 */ GIR_RootConstrainSelectedInstOperands, |
| 72444 | /* 204207 */ // GIR_Coverage, 13357, |
| 72445 | /* 204207 */ GIR_EraseRootFromParent_Done, |
| 72446 | /* 204208 */ // Label 4633: @204208 |
| 72447 | /* 204208 */ GIM_Try, /*On fail goto*//*Label 4634*/ GIMT_Encode4(204231), // Rule ID 13354 // |
| 72448 | /* 204213 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72449 | /* 204216 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72450 | /* 204220 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72451 | /* 204224 */ // (ctlz:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) => (VPLZCNTQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) |
| 72452 | /* 204224 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZ128rr), |
| 72453 | /* 204229 */ GIR_RootConstrainSelectedInstOperands, |
| 72454 | /* 204230 */ // GIR_Coverage, 13354, |
| 72455 | /* 204230 */ GIR_Done, |
| 72456 | /* 204231 */ // Label 4634: @204231 |
| 72457 | /* 204231 */ GIM_Try, /*On fail goto*//*Label 4635*/ GIMT_Encode4(204338), // Rule ID 21826 // |
| 72458 | /* 204236 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasEVEX512_NoVLX), |
| 72459 | /* 204239 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 72460 | /* 204243 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72461 | /* 204247 */ // (ctlz:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPLZCNTQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 72462 | /* 204247 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 72463 | /* 204250 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72464 | /* 204254 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72465 | /* 204259 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72466 | /* 204261 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 72467 | /* 204264 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72468 | /* 204268 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72469 | /* 204273 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72470 | /* 204276 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72471 | /* 204280 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 72472 | /* 204283 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72473 | /* 204288 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72474 | /* 204293 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 72475 | /* 204298 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72476 | /* 204301 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZrr), |
| 72477 | /* 204305 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72478 | /* 204310 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72479 | /* 204313 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72480 | /* 204315 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72481 | /* 204318 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72482 | /* 204320 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 72483 | /* 204327 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 72484 | /* 204332 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72485 | /* 204337 */ // GIR_Coverage, 21826, |
| 72486 | /* 204337 */ GIR_EraseRootFromParent_Done, |
| 72487 | /* 204338 */ // Label 4635: @204338 |
| 72488 | /* 204338 */ GIM_Reject, |
| 72489 | /* 204339 */ // Label 4632: @204339 |
| 72490 | /* 204339 */ GIM_Reject, |
| 72491 | /* 204340 */ // Label 4617: @204340 |
| 72492 | /* 204340 */ GIM_Try, /*On fail goto*//*Label 4636*/ GIMT_Encode4(204535), |
| 72493 | /* 204345 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 72494 | /* 204348 */ GIM_Try, /*On fail goto*//*Label 4637*/ GIMT_Encode4(204404), // Rule ID 13384 // |
| 72495 | /* 204353 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72496 | /* 204356 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72497 | /* 204360 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72498 | /* 204364 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72499 | /* 204368 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72500 | /* 204371 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72501 | /* 204375 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72502 | /* 204379 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72503 | /* 204381 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72504 | /* 204388 */ // (ctlz:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTDZ128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1) |
| 72505 | /* 204388 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZ128rm), |
| 72506 | /* 204391 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72507 | /* 204393 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72508 | /* 204397 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72509 | /* 204402 */ GIR_RootConstrainSelectedInstOperands, |
| 72510 | /* 204403 */ // GIR_Coverage, 13384, |
| 72511 | /* 204403 */ GIR_EraseRootFromParent_Done, |
| 72512 | /* 204404 */ // Label 4637: @204404 |
| 72513 | /* 204404 */ GIM_Try, /*On fail goto*//*Label 4638*/ GIMT_Encode4(204427), // Rule ID 13381 // |
| 72514 | /* 204409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72515 | /* 204412 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72516 | /* 204416 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72517 | /* 204420 */ // (ctlz:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) => (VPLZCNTDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) |
| 72518 | /* 204420 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZ128rr), |
| 72519 | /* 204425 */ GIR_RootConstrainSelectedInstOperands, |
| 72520 | /* 204426 */ // GIR_Coverage, 13381, |
| 72521 | /* 204426 */ GIR_Done, |
| 72522 | /* 204427 */ // Label 4638: @204427 |
| 72523 | /* 204427 */ GIM_Try, /*On fail goto*//*Label 4639*/ GIMT_Encode4(204534), // Rule ID 21828 // |
| 72524 | /* 204432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasEVEX512_NoVLX), |
| 72525 | /* 204435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 72526 | /* 204439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72527 | /* 204443 */ // (ctlz:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) => (EXTRACT_SUBREG:{ *:[v4i32] } (VPLZCNTDZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 72528 | /* 204443 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 72529 | /* 204446 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72530 | /* 204450 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72531 | /* 204455 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72532 | /* 204457 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 72533 | /* 204460 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72534 | /* 204464 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72535 | /* 204469 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72536 | /* 204472 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72537 | /* 204476 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 72538 | /* 204479 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72539 | /* 204484 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72540 | /* 204489 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 72541 | /* 204494 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72542 | /* 204497 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZrr), |
| 72543 | /* 204501 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72544 | /* 204506 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72545 | /* 204509 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72546 | /* 204511 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72547 | /* 204514 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72548 | /* 204516 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 72549 | /* 204523 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 72550 | /* 204528 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72551 | /* 204533 */ // GIR_Coverage, 21828, |
| 72552 | /* 204533 */ GIR_EraseRootFromParent_Done, |
| 72553 | /* 204534 */ // Label 4639: @204534 |
| 72554 | /* 204534 */ GIM_Reject, |
| 72555 | /* 204535 */ // Label 4636: @204535 |
| 72556 | /* 204535 */ GIM_Reject, |
| 72557 | /* 204536 */ // Label 4618: @204536 |
| 72558 | /* 204536 */ GIM_Try, /*On fail goto*//*Label 4640*/ GIMT_Encode4(204723), |
| 72559 | /* 204541 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 72560 | /* 204544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72561 | /* 204548 */ GIM_Try, /*On fail goto*//*Label 4641*/ GIMT_Encode4(204600), // Rule ID 13348 // |
| 72562 | /* 204553 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72563 | /* 204556 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72564 | /* 204560 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72565 | /* 204564 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72566 | /* 204567 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72567 | /* 204571 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72568 | /* 204575 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72569 | /* 204577 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72570 | /* 204584 */ // (ctlz:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1) |
| 72571 | /* 204584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZ256rm), |
| 72572 | /* 204587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72573 | /* 204589 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72574 | /* 204593 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72575 | /* 204598 */ GIR_RootConstrainSelectedInstOperands, |
| 72576 | /* 204599 */ // GIR_Coverage, 13348, |
| 72577 | /* 204599 */ GIR_EraseRootFromParent_Done, |
| 72578 | /* 204600 */ // Label 4641: @204600 |
| 72579 | /* 204600 */ GIM_Try, /*On fail goto*//*Label 4642*/ GIMT_Encode4(204619), // Rule ID 13345 // |
| 72580 | /* 204605 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72581 | /* 204608 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72582 | /* 204612 */ // (ctlz:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) => (VPLZCNTQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) |
| 72583 | /* 204612 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZ256rr), |
| 72584 | /* 204617 */ GIR_RootConstrainSelectedInstOperands, |
| 72585 | /* 204618 */ // GIR_Coverage, 13345, |
| 72586 | /* 204618 */ GIR_Done, |
| 72587 | /* 204619 */ // Label 4642: @204619 |
| 72588 | /* 204619 */ GIM_Try, /*On fail goto*//*Label 4643*/ GIMT_Encode4(204722), // Rule ID 21825 // |
| 72589 | /* 204624 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasEVEX512_NoVLX), |
| 72590 | /* 204627 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72591 | /* 204631 */ // (ctlz:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPLZCNTQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 72592 | /* 204631 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 72593 | /* 204634 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72594 | /* 204638 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72595 | /* 204643 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72596 | /* 204645 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 72597 | /* 204648 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72598 | /* 204652 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72599 | /* 204657 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72600 | /* 204660 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72601 | /* 204664 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 72602 | /* 204667 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72603 | /* 204672 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72604 | /* 204677 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 72605 | /* 204682 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72606 | /* 204685 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZrr), |
| 72607 | /* 204689 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72608 | /* 204694 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72609 | /* 204697 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72610 | /* 204699 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72611 | /* 204702 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72612 | /* 204704 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 72613 | /* 204711 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 72614 | /* 204716 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72615 | /* 204721 */ // GIR_Coverage, 21825, |
| 72616 | /* 204721 */ GIR_EraseRootFromParent_Done, |
| 72617 | /* 204722 */ // Label 4643: @204722 |
| 72618 | /* 204722 */ GIM_Reject, |
| 72619 | /* 204723 */ // Label 4640: @204723 |
| 72620 | /* 204723 */ GIM_Reject, |
| 72621 | /* 204724 */ // Label 4619: @204724 |
| 72622 | /* 204724 */ GIM_Try, /*On fail goto*//*Label 4644*/ GIMT_Encode4(204911), |
| 72623 | /* 204729 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 72624 | /* 204732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72625 | /* 204736 */ GIM_Try, /*On fail goto*//*Label 4645*/ GIMT_Encode4(204788), // Rule ID 13375 // |
| 72626 | /* 204741 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72627 | /* 204744 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72628 | /* 204748 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72629 | /* 204752 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72630 | /* 204755 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72631 | /* 204759 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72632 | /* 204763 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72633 | /* 204765 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72634 | /* 204772 */ // (ctlz:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTDZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1) |
| 72635 | /* 204772 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZ256rm), |
| 72636 | /* 204775 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72637 | /* 204777 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72638 | /* 204781 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72639 | /* 204786 */ GIR_RootConstrainSelectedInstOperands, |
| 72640 | /* 204787 */ // GIR_Coverage, 13375, |
| 72641 | /* 204787 */ GIR_EraseRootFromParent_Done, |
| 72642 | /* 204788 */ // Label 4645: @204788 |
| 72643 | /* 204788 */ GIM_Try, /*On fail goto*//*Label 4646*/ GIMT_Encode4(204807), // Rule ID 13372 // |
| 72644 | /* 204793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72645 | /* 204796 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72646 | /* 204800 */ // (ctlz:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) => (VPLZCNTDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) |
| 72647 | /* 204800 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZ256rr), |
| 72648 | /* 204805 */ GIR_RootConstrainSelectedInstOperands, |
| 72649 | /* 204806 */ // GIR_Coverage, 13372, |
| 72650 | /* 204806 */ GIR_Done, |
| 72651 | /* 204807 */ // Label 4646: @204807 |
| 72652 | /* 204807 */ GIM_Try, /*On fail goto*//*Label 4647*/ GIMT_Encode4(204910), // Rule ID 21827 // |
| 72653 | /* 204812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasEVEX512_NoVLX), |
| 72654 | /* 204815 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72655 | /* 204819 */ // (ctlz:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) => (EXTRACT_SUBREG:{ *:[v8i32] } (VPLZCNTDZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 72656 | /* 204819 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 72657 | /* 204822 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72658 | /* 204826 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72659 | /* 204831 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72660 | /* 204833 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 72661 | /* 204836 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72662 | /* 204840 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72663 | /* 204845 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72664 | /* 204848 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72665 | /* 204852 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 72666 | /* 204855 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72667 | /* 204860 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72668 | /* 204865 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 72669 | /* 204870 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72670 | /* 204873 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZrr), |
| 72671 | /* 204877 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72672 | /* 204882 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72673 | /* 204885 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72674 | /* 204887 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72675 | /* 204890 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72676 | /* 204892 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 72677 | /* 204899 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 72678 | /* 204904 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72679 | /* 204909 */ // GIR_Coverage, 21827, |
| 72680 | /* 204909 */ GIR_EraseRootFromParent_Done, |
| 72681 | /* 204910 */ // Label 4647: @204910 |
| 72682 | /* 204910 */ GIM_Reject, |
| 72683 | /* 204911 */ // Label 4644: @204911 |
| 72684 | /* 204911 */ GIM_Reject, |
| 72685 | /* 204912 */ // Label 4620: @204912 |
| 72686 | /* 204912 */ GIM_Try, /*On fail goto*//*Label 4648*/ GIMT_Encode4(204996), |
| 72687 | /* 204917 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 72688 | /* 204920 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72689 | /* 204924 */ GIM_Try, /*On fail goto*//*Label 4649*/ GIMT_Encode4(204976), // Rule ID 13339 // |
| 72690 | /* 204929 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI), |
| 72691 | /* 204932 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72692 | /* 204936 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72693 | /* 204940 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72694 | /* 204943 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72695 | /* 204947 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72696 | /* 204951 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72697 | /* 204953 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72698 | /* 204960 */ // (ctlz:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1) |
| 72699 | /* 204960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZrm), |
| 72700 | /* 204963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72701 | /* 204965 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72702 | /* 204969 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72703 | /* 204974 */ GIR_RootConstrainSelectedInstOperands, |
| 72704 | /* 204975 */ // GIR_Coverage, 13339, |
| 72705 | /* 204975 */ GIR_EraseRootFromParent_Done, |
| 72706 | /* 204976 */ // Label 4649: @204976 |
| 72707 | /* 204976 */ GIM_Try, /*On fail goto*//*Label 4650*/ GIMT_Encode4(204995), // Rule ID 13336 // |
| 72708 | /* 204981 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI), |
| 72709 | /* 204984 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72710 | /* 204988 */ // (ctlz:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) => (VPLZCNTQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) |
| 72711 | /* 204988 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZrr), |
| 72712 | /* 204993 */ GIR_RootConstrainSelectedInstOperands, |
| 72713 | /* 204994 */ // GIR_Coverage, 13336, |
| 72714 | /* 204994 */ GIR_Done, |
| 72715 | /* 204995 */ // Label 4650: @204995 |
| 72716 | /* 204995 */ GIM_Reject, |
| 72717 | /* 204996 */ // Label 4648: @204996 |
| 72718 | /* 204996 */ GIM_Reject, |
| 72719 | /* 204997 */ // Label 4621: @204997 |
| 72720 | /* 204997 */ GIM_Try, /*On fail goto*//*Label 4651*/ GIMT_Encode4(205081), |
| 72721 | /* 205002 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 72722 | /* 205005 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72723 | /* 205009 */ GIM_Try, /*On fail goto*//*Label 4652*/ GIMT_Encode4(205061), // Rule ID 13366 // |
| 72724 | /* 205014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI), |
| 72725 | /* 205017 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72726 | /* 205021 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72727 | /* 205025 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72728 | /* 205028 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72729 | /* 205032 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72730 | /* 205036 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72731 | /* 205038 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72732 | /* 205045 */ // (ctlz:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1) |
| 72733 | /* 205045 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZrm), |
| 72734 | /* 205048 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72735 | /* 205050 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72736 | /* 205054 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72737 | /* 205059 */ GIR_RootConstrainSelectedInstOperands, |
| 72738 | /* 205060 */ // GIR_Coverage, 13366, |
| 72739 | /* 205060 */ GIR_EraseRootFromParent_Done, |
| 72740 | /* 205061 */ // Label 4652: @205061 |
| 72741 | /* 205061 */ GIM_Try, /*On fail goto*//*Label 4653*/ GIMT_Encode4(205080), // Rule ID 13363 // |
| 72742 | /* 205066 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI), |
| 72743 | /* 205069 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72744 | /* 205073 */ // (ctlz:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) => (VPLZCNTDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) |
| 72745 | /* 205073 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZrr), |
| 72746 | /* 205078 */ GIR_RootConstrainSelectedInstOperands, |
| 72747 | /* 205079 */ // GIR_Coverage, 13363, |
| 72748 | /* 205079 */ GIR_Done, |
| 72749 | /* 205080 */ // Label 4653: @205080 |
| 72750 | /* 205080 */ GIM_Reject, |
| 72751 | /* 205081 */ // Label 4651: @205081 |
| 72752 | /* 205081 */ GIM_Reject, |
| 72753 | /* 205082 */ // Label 4622: @205082 |
| 72754 | /* 205082 */ GIM_Reject, |
| 72755 | /* 205083 */ // Label 65: @205083 |
| 72756 | /* 205083 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(25), /*)*//*default:*//*Label 4669*/ GIMT_Encode4(207344), |
| 72757 | /* 205094 */ /*GILLT_s16*//*Label 4654*/ GIMT_Encode4(205186), |
| 72758 | /* 205098 */ /*GILLT_s32*//*Label 4655*/ GIMT_Encode4(205280), |
| 72759 | /* 205102 */ /*GILLT_s64*//*Label 4656*/ GIMT_Encode4(205374), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 72760 | /* 205118 */ /*GILLT_v2s64*//*Label 4657*/ GIMT_Encode4(205468), GIMT_Encode4(0), |
| 72761 | /* 205126 */ /*GILLT_v4s32*//*Label 4658*/ GIMT_Encode4(205664), |
| 72762 | /* 205130 */ /*GILLT_v4s64*//*Label 4659*/ GIMT_Encode4(205860), GIMT_Encode4(0), |
| 72763 | /* 205138 */ /*GILLT_v8s16*//*Label 4660*/ GIMT_Encode4(206048), |
| 72764 | /* 205142 */ /*GILLT_v8s32*//*Label 4661*/ GIMT_Encode4(206244), |
| 72765 | /* 205146 */ /*GILLT_v8s64*//*Label 4662*/ GIMT_Encode4(206432), GIMT_Encode4(0), |
| 72766 | /* 205154 */ /*GILLT_v16s8*//*Label 4663*/ GIMT_Encode4(206517), |
| 72767 | /* 205158 */ /*GILLT_v16s16*//*Label 4664*/ GIMT_Encode4(206713), |
| 72768 | /* 205162 */ /*GILLT_v16s32*//*Label 4665*/ GIMT_Encode4(206901), GIMT_Encode4(0), |
| 72769 | /* 205170 */ /*GILLT_v32s8*//*Label 4666*/ GIMT_Encode4(206986), |
| 72770 | /* 205174 */ /*GILLT_v32s16*//*Label 4667*/ GIMT_Encode4(207174), GIMT_Encode4(0), |
| 72771 | /* 205182 */ /*GILLT_v64s8*//*Label 4668*/ GIMT_Encode4(207259), |
| 72772 | /* 205186 */ // Label 4654: @205186 |
| 72773 | /* 205186 */ GIM_Try, /*On fail goto*//*Label 4670*/ GIMT_Encode4(205279), |
| 72774 | /* 205191 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 72775 | /* 205194 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 72776 | /* 205198 */ GIM_Try, /*On fail goto*//*Label 4671*/ GIMT_Encode4(205253), // Rule ID 3176 // |
| 72777 | /* 205203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72778 | /* 205206 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72779 | /* 205210 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72780 | /* 205214 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72781 | /* 205217 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72782 | /* 205221 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 72783 | /* 205225 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72784 | /* 205227 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72785 | /* 205234 */ // (ctpop:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (POPCNT16rm:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72786 | /* 205234 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::POPCNT16rm), |
| 72787 | /* 205237 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72788 | /* 205239 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72789 | /* 205243 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72790 | /* 205246 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72791 | /* 205251 */ GIR_RootConstrainSelectedInstOperands, |
| 72792 | /* 205252 */ // GIR_Coverage, 3176, |
| 72793 | /* 205252 */ GIR_EraseRootFromParent_Done, |
| 72794 | /* 205253 */ // Label 4671: @205253 |
| 72795 | /* 205253 */ GIM_Try, /*On fail goto*//*Label 4672*/ GIMT_Encode4(205278), // Rule ID 3175 // |
| 72796 | /* 205258 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72797 | /* 205261 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 72798 | /* 205265 */ // (ctpop:{ *:[i16] } GR16:{ *:[i16] }:$src1) => (POPCNT16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 72799 | /* 205265 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::POPCNT16rr), |
| 72800 | /* 205270 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 72801 | /* 205276 */ GIR_RootConstrainSelectedInstOperands, |
| 72802 | /* 205277 */ // GIR_Coverage, 3175, |
| 72803 | /* 205277 */ GIR_Done, |
| 72804 | /* 205278 */ // Label 4672: @205278 |
| 72805 | /* 205278 */ GIM_Reject, |
| 72806 | /* 205279 */ // Label 4670: @205279 |
| 72807 | /* 205279 */ GIM_Reject, |
| 72808 | /* 205280 */ // Label 4655: @205280 |
| 72809 | /* 205280 */ GIM_Try, /*On fail goto*//*Label 4673*/ GIMT_Encode4(205373), |
| 72810 | /* 205285 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 72811 | /* 205288 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 72812 | /* 205292 */ GIM_Try, /*On fail goto*//*Label 4674*/ GIMT_Encode4(205347), // Rule ID 3178 // |
| 72813 | /* 205297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72814 | /* 205300 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72815 | /* 205304 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72816 | /* 205308 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72817 | /* 205311 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72818 | /* 205315 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 72819 | /* 205319 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72820 | /* 205321 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72821 | /* 205328 */ // (ctpop:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (POPCNT32rm:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72822 | /* 205328 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::POPCNT32rm), |
| 72823 | /* 205331 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72824 | /* 205333 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72825 | /* 205337 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72826 | /* 205340 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72827 | /* 205345 */ GIR_RootConstrainSelectedInstOperands, |
| 72828 | /* 205346 */ // GIR_Coverage, 3178, |
| 72829 | /* 205346 */ GIR_EraseRootFromParent_Done, |
| 72830 | /* 205347 */ // Label 4674: @205347 |
| 72831 | /* 205347 */ GIM_Try, /*On fail goto*//*Label 4675*/ GIMT_Encode4(205372), // Rule ID 3177 // |
| 72832 | /* 205352 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72833 | /* 205355 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 72834 | /* 205359 */ // (ctpop:{ *:[i32] } GR32:{ *:[i32] }:$src1) => (POPCNT32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 72835 | /* 205359 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::POPCNT32rr), |
| 72836 | /* 205364 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 72837 | /* 205370 */ GIR_RootConstrainSelectedInstOperands, |
| 72838 | /* 205371 */ // GIR_Coverage, 3177, |
| 72839 | /* 205371 */ GIR_Done, |
| 72840 | /* 205372 */ // Label 4675: @205372 |
| 72841 | /* 205372 */ GIM_Reject, |
| 72842 | /* 205373 */ // Label 4673: @205373 |
| 72843 | /* 205373 */ GIM_Reject, |
| 72844 | /* 205374 */ // Label 4656: @205374 |
| 72845 | /* 205374 */ GIM_Try, /*On fail goto*//*Label 4676*/ GIMT_Encode4(205467), |
| 72846 | /* 205379 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 72847 | /* 205382 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 72848 | /* 205386 */ GIM_Try, /*On fail goto*//*Label 4677*/ GIMT_Encode4(205441), // Rule ID 3180 // |
| 72849 | /* 205391 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72850 | /* 205394 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72851 | /* 205398 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72852 | /* 205402 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72853 | /* 205405 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72854 | /* 205409 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72855 | /* 205413 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72856 | /* 205415 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72857 | /* 205422 */ // (ctpop:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (POPCNT64rm:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72858 | /* 205422 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::POPCNT64rm), |
| 72859 | /* 205425 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72860 | /* 205427 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72861 | /* 205431 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72862 | /* 205434 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72863 | /* 205439 */ GIR_RootConstrainSelectedInstOperands, |
| 72864 | /* 205440 */ // GIR_Coverage, 3180, |
| 72865 | /* 205440 */ GIR_EraseRootFromParent_Done, |
| 72866 | /* 205441 */ // Label 4677: @205441 |
| 72867 | /* 205441 */ GIM_Try, /*On fail goto*//*Label 4678*/ GIMT_Encode4(205466), // Rule ID 3179 // |
| 72868 | /* 205446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72869 | /* 205449 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 72870 | /* 205453 */ // (ctpop:{ *:[i64] } GR64:{ *:[i64] }:$src1) => (POPCNT64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 72871 | /* 205453 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::POPCNT64rr), |
| 72872 | /* 205458 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(RegState::Dead), |
| 72873 | /* 205464 */ GIR_RootConstrainSelectedInstOperands, |
| 72874 | /* 205465 */ // GIR_Coverage, 3179, |
| 72875 | /* 205465 */ GIR_Done, |
| 72876 | /* 205466 */ // Label 4678: @205466 |
| 72877 | /* 205466 */ GIM_Reject, |
| 72878 | /* 205467 */ // Label 4676: @205467 |
| 72879 | /* 205467 */ GIM_Reject, |
| 72880 | /* 205468 */ // Label 4657: @205468 |
| 72881 | /* 205468 */ GIM_Try, /*On fail goto*//*Label 4679*/ GIMT_Encode4(205663), |
| 72882 | /* 205473 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 72883 | /* 205476 */ GIM_Try, /*On fail goto*//*Label 4680*/ GIMT_Encode4(205532), // Rule ID 13465 // |
| 72884 | /* 205481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72885 | /* 205484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72886 | /* 205488 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72887 | /* 205492 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72888 | /* 205496 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72889 | /* 205499 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72890 | /* 205503 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72891 | /* 205507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72892 | /* 205509 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72893 | /* 205516 */ // (ctpop:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTQZ128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1) |
| 72894 | /* 205516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZ128rm), |
| 72895 | /* 205519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72896 | /* 205521 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72897 | /* 205525 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72898 | /* 205530 */ GIR_RootConstrainSelectedInstOperands, |
| 72899 | /* 205531 */ // GIR_Coverage, 13465, |
| 72900 | /* 205531 */ GIR_EraseRootFromParent_Done, |
| 72901 | /* 205532 */ // Label 4680: @205532 |
| 72902 | /* 205532 */ GIM_Try, /*On fail goto*//*Label 4681*/ GIMT_Encode4(205555), // Rule ID 13462 // |
| 72903 | /* 205537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72904 | /* 205540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72905 | /* 205544 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72906 | /* 205548 */ // (ctpop:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) => (VPOPCNTQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) |
| 72907 | /* 205548 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZ128rr), |
| 72908 | /* 205553 */ GIR_RootConstrainSelectedInstOperands, |
| 72909 | /* 205554 */ // GIR_Coverage, 13462, |
| 72910 | /* 205554 */ GIR_Done, |
| 72911 | /* 205555 */ // Label 4681: @205555 |
| 72912 | /* 205555 */ GIM_Try, /*On fail goto*//*Label 4682*/ GIMT_Encode4(205662), // Rule ID 21830 // |
| 72913 | /* 205560 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_HasVPOPCNTDQ_NoVLX), |
| 72914 | /* 205563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 72915 | /* 205567 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72916 | /* 205571 */ // (ctpop:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPOPCNTQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 72917 | /* 205571 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 72918 | /* 205574 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72919 | /* 205578 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72920 | /* 205583 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72921 | /* 205585 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 72922 | /* 205588 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72923 | /* 205592 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72924 | /* 205597 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72925 | /* 205600 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72926 | /* 205604 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 72927 | /* 205607 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72928 | /* 205612 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72929 | /* 205617 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 72930 | /* 205622 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72931 | /* 205625 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZrr), |
| 72932 | /* 205629 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72933 | /* 205634 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72934 | /* 205637 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72935 | /* 205639 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72936 | /* 205642 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72937 | /* 205644 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 72938 | /* 205651 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 72939 | /* 205656 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72940 | /* 205661 */ // GIR_Coverage, 21830, |
| 72941 | /* 205661 */ GIR_EraseRootFromParent_Done, |
| 72942 | /* 205662 */ // Label 4682: @205662 |
| 72943 | /* 205662 */ GIM_Reject, |
| 72944 | /* 205663 */ // Label 4679: @205663 |
| 72945 | /* 205663 */ GIM_Reject, |
| 72946 | /* 205664 */ // Label 4658: @205664 |
| 72947 | /* 205664 */ GIM_Try, /*On fail goto*//*Label 4683*/ GIMT_Encode4(205859), |
| 72948 | /* 205669 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 72949 | /* 205672 */ GIM_Try, /*On fail goto*//*Label 4684*/ GIMT_Encode4(205728), // Rule ID 13492 // |
| 72950 | /* 205677 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72951 | /* 205680 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72952 | /* 205684 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72953 | /* 205688 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72954 | /* 205692 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72955 | /* 205695 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72956 | /* 205699 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72957 | /* 205703 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72958 | /* 205705 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72959 | /* 205712 */ // (ctpop:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTDZ128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1) |
| 72960 | /* 205712 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZ128rm), |
| 72961 | /* 205715 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72962 | /* 205717 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72963 | /* 205721 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72964 | /* 205726 */ GIR_RootConstrainSelectedInstOperands, |
| 72965 | /* 205727 */ // GIR_Coverage, 13492, |
| 72966 | /* 205727 */ GIR_EraseRootFromParent_Done, |
| 72967 | /* 205728 */ // Label 4684: @205728 |
| 72968 | /* 205728 */ GIM_Try, /*On fail goto*//*Label 4685*/ GIMT_Encode4(205751), // Rule ID 13489 // |
| 72969 | /* 205733 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72970 | /* 205736 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72971 | /* 205740 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72972 | /* 205744 */ // (ctpop:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) => (VPOPCNTDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) |
| 72973 | /* 205744 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZ128rr), |
| 72974 | /* 205749 */ GIR_RootConstrainSelectedInstOperands, |
| 72975 | /* 205750 */ // GIR_Coverage, 13489, |
| 72976 | /* 205750 */ GIR_Done, |
| 72977 | /* 205751 */ // Label 4685: @205751 |
| 72978 | /* 205751 */ GIM_Try, /*On fail goto*//*Label 4686*/ GIMT_Encode4(205858), // Rule ID 21832 // |
| 72979 | /* 205756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_HasVPOPCNTDQ_NoVLX), |
| 72980 | /* 205759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 72981 | /* 205763 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72982 | /* 205767 */ // (ctpop:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) => (EXTRACT_SUBREG:{ *:[v4i32] } (VPOPCNTDZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 72983 | /* 205767 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 72984 | /* 205770 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72985 | /* 205774 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72986 | /* 205779 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72987 | /* 205781 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 72988 | /* 205784 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72989 | /* 205788 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72990 | /* 205793 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72991 | /* 205796 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72992 | /* 205800 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 72993 | /* 205803 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72994 | /* 205808 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72995 | /* 205813 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 72996 | /* 205818 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72997 | /* 205821 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZrr), |
| 72998 | /* 205825 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 72999 | /* 205830 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 73000 | /* 205833 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73001 | /* 205835 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 73002 | /* 205838 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73003 | /* 205840 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 73004 | /* 205847 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 73005 | /* 205852 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73006 | /* 205857 */ // GIR_Coverage, 21832, |
| 73007 | /* 205857 */ GIR_EraseRootFromParent_Done, |
| 73008 | /* 205858 */ // Label 4686: @205858 |
| 73009 | /* 205858 */ GIM_Reject, |
| 73010 | /* 205859 */ // Label 4683: @205859 |
| 73011 | /* 205859 */ GIM_Reject, |
| 73012 | /* 205860 */ // Label 4659: @205860 |
| 73013 | /* 205860 */ GIM_Try, /*On fail goto*//*Label 4687*/ GIMT_Encode4(206047), |
| 73014 | /* 205865 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 73015 | /* 205868 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73016 | /* 205872 */ GIM_Try, /*On fail goto*//*Label 4688*/ GIMT_Encode4(205924), // Rule ID 13456 // |
| 73017 | /* 205877 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 73018 | /* 205880 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73019 | /* 205884 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73020 | /* 205888 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73021 | /* 205891 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73022 | /* 205895 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73023 | /* 205899 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73024 | /* 205901 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73025 | /* 205908 */ // (ctpop:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1) |
| 73026 | /* 205908 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZ256rm), |
| 73027 | /* 205911 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73028 | /* 205913 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73029 | /* 205917 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73030 | /* 205922 */ GIR_RootConstrainSelectedInstOperands, |
| 73031 | /* 205923 */ // GIR_Coverage, 13456, |
| 73032 | /* 205923 */ GIR_EraseRootFromParent_Done, |
| 73033 | /* 205924 */ // Label 4688: @205924 |
| 73034 | /* 205924 */ GIM_Try, /*On fail goto*//*Label 4689*/ GIMT_Encode4(205943), // Rule ID 13453 // |
| 73035 | /* 205929 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 73036 | /* 205932 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73037 | /* 205936 */ // (ctpop:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) => (VPOPCNTQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) |
| 73038 | /* 205936 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZ256rr), |
| 73039 | /* 205941 */ GIR_RootConstrainSelectedInstOperands, |
| 73040 | /* 205942 */ // GIR_Coverage, 13453, |
| 73041 | /* 205942 */ GIR_Done, |
| 73042 | /* 205943 */ // Label 4689: @205943 |
| 73043 | /* 205943 */ GIM_Try, /*On fail goto*//*Label 4690*/ GIMT_Encode4(206046), // Rule ID 21829 // |
| 73044 | /* 205948 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_HasVPOPCNTDQ_NoVLX), |
| 73045 | /* 205951 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73046 | /* 205955 */ // (ctpop:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPOPCNTQZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 73047 | /* 205955 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 73048 | /* 205958 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73049 | /* 205962 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73050 | /* 205967 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 73051 | /* 205969 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 73052 | /* 205972 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 73053 | /* 205976 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73054 | /* 205981 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 73055 | /* 205984 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 73056 | /* 205988 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 73057 | /* 205991 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 73058 | /* 205996 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73059 | /* 206001 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 73060 | /* 206006 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 73061 | /* 206009 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZrr), |
| 73062 | /* 206013 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73063 | /* 206018 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 73064 | /* 206021 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73065 | /* 206023 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 73066 | /* 206026 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73067 | /* 206028 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 73068 | /* 206035 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 73069 | /* 206040 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73070 | /* 206045 */ // GIR_Coverage, 21829, |
| 73071 | /* 206045 */ GIR_EraseRootFromParent_Done, |
| 73072 | /* 206046 */ // Label 4690: @206046 |
| 73073 | /* 206046 */ GIM_Reject, |
| 73074 | /* 206047 */ // Label 4687: @206047 |
| 73075 | /* 206047 */ GIM_Reject, |
| 73076 | /* 206048 */ // Label 4660: @206048 |
| 73077 | /* 206048 */ GIM_Try, /*On fail goto*//*Label 4691*/ GIMT_Encode4(206243), |
| 73078 | /* 206053 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 73079 | /* 206056 */ GIM_Try, /*On fail goto*//*Label 4692*/ GIMT_Encode4(206112), // Rule ID 14519 // |
| 73080 | /* 206061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 73081 | /* 206064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73082 | /* 206068 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73083 | /* 206072 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73084 | /* 206076 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73085 | /* 206079 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73086 | /* 206083 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73087 | /* 206087 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73088 | /* 206089 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73089 | /* 206096 */ // (ctpop:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTWZ128rm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1) |
| 73090 | /* 206096 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZ128rm), |
| 73091 | /* 206099 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73092 | /* 206101 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73093 | /* 206105 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73094 | /* 206110 */ GIR_RootConstrainSelectedInstOperands, |
| 73095 | /* 206111 */ // GIR_Coverage, 14519, |
| 73096 | /* 206111 */ GIR_EraseRootFromParent_Done, |
| 73097 | /* 206112 */ // Label 4692: @206112 |
| 73098 | /* 206112 */ GIM_Try, /*On fail goto*//*Label 4693*/ GIMT_Encode4(206135), // Rule ID 14516 // |
| 73099 | /* 206117 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 73100 | /* 206120 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73101 | /* 206124 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73102 | /* 206128 */ // (ctpop:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1) => (VPOPCNTWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1) |
| 73103 | /* 206128 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZ128rr), |
| 73104 | /* 206133 */ GIR_RootConstrainSelectedInstOperands, |
| 73105 | /* 206134 */ // GIR_Coverage, 14516, |
| 73106 | /* 206134 */ GIR_Done, |
| 73107 | /* 206135 */ // Label 4693: @206135 |
| 73108 | /* 206135 */ GIM_Try, /*On fail goto*//*Label 4694*/ GIMT_Encode4(206242), // Rule ID 22139 // |
| 73109 | /* 206140 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasEVEX512_NoVLX), |
| 73110 | /* 206143 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 73111 | /* 206147 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73112 | /* 206151 */ // (ctpop:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1) => (EXTRACT_SUBREG:{ *:[v8i16] } (VPOPCNTWZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 73113 | /* 206151 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 73114 | /* 206154 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73115 | /* 206158 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73116 | /* 206163 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 73117 | /* 206165 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 73118 | /* 206168 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 73119 | /* 206172 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73120 | /* 206177 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 73121 | /* 206180 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 73122 | /* 206184 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 73123 | /* 206187 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 73124 | /* 206192 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73125 | /* 206197 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 73126 | /* 206202 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 73127 | /* 206205 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZrr), |
| 73128 | /* 206209 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73129 | /* 206214 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 73130 | /* 206217 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73131 | /* 206219 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 73132 | /* 206222 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73133 | /* 206224 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 73134 | /* 206231 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 73135 | /* 206236 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73136 | /* 206241 */ // GIR_Coverage, 22139, |
| 73137 | /* 206241 */ GIR_EraseRootFromParent_Done, |
| 73138 | /* 206242 */ // Label 4694: @206242 |
| 73139 | /* 206242 */ GIM_Reject, |
| 73140 | /* 206243 */ // Label 4691: @206243 |
| 73141 | /* 206243 */ GIM_Reject, |
| 73142 | /* 206244 */ // Label 4661: @206244 |
| 73143 | /* 206244 */ GIM_Try, /*On fail goto*//*Label 4695*/ GIMT_Encode4(206431), |
| 73144 | /* 206249 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 73145 | /* 206252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73146 | /* 206256 */ GIM_Try, /*On fail goto*//*Label 4696*/ GIMT_Encode4(206308), // Rule ID 13483 // |
| 73147 | /* 206261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 73148 | /* 206264 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73149 | /* 206268 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73150 | /* 206272 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73151 | /* 206275 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73152 | /* 206279 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73153 | /* 206283 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73154 | /* 206285 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73155 | /* 206292 */ // (ctpop:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTDZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1) |
| 73156 | /* 206292 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZ256rm), |
| 73157 | /* 206295 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73158 | /* 206297 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73159 | /* 206301 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73160 | /* 206306 */ GIR_RootConstrainSelectedInstOperands, |
| 73161 | /* 206307 */ // GIR_Coverage, 13483, |
| 73162 | /* 206307 */ GIR_EraseRootFromParent_Done, |
| 73163 | /* 206308 */ // Label 4696: @206308 |
| 73164 | /* 206308 */ GIM_Try, /*On fail goto*//*Label 4697*/ GIMT_Encode4(206327), // Rule ID 13480 // |
| 73165 | /* 206313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 73166 | /* 206316 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73167 | /* 206320 */ // (ctpop:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) => (VPOPCNTDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) |
| 73168 | /* 206320 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZ256rr), |
| 73169 | /* 206325 */ GIR_RootConstrainSelectedInstOperands, |
| 73170 | /* 206326 */ // GIR_Coverage, 13480, |
| 73171 | /* 206326 */ GIR_Done, |
| 73172 | /* 206327 */ // Label 4697: @206327 |
| 73173 | /* 206327 */ GIM_Try, /*On fail goto*//*Label 4698*/ GIMT_Encode4(206430), // Rule ID 21831 // |
| 73174 | /* 206332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEVEX512_HasVPOPCNTDQ_NoVLX), |
| 73175 | /* 206335 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73176 | /* 206339 */ // (ctpop:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) => (EXTRACT_SUBREG:{ *:[v8i32] } (VPOPCNTDZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 73177 | /* 206339 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 73178 | /* 206342 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73179 | /* 206346 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73180 | /* 206351 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 73181 | /* 206353 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 73182 | /* 206356 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 73183 | /* 206360 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73184 | /* 206365 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 73185 | /* 206368 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 73186 | /* 206372 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 73187 | /* 206375 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 73188 | /* 206380 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73189 | /* 206385 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 73190 | /* 206390 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 73191 | /* 206393 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZrr), |
| 73192 | /* 206397 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73193 | /* 206402 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 73194 | /* 206405 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73195 | /* 206407 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 73196 | /* 206410 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73197 | /* 206412 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 73198 | /* 206419 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 73199 | /* 206424 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73200 | /* 206429 */ // GIR_Coverage, 21831, |
| 73201 | /* 206429 */ GIR_EraseRootFromParent_Done, |
| 73202 | /* 206430 */ // Label 4698: @206430 |
| 73203 | /* 206430 */ GIM_Reject, |
| 73204 | /* 206431 */ // Label 4695: @206431 |
| 73205 | /* 206431 */ GIM_Reject, |
| 73206 | /* 206432 */ // Label 4662: @206432 |
| 73207 | /* 206432 */ GIM_Try, /*On fail goto*//*Label 4699*/ GIMT_Encode4(206516), |
| 73208 | /* 206437 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 73209 | /* 206440 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73210 | /* 206444 */ GIM_Try, /*On fail goto*//*Label 4700*/ GIMT_Encode4(206496), // Rule ID 13447 // |
| 73211 | /* 206449 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ), |
| 73212 | /* 206452 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73213 | /* 206456 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73214 | /* 206460 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73215 | /* 206463 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73216 | /* 206467 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73217 | /* 206471 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73218 | /* 206473 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73219 | /* 206480 */ // (ctpop:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1) |
| 73220 | /* 206480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZrm), |
| 73221 | /* 206483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73222 | /* 206485 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73223 | /* 206489 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73224 | /* 206494 */ GIR_RootConstrainSelectedInstOperands, |
| 73225 | /* 206495 */ // GIR_Coverage, 13447, |
| 73226 | /* 206495 */ GIR_EraseRootFromParent_Done, |
| 73227 | /* 206496 */ // Label 4700: @206496 |
| 73228 | /* 206496 */ GIM_Try, /*On fail goto*//*Label 4701*/ GIMT_Encode4(206515), // Rule ID 13444 // |
| 73229 | /* 206501 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ), |
| 73230 | /* 206504 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73231 | /* 206508 */ // (ctpop:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) => (VPOPCNTQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) |
| 73232 | /* 206508 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZrr), |
| 73233 | /* 206513 */ GIR_RootConstrainSelectedInstOperands, |
| 73234 | /* 206514 */ // GIR_Coverage, 13444, |
| 73235 | /* 206514 */ GIR_Done, |
| 73236 | /* 206515 */ // Label 4701: @206515 |
| 73237 | /* 206515 */ GIM_Reject, |
| 73238 | /* 206516 */ // Label 4699: @206516 |
| 73239 | /* 206516 */ GIM_Reject, |
| 73240 | /* 206517 */ // Label 4663: @206517 |
| 73241 | /* 206517 */ GIM_Try, /*On fail goto*//*Label 4702*/ GIMT_Encode4(206712), |
| 73242 | /* 206522 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 73243 | /* 206525 */ GIM_Try, /*On fail goto*//*Label 4703*/ GIMT_Encode4(206581), // Rule ID 14501 // |
| 73244 | /* 206530 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 73245 | /* 206533 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73246 | /* 206537 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73247 | /* 206541 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73248 | /* 206545 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73249 | /* 206548 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73250 | /* 206552 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73251 | /* 206556 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73252 | /* 206558 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73253 | /* 206565 */ // (ctpop:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTBZ128rm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1) |
| 73254 | /* 206565 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZ128rm), |
| 73255 | /* 206568 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73256 | /* 206570 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73257 | /* 206574 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73258 | /* 206579 */ GIR_RootConstrainSelectedInstOperands, |
| 73259 | /* 206580 */ // GIR_Coverage, 14501, |
| 73260 | /* 206580 */ GIR_EraseRootFromParent_Done, |
| 73261 | /* 206581 */ // Label 4703: @206581 |
| 73262 | /* 206581 */ GIM_Try, /*On fail goto*//*Label 4704*/ GIMT_Encode4(206604), // Rule ID 14498 // |
| 73263 | /* 206586 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 73264 | /* 206589 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73265 | /* 206593 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73266 | /* 206597 */ // (ctpop:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1) => (VPOPCNTBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1) |
| 73267 | /* 206597 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZ128rr), |
| 73268 | /* 206602 */ GIR_RootConstrainSelectedInstOperands, |
| 73269 | /* 206603 */ // GIR_Coverage, 14498, |
| 73270 | /* 206603 */ GIR_Done, |
| 73271 | /* 206604 */ // Label 4704: @206604 |
| 73272 | /* 206604 */ GIM_Try, /*On fail goto*//*Label 4705*/ GIMT_Encode4(206711), // Rule ID 22137 // |
| 73273 | /* 206609 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasEVEX512_NoVLX), |
| 73274 | /* 206612 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 73275 | /* 206616 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73276 | /* 206620 */ // (ctpop:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1) => (EXTRACT_SUBREG:{ *:[v16i8] } (VPOPCNTBZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v64i8] } (IMPLICIT_DEF:{ *:[v64i8] }), VR128X:{ *:[v16i8] }:$src1, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 73277 | /* 206620 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 73278 | /* 206623 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73279 | /* 206627 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73280 | /* 206632 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 73281 | /* 206634 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 73282 | /* 206637 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 73283 | /* 206641 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73284 | /* 206646 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 73285 | /* 206649 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 73286 | /* 206653 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/11, |
| 73287 | /* 206656 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 73288 | /* 206661 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73289 | /* 206666 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 73290 | /* 206671 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 73291 | /* 206674 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZrr), |
| 73292 | /* 206678 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73293 | /* 206683 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 73294 | /* 206686 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73295 | /* 206688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 73296 | /* 206691 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73297 | /* 206693 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 73298 | /* 206700 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 73299 | /* 206705 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73300 | /* 206710 */ // GIR_Coverage, 22137, |
| 73301 | /* 206710 */ GIR_EraseRootFromParent_Done, |
| 73302 | /* 206711 */ // Label 4705: @206711 |
| 73303 | /* 206711 */ GIM_Reject, |
| 73304 | /* 206712 */ // Label 4702: @206712 |
| 73305 | /* 206712 */ GIM_Reject, |
| 73306 | /* 206713 */ // Label 4664: @206713 |
| 73307 | /* 206713 */ GIM_Try, /*On fail goto*//*Label 4706*/ GIMT_Encode4(206900), |
| 73308 | /* 206718 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 73309 | /* 206721 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73310 | /* 206725 */ GIM_Try, /*On fail goto*//*Label 4707*/ GIMT_Encode4(206777), // Rule ID 14513 // |
| 73311 | /* 206730 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 73312 | /* 206733 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73313 | /* 206737 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73314 | /* 206741 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73315 | /* 206744 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73316 | /* 206748 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73317 | /* 206752 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73318 | /* 206754 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73319 | /* 206761 */ // (ctpop:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTWZ256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src1) |
| 73320 | /* 206761 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZ256rm), |
| 73321 | /* 206764 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73322 | /* 206766 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73323 | /* 206770 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73324 | /* 206775 */ GIR_RootConstrainSelectedInstOperands, |
| 73325 | /* 206776 */ // GIR_Coverage, 14513, |
| 73326 | /* 206776 */ GIR_EraseRootFromParent_Done, |
| 73327 | /* 206777 */ // Label 4707: @206777 |
| 73328 | /* 206777 */ GIM_Try, /*On fail goto*//*Label 4708*/ GIMT_Encode4(206796), // Rule ID 14510 // |
| 73329 | /* 206782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 73330 | /* 206785 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73331 | /* 206789 */ // (ctpop:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1) => (VPOPCNTWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1) |
| 73332 | /* 206789 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZ256rr), |
| 73333 | /* 206794 */ GIR_RootConstrainSelectedInstOperands, |
| 73334 | /* 206795 */ // GIR_Coverage, 14510, |
| 73335 | /* 206795 */ GIR_Done, |
| 73336 | /* 206796 */ // Label 4708: @206796 |
| 73337 | /* 206796 */ GIM_Try, /*On fail goto*//*Label 4709*/ GIMT_Encode4(206899), // Rule ID 22138 // |
| 73338 | /* 206801 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasEVEX512_NoVLX), |
| 73339 | /* 206804 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73340 | /* 206808 */ // (ctpop:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1) => (EXTRACT_SUBREG:{ *:[v16i16] } (VPOPCNTWZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 73341 | /* 206808 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 73342 | /* 206811 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73343 | /* 206815 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73344 | /* 206820 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 73345 | /* 206822 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 73346 | /* 206825 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 73347 | /* 206829 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73348 | /* 206834 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 73349 | /* 206837 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 73350 | /* 206841 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 73351 | /* 206844 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 73352 | /* 206849 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73353 | /* 206854 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 73354 | /* 206859 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 73355 | /* 206862 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZrr), |
| 73356 | /* 206866 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73357 | /* 206871 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 73358 | /* 206874 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73359 | /* 206876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 73360 | /* 206879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73361 | /* 206881 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 73362 | /* 206888 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 73363 | /* 206893 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73364 | /* 206898 */ // GIR_Coverage, 22138, |
| 73365 | /* 206898 */ GIR_EraseRootFromParent_Done, |
| 73366 | /* 206899 */ // Label 4709: @206899 |
| 73367 | /* 206899 */ GIM_Reject, |
| 73368 | /* 206900 */ // Label 4706: @206900 |
| 73369 | /* 206900 */ GIM_Reject, |
| 73370 | /* 206901 */ // Label 4665: @206901 |
| 73371 | /* 206901 */ GIM_Try, /*On fail goto*//*Label 4710*/ GIMT_Encode4(206985), |
| 73372 | /* 206906 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 73373 | /* 206909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73374 | /* 206913 */ GIM_Try, /*On fail goto*//*Label 4711*/ GIMT_Encode4(206965), // Rule ID 13474 // |
| 73375 | /* 206918 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ), |
| 73376 | /* 206921 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73377 | /* 206925 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73378 | /* 206929 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73379 | /* 206932 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73380 | /* 206936 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73381 | /* 206940 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73382 | /* 206942 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73383 | /* 206949 */ // (ctpop:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1) |
| 73384 | /* 206949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZrm), |
| 73385 | /* 206952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73386 | /* 206954 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73387 | /* 206958 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73388 | /* 206963 */ GIR_RootConstrainSelectedInstOperands, |
| 73389 | /* 206964 */ // GIR_Coverage, 13474, |
| 73390 | /* 206964 */ GIR_EraseRootFromParent_Done, |
| 73391 | /* 206965 */ // Label 4711: @206965 |
| 73392 | /* 206965 */ GIM_Try, /*On fail goto*//*Label 4712*/ GIMT_Encode4(206984), // Rule ID 13471 // |
| 73393 | /* 206970 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ), |
| 73394 | /* 206973 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73395 | /* 206977 */ // (ctpop:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) => (VPOPCNTDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) |
| 73396 | /* 206977 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZrr), |
| 73397 | /* 206982 */ GIR_RootConstrainSelectedInstOperands, |
| 73398 | /* 206983 */ // GIR_Coverage, 13471, |
| 73399 | /* 206983 */ GIR_Done, |
| 73400 | /* 206984 */ // Label 4712: @206984 |
| 73401 | /* 206984 */ GIM_Reject, |
| 73402 | /* 206985 */ // Label 4710: @206985 |
| 73403 | /* 206985 */ GIM_Reject, |
| 73404 | /* 206986 */ // Label 4666: @206986 |
| 73405 | /* 206986 */ GIM_Try, /*On fail goto*//*Label 4713*/ GIMT_Encode4(207173), |
| 73406 | /* 206991 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 73407 | /* 206994 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73408 | /* 206998 */ GIM_Try, /*On fail goto*//*Label 4714*/ GIMT_Encode4(207050), // Rule ID 14495 // |
| 73409 | /* 207003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 73410 | /* 207006 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73411 | /* 207010 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73412 | /* 207014 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73413 | /* 207017 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73414 | /* 207021 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73415 | /* 207025 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73416 | /* 207027 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73417 | /* 207034 */ // (ctpop:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTBZ256rm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src1) |
| 73418 | /* 207034 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZ256rm), |
| 73419 | /* 207037 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73420 | /* 207039 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73421 | /* 207043 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73422 | /* 207048 */ GIR_RootConstrainSelectedInstOperands, |
| 73423 | /* 207049 */ // GIR_Coverage, 14495, |
| 73424 | /* 207049 */ GIR_EraseRootFromParent_Done, |
| 73425 | /* 207050 */ // Label 4714: @207050 |
| 73426 | /* 207050 */ GIM_Try, /*On fail goto*//*Label 4715*/ GIMT_Encode4(207069), // Rule ID 14492 // |
| 73427 | /* 207055 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 73428 | /* 207058 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73429 | /* 207062 */ // (ctpop:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1) => (VPOPCNTBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1) |
| 73430 | /* 207062 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZ256rr), |
| 73431 | /* 207067 */ GIR_RootConstrainSelectedInstOperands, |
| 73432 | /* 207068 */ // GIR_Coverage, 14492, |
| 73433 | /* 207068 */ GIR_Done, |
| 73434 | /* 207069 */ // Label 4715: @207069 |
| 73435 | /* 207069 */ GIM_Try, /*On fail goto*//*Label 4716*/ GIMT_Encode4(207172), // Rule ID 22136 // |
| 73436 | /* 207074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasEVEX512_NoVLX), |
| 73437 | /* 207077 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73438 | /* 207081 */ // (ctpop:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1) => (EXTRACT_SUBREG:{ *:[v32i8] } (VPOPCNTBZrr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v64i8] } (IMPLICIT_DEF:{ *:[v64i8] }), VR256X:{ *:[v32i8] }:$src1, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 73439 | /* 207081 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 73440 | /* 207084 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73441 | /* 207088 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73442 | /* 207093 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 73443 | /* 207095 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 73444 | /* 207098 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 73445 | /* 207102 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73446 | /* 207107 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 73447 | /* 207110 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 73448 | /* 207114 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/12, |
| 73449 | /* 207117 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 73450 | /* 207122 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73451 | /* 207127 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 73452 | /* 207132 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 73453 | /* 207135 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZrr), |
| 73454 | /* 207139 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73455 | /* 207144 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 73456 | /* 207147 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73457 | /* 207149 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 73458 | /* 207152 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73459 | /* 207154 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 73460 | /* 207161 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 73461 | /* 207166 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 73462 | /* 207171 */ // GIR_Coverage, 22136, |
| 73463 | /* 207171 */ GIR_EraseRootFromParent_Done, |
| 73464 | /* 207172 */ // Label 4716: @207172 |
| 73465 | /* 207172 */ GIM_Reject, |
| 73466 | /* 207173 */ // Label 4713: @207173 |
| 73467 | /* 207173 */ GIM_Reject, |
| 73468 | /* 207174 */ // Label 4667: @207174 |
| 73469 | /* 207174 */ GIM_Try, /*On fail goto*//*Label 4717*/ GIMT_Encode4(207258), |
| 73470 | /* 207179 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 73471 | /* 207182 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73472 | /* 207186 */ GIM_Try, /*On fail goto*//*Label 4718*/ GIMT_Encode4(207238), // Rule ID 14507 // |
| 73473 | /* 207191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG), |
| 73474 | /* 207194 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73475 | /* 207198 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73476 | /* 207202 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73477 | /* 207205 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73478 | /* 207209 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73479 | /* 207213 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73480 | /* 207215 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73481 | /* 207222 */ // (ctpop:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTWZrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src1) |
| 73482 | /* 207222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZrm), |
| 73483 | /* 207225 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73484 | /* 207227 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73485 | /* 207231 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73486 | /* 207236 */ GIR_RootConstrainSelectedInstOperands, |
| 73487 | /* 207237 */ // GIR_Coverage, 14507, |
| 73488 | /* 207237 */ GIR_EraseRootFromParent_Done, |
| 73489 | /* 207238 */ // Label 4718: @207238 |
| 73490 | /* 207238 */ GIM_Try, /*On fail goto*//*Label 4719*/ GIMT_Encode4(207257), // Rule ID 14504 // |
| 73491 | /* 207243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG), |
| 73492 | /* 207246 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73493 | /* 207250 */ // (ctpop:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1) => (VPOPCNTWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1) |
| 73494 | /* 207250 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZrr), |
| 73495 | /* 207255 */ GIR_RootConstrainSelectedInstOperands, |
| 73496 | /* 207256 */ // GIR_Coverage, 14504, |
| 73497 | /* 207256 */ GIR_Done, |
| 73498 | /* 207257 */ // Label 4719: @207257 |
| 73499 | /* 207257 */ GIM_Reject, |
| 73500 | /* 207258 */ // Label 4717: @207258 |
| 73501 | /* 207258 */ GIM_Reject, |
| 73502 | /* 207259 */ // Label 4668: @207259 |
| 73503 | /* 207259 */ GIM_Try, /*On fail goto*//*Label 4720*/ GIMT_Encode4(207343), |
| 73504 | /* 207264 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 73505 | /* 207267 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73506 | /* 207271 */ GIM_Try, /*On fail goto*//*Label 4721*/ GIMT_Encode4(207323), // Rule ID 14489 // |
| 73507 | /* 207276 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG), |
| 73508 | /* 207279 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73509 | /* 207283 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73510 | /* 207287 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73511 | /* 207290 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73512 | /* 207294 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73513 | /* 207298 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73514 | /* 207300 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73515 | /* 207307 */ // (ctpop:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTBZrm:{ *:[v64i8] } addr:{ *:[iPTR] }:$src1) |
| 73516 | /* 207307 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZrm), |
| 73517 | /* 207310 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73518 | /* 207312 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73519 | /* 207316 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73520 | /* 207321 */ GIR_RootConstrainSelectedInstOperands, |
| 73521 | /* 207322 */ // GIR_Coverage, 14489, |
| 73522 | /* 207322 */ GIR_EraseRootFromParent_Done, |
| 73523 | /* 207323 */ // Label 4721: @207323 |
| 73524 | /* 207323 */ GIM_Try, /*On fail goto*//*Label 4722*/ GIMT_Encode4(207342), // Rule ID 14486 // |
| 73525 | /* 207328 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG), |
| 73526 | /* 207331 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73527 | /* 207335 */ // (ctpop:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1) => (VPOPCNTBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1) |
| 73528 | /* 207335 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZrr), |
| 73529 | /* 207340 */ GIR_RootConstrainSelectedInstOperands, |
| 73530 | /* 207341 */ // GIR_Coverage, 14486, |
| 73531 | /* 207341 */ GIR_Done, |
| 73532 | /* 207342 */ // Label 4722: @207342 |
| 73533 | /* 207342 */ GIM_Reject, |
| 73534 | /* 207343 */ // Label 4720: @207343 |
| 73535 | /* 207343 */ GIM_Reject, |
| 73536 | /* 207344 */ // Label 4669: @207344 |
| 73537 | /* 207344 */ GIM_Reject, |
| 73538 | /* 207345 */ // Label 66: @207345 |
| 73539 | /* 207345 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 4726*/ GIMT_Encode4(207844), |
| 73540 | /* 207356 */ /*GILLT_s16*//*Label 4723*/ GIMT_Encode4(207368), |
| 73541 | /* 207360 */ /*GILLT_s32*//*Label 4724*/ GIMT_Encode4(207532), |
| 73542 | /* 207364 */ /*GILLT_s64*//*Label 4725*/ GIMT_Encode4(207688), |
| 73543 | /* 207368 */ // Label 4723: @207368 |
| 73544 | /* 207368 */ GIM_Try, /*On fail goto*//*Label 4727*/ GIMT_Encode4(207531), |
| 73545 | /* 207373 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 73546 | /* 207376 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 73547 | /* 207380 */ GIM_Try, /*On fail goto*//*Label 4728*/ GIMT_Encode4(207432), // Rule ID 49 // |
| 73548 | /* 207385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 73549 | /* 207388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73550 | /* 207392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73551 | /* 207396 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73552 | /* 207399 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73553 | /* 207403 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 73554 | /* 207407 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73555 | /* 207409 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73556 | /* 207416 */ // (bswap:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (MOVBE16rm:{ *:[i16] } addr:{ *:[iPTR] }:$src1) |
| 73557 | /* 207416 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE16rm), |
| 73558 | /* 207419 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73559 | /* 207421 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73560 | /* 207425 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73561 | /* 207430 */ GIR_RootConstrainSelectedInstOperands, |
| 73562 | /* 207431 */ // GIR_Coverage, 49, |
| 73563 | /* 207431 */ GIR_EraseRootFromParent_Done, |
| 73564 | /* 207432 */ // Label 4728: @207432 |
| 73565 | /* 207432 */ GIM_Try, /*On fail goto*//*Label 4729*/ GIMT_Encode4(207484), // Rule ID 55 // |
| 73566 | /* 207437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 73567 | /* 207440 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73568 | /* 207444 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73569 | /* 207448 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73570 | /* 207451 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73571 | /* 207455 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 73572 | /* 207459 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73573 | /* 207461 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73574 | /* 207468 */ // (bswap:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (MOVBE16rm_EVEX:{ *:[i16] } addr:{ *:[iPTR] }:$src1) |
| 73575 | /* 207468 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE16rm_EVEX), |
| 73576 | /* 207471 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73577 | /* 207473 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73578 | /* 207477 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73579 | /* 207482 */ GIR_RootConstrainSelectedInstOperands, |
| 73580 | /* 207483 */ // GIR_Coverage, 55, |
| 73581 | /* 207483 */ GIR_EraseRootFromParent_Done, |
| 73582 | /* 207484 */ // Label 4729: @207484 |
| 73583 | /* 207484 */ GIM_Try, /*On fail goto*//*Label 4730*/ GIMT_Encode4(207503), // Rule ID 61 // |
| 73584 | /* 207489 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_HasNDD_In64BitMode), |
| 73585 | /* 207492 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 73586 | /* 207496 */ // (bswap:{ *:[i16] } GR16:{ *:[i16] }:$src1) => (MOVBE16rr:{ *:[i16] } GR16:{ *:[i16] }:$src1) |
| 73587 | /* 207496 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVBE16rr), |
| 73588 | /* 207501 */ GIR_RootConstrainSelectedInstOperands, |
| 73589 | /* 207502 */ // GIR_Coverage, 61, |
| 73590 | /* 207502 */ GIR_Done, |
| 73591 | /* 207503 */ // Label 4730: @207503 |
| 73592 | /* 207503 */ GIM_Try, /*On fail goto*//*Label 4731*/ GIMT_Encode4(207530), // Rule ID 22988 // |
| 73593 | /* 207508 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE), |
| 73594 | /* 207511 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 73595 | /* 207515 */ // (bswap:{ *:[i16] } GR16:{ *:[i16] }:$src) => (ROL16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src, 8:{ *:[i8] }) |
| 73596 | /* 207515 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16ri), |
| 73597 | /* 207518 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73598 | /* 207520 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 73599 | /* 207522 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/8, |
| 73600 | /* 207525 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 73601 | /* 207528 */ GIR_RootConstrainSelectedInstOperands, |
| 73602 | /* 207529 */ // GIR_Coverage, 22988, |
| 73603 | /* 207529 */ GIR_EraseRootFromParent_Done, |
| 73604 | /* 207530 */ // Label 4731: @207530 |
| 73605 | /* 207530 */ GIM_Reject, |
| 73606 | /* 207531 */ // Label 4727: @207531 |
| 73607 | /* 207531 */ GIM_Reject, |
| 73608 | /* 207532 */ // Label 4724: @207532 |
| 73609 | /* 207532 */ GIM_Try, /*On fail goto*//*Label 4732*/ GIMT_Encode4(207687), |
| 73610 | /* 207537 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 73611 | /* 207540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 73612 | /* 207544 */ GIM_Try, /*On fail goto*//*Label 4733*/ GIMT_Encode4(207596), // Rule ID 51 // |
| 73613 | /* 207549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 73614 | /* 207552 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73615 | /* 207556 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73616 | /* 207560 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73617 | /* 207563 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73618 | /* 207567 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 73619 | /* 207571 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73620 | /* 207573 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73621 | /* 207580 */ // (bswap:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (MOVBE32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 73622 | /* 207580 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE32rm), |
| 73623 | /* 207583 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73624 | /* 207585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73625 | /* 207589 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73626 | /* 207594 */ GIR_RootConstrainSelectedInstOperands, |
| 73627 | /* 207595 */ // GIR_Coverage, 51, |
| 73628 | /* 207595 */ GIR_EraseRootFromParent_Done, |
| 73629 | /* 207596 */ // Label 4733: @207596 |
| 73630 | /* 207596 */ GIM_Try, /*On fail goto*//*Label 4734*/ GIMT_Encode4(207648), // Rule ID 57 // |
| 73631 | /* 207601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 73632 | /* 207604 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73633 | /* 207608 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73634 | /* 207612 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73635 | /* 207615 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73636 | /* 207619 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 73637 | /* 207623 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73638 | /* 207625 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73639 | /* 207632 */ // (bswap:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (MOVBE32rm_EVEX:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 73640 | /* 207632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE32rm_EVEX), |
| 73641 | /* 207635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73642 | /* 207637 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73643 | /* 207641 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73644 | /* 207646 */ GIR_RootConstrainSelectedInstOperands, |
| 73645 | /* 207647 */ // GIR_Coverage, 57, |
| 73646 | /* 207647 */ GIR_EraseRootFromParent_Done, |
| 73647 | /* 207648 */ // Label 4734: @207648 |
| 73648 | /* 207648 */ GIM_Try, /*On fail goto*//*Label 4735*/ GIMT_Encode4(207667), // Rule ID 5 // |
| 73649 | /* 207653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_Or_NoMOVBE), |
| 73650 | /* 207656 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 73651 | /* 207660 */ // (bswap:{ *:[i32] } GR32:{ *:[i32] }:$src) => (BSWAP32r:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 73652 | /* 207660 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::BSWAP32r), |
| 73653 | /* 207665 */ GIR_RootConstrainSelectedInstOperands, |
| 73654 | /* 207666 */ // GIR_Coverage, 5, |
| 73655 | /* 207666 */ GIR_Done, |
| 73656 | /* 207667 */ // Label 4735: @207667 |
| 73657 | /* 207667 */ GIM_Try, /*On fail goto*//*Label 4736*/ GIMT_Encode4(207686), // Rule ID 62 // |
| 73658 | /* 207672 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_HasNDD_In64BitMode), |
| 73659 | /* 207675 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 73660 | /* 207679 */ // (bswap:{ *:[i32] } GR32:{ *:[i32] }:$src1) => (MOVBE32rr:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 73661 | /* 207679 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVBE32rr), |
| 73662 | /* 207684 */ GIR_RootConstrainSelectedInstOperands, |
| 73663 | /* 207685 */ // GIR_Coverage, 62, |
| 73664 | /* 207685 */ GIR_Done, |
| 73665 | /* 207686 */ // Label 4736: @207686 |
| 73666 | /* 207686 */ GIM_Reject, |
| 73667 | /* 207687 */ // Label 4732: @207687 |
| 73668 | /* 207687 */ GIM_Reject, |
| 73669 | /* 207688 */ // Label 4725: @207688 |
| 73670 | /* 207688 */ GIM_Try, /*On fail goto*//*Label 4737*/ GIMT_Encode4(207843), |
| 73671 | /* 207693 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 73672 | /* 207696 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 73673 | /* 207700 */ GIM_Try, /*On fail goto*//*Label 4738*/ GIMT_Encode4(207752), // Rule ID 53 // |
| 73674 | /* 207705 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 73675 | /* 207708 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73676 | /* 207712 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73677 | /* 207716 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73678 | /* 207719 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73679 | /* 207723 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73680 | /* 207727 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73681 | /* 207729 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73682 | /* 207736 */ // (bswap:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MOVBE64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src1) |
| 73683 | /* 207736 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE64rm), |
| 73684 | /* 207739 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73685 | /* 207741 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73686 | /* 207745 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73687 | /* 207750 */ GIR_RootConstrainSelectedInstOperands, |
| 73688 | /* 207751 */ // GIR_Coverage, 53, |
| 73689 | /* 207751 */ GIR_EraseRootFromParent_Done, |
| 73690 | /* 207752 */ // Label 4738: @207752 |
| 73691 | /* 207752 */ GIM_Try, /*On fail goto*//*Label 4739*/ GIMT_Encode4(207804), // Rule ID 59 // |
| 73692 | /* 207757 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 73693 | /* 207760 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73694 | /* 207764 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73695 | /* 207768 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73696 | /* 207771 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73697 | /* 207775 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73698 | /* 207779 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73699 | /* 207781 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73700 | /* 207788 */ // (bswap:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MOVBE64rm_EVEX:{ *:[i64] } addr:{ *:[iPTR] }:$src1) |
| 73701 | /* 207788 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE64rm_EVEX), |
| 73702 | /* 207791 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73703 | /* 207793 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73704 | /* 207797 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73705 | /* 207802 */ GIR_RootConstrainSelectedInstOperands, |
| 73706 | /* 207803 */ // GIR_Coverage, 59, |
| 73707 | /* 207803 */ GIR_EraseRootFromParent_Done, |
| 73708 | /* 207804 */ // Label 4739: @207804 |
| 73709 | /* 207804 */ GIM_Try, /*On fail goto*//*Label 4740*/ GIMT_Encode4(207823), // Rule ID 6 // |
| 73710 | /* 207809 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_Or_NoMOVBE), |
| 73711 | /* 207812 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 73712 | /* 207816 */ // (bswap:{ *:[i64] } GR64:{ *:[i64] }:$src) => (BSWAP64r:{ *:[i64] } GR64:{ *:[i64] }:$src) |
| 73713 | /* 207816 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::BSWAP64r), |
| 73714 | /* 207821 */ GIR_RootConstrainSelectedInstOperands, |
| 73715 | /* 207822 */ // GIR_Coverage, 6, |
| 73716 | /* 207822 */ GIR_Done, |
| 73717 | /* 207823 */ // Label 4740: @207823 |
| 73718 | /* 207823 */ GIM_Try, /*On fail goto*//*Label 4741*/ GIMT_Encode4(207842), // Rule ID 63 // |
| 73719 | /* 207828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_HasNDD_In64BitMode), |
| 73720 | /* 207831 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 73721 | /* 207835 */ // (bswap:{ *:[i64] } GR64:{ *:[i64] }:$src1) => (MOVBE64rr:{ *:[i64] } GR64:{ *:[i64] }:$src1) |
| 73722 | /* 207835 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVBE64rr), |
| 73723 | /* 207840 */ GIR_RootConstrainSelectedInstOperands, |
| 73724 | /* 207841 */ // GIR_Coverage, 63, |
| 73725 | /* 207841 */ GIR_Done, |
| 73726 | /* 207842 */ // Label 4741: @207842 |
| 73727 | /* 207842 */ GIM_Reject, |
| 73728 | /* 207843 */ // Label 4737: @207843 |
| 73729 | /* 207843 */ GIM_Reject, |
| 73730 | /* 207844 */ // Label 4726: @207844 |
| 73731 | /* 207844 */ GIM_Reject, |
| 73732 | /* 207845 */ // Label 67: @207845 |
| 73733 | /* 207845 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 4755*/ GIMT_Encode4(210013), |
| 73734 | /* 207856 */ /*GILLT_s16*//*Label 4742*/ GIMT_Encode4(207940), |
| 73735 | /* 207860 */ /*GILLT_s32*//*Label 4743*/ GIMT_Encode4(208061), |
| 73736 | /* 207864 */ /*GILLT_s64*//*Label 4744*/ GIMT_Encode4(208417), |
| 73737 | /* 207868 */ /*GILLT_s80*//*Label 4745*/ GIMT_Encode4(208773), GIMT_Encode4(0), GIMT_Encode4(0), |
| 73738 | /* 207880 */ /*GILLT_v2s64*//*Label 4746*/ GIMT_Encode4(208810), GIMT_Encode4(0), |
| 73739 | /* 207888 */ /*GILLT_v4s32*//*Label 4747*/ GIMT_Encode4(209013), |
| 73740 | /* 207892 */ /*GILLT_v4s64*//*Label 4748*/ GIMT_Encode4(209216), GIMT_Encode4(0), |
| 73741 | /* 207900 */ /*GILLT_v8s16*//*Label 4749*/ GIMT_Encode4(209392), |
| 73742 | /* 207904 */ /*GILLT_v8s32*//*Label 4750*/ GIMT_Encode4(209481), |
| 73743 | /* 207908 */ /*GILLT_v8s64*//*Label 4751*/ GIMT_Encode4(209657), GIMT_Encode4(0), GIMT_Encode4(0), |
| 73744 | /* 207920 */ /*GILLT_v16s16*//*Label 4752*/ GIMT_Encode4(209746), |
| 73745 | /* 207924 */ /*GILLT_v16s32*//*Label 4753*/ GIMT_Encode4(209835), GIMT_Encode4(0), GIMT_Encode4(0), |
| 73746 | /* 207936 */ /*GILLT_v32s16*//*Label 4754*/ GIMT_Encode4(209924), |
| 73747 | /* 207940 */ // Label 4742: @207940 |
| 73748 | /* 207940 */ GIM_Try, /*On fail goto*//*Label 4756*/ GIMT_Encode4(208060), |
| 73749 | /* 207945 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 73750 | /* 207948 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 73751 | /* 207952 */ GIM_Try, /*On fail goto*//*Label 4757*/ GIMT_Encode4(208021), // Rule ID 21421 // |
| 73752 | /* 207957 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_OptForSize), |
| 73753 | /* 207960 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73754 | /* 207964 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73755 | /* 207968 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73756 | /* 207971 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73757 | /* 207975 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73758 | /* 207979 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73759 | /* 207981 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73760 | /* 207988 */ // (fsqrt:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSHZm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 73761 | /* 207988 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 73762 | /* 207991 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73763 | /* 207995 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73764 | /* 208000 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73765 | /* 208002 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSHZm), |
| 73766 | /* 208005 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73767 | /* 208007 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73768 | /* 208010 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73769 | /* 208014 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73770 | /* 208019 */ GIR_RootConstrainSelectedInstOperands, |
| 73771 | /* 208020 */ // GIR_Coverage, 21421, |
| 73772 | /* 208020 */ GIR_EraseRootFromParent_Done, |
| 73773 | /* 208021 */ // Label 4757: @208021 |
| 73774 | /* 208021 */ GIM_Try, /*On fail goto*//*Label 4758*/ GIMT_Encode4(208059), // Rule ID 21419 // |
| 73775 | /* 208026 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 73776 | /* 208029 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 73777 | /* 208033 */ // (fsqrt:{ *:[f16] } FR16X:{ *:[f16] }:$src) => (VSQRTSHZr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), FR16X:{ *:[f16] }:$src) |
| 73778 | /* 208033 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 73779 | /* 208036 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73780 | /* 208040 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73781 | /* 208045 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73782 | /* 208047 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSHZr), |
| 73783 | /* 208050 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73784 | /* 208052 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73785 | /* 208055 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 73786 | /* 208057 */ GIR_RootConstrainSelectedInstOperands, |
| 73787 | /* 208058 */ // GIR_Coverage, 21419, |
| 73788 | /* 208058 */ GIR_EraseRootFromParent_Done, |
| 73789 | /* 208059 */ // Label 4758: @208059 |
| 73790 | /* 208059 */ GIM_Reject, |
| 73791 | /* 208060 */ // Label 4756: @208060 |
| 73792 | /* 208060 */ GIM_Reject, |
| 73793 | /* 208061 */ // Label 4743: @208061 |
| 73794 | /* 208061 */ GIM_Try, /*On fail goto*//*Label 4759*/ GIMT_Encode4(208416), |
| 73795 | /* 208066 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 73796 | /* 208069 */ GIM_Try, /*On fail goto*//*Label 4760*/ GIMT_Encode4(208125), // Rule ID 2449 // |
| 73797 | /* 208074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE1), |
| 73798 | /* 208077 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73799 | /* 208081 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73800 | /* 208085 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73801 | /* 208089 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73802 | /* 208092 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73803 | /* 208096 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73804 | /* 208100 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73805 | /* 208102 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73806 | /* 208109 */ // (fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SQRTSSm:{ *:[f32] } addr:{ *:[iPTR] }:$src1) |
| 73807 | /* 208109 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SQRTSSm), |
| 73808 | /* 208112 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73809 | /* 208114 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73810 | /* 208118 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73811 | /* 208123 */ GIR_RootConstrainSelectedInstOperands, |
| 73812 | /* 208124 */ // GIR_Coverage, 2449, |
| 73813 | /* 208124 */ GIR_EraseRootFromParent_Done, |
| 73814 | /* 208125 */ // Label 4760: @208125 |
| 73815 | /* 208125 */ GIM_Try, /*On fail goto*//*Label 4761*/ GIMT_Encode4(208198), // Rule ID 18277 // |
| 73816 | /* 208130 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseAVX), |
| 73817 | /* 208133 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73818 | /* 208137 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73819 | /* 208141 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73820 | /* 208145 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73821 | /* 208148 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73822 | /* 208152 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73823 | /* 208156 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73824 | /* 208158 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73825 | /* 208165 */ // (fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSSm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 73826 | /* 208165 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 73827 | /* 208168 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73828 | /* 208172 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73829 | /* 208177 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73830 | /* 208179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSm), |
| 73831 | /* 208182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73832 | /* 208184 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73833 | /* 208187 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73834 | /* 208191 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73835 | /* 208196 */ GIR_RootConstrainSelectedInstOperands, |
| 73836 | /* 208197 */ // GIR_Coverage, 18277, |
| 73837 | /* 208197 */ GIR_EraseRootFromParent_Done, |
| 73838 | /* 208198 */ // Label 4761: @208198 |
| 73839 | /* 208198 */ GIM_Try, /*On fail goto*//*Label 4762*/ GIMT_Encode4(208271), // Rule ID 21425 // |
| 73840 | /* 208203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_OptForSize), |
| 73841 | /* 208206 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 73842 | /* 208210 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73843 | /* 208214 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73844 | /* 208218 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73845 | /* 208221 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73846 | /* 208225 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73847 | /* 208229 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73848 | /* 208231 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73849 | /* 208238 */ // (fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSSZm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 73850 | /* 208238 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 73851 | /* 208241 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73852 | /* 208245 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73853 | /* 208250 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73854 | /* 208252 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSZm), |
| 73855 | /* 208255 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73856 | /* 208257 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73857 | /* 208260 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73858 | /* 208264 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73859 | /* 208269 */ GIR_RootConstrainSelectedInstOperands, |
| 73860 | /* 208270 */ // GIR_Coverage, 21425, |
| 73861 | /* 208270 */ GIR_EraseRootFromParent_Done, |
| 73862 | /* 208271 */ // Label 4762: @208271 |
| 73863 | /* 208271 */ GIM_Try, /*On fail goto*//*Label 4763*/ GIMT_Encode4(208304), // Rule ID 1049 // |
| 73864 | /* 208276 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 73865 | /* 208279 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 73866 | /* 208283 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 73867 | /* 208287 */ // (fsqrt:{ *:[f32] } RFP32:{ *:[f32] }:$src) => (SQRT_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src) |
| 73868 | /* 208287 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp32), |
| 73869 | /* 208292 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 73870 | /* 208298 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 73871 | /* 208302 */ GIR_RootConstrainSelectedInstOperands, |
| 73872 | /* 208303 */ // GIR_Coverage, 1049, |
| 73873 | /* 208303 */ GIR_Done, |
| 73874 | /* 208304 */ // Label 4763: @208304 |
| 73875 | /* 208304 */ GIM_Try, /*On fail goto*//*Label 4764*/ GIMT_Encode4(208331), // Rule ID 2447 // |
| 73876 | /* 208309 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 73877 | /* 208312 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73878 | /* 208316 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73879 | /* 208320 */ // (fsqrt:{ *:[f32] } FR32:{ *:[f32] }:$src1) => (SQRTSSr:{ *:[f32] } FR32:{ *:[f32] }:$src1) |
| 73880 | /* 208320 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTSSr), |
| 73881 | /* 208325 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73882 | /* 208329 */ GIR_RootConstrainSelectedInstOperands, |
| 73883 | /* 208330 */ // GIR_Coverage, 2447, |
| 73884 | /* 208330 */ GIR_Done, |
| 73885 | /* 208331 */ // Label 4764: @208331 |
| 73886 | /* 208331 */ GIM_Try, /*On fail goto*//*Label 4765*/ GIMT_Encode4(208373), // Rule ID 18275 // |
| 73887 | /* 208336 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 73888 | /* 208339 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73889 | /* 208343 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73890 | /* 208347 */ // (fsqrt:{ *:[f32] } FR32:{ *:[f32] }:$src) => (VSQRTSSr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR32:{ *:[f32] }:$src) |
| 73891 | /* 208347 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 73892 | /* 208350 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73893 | /* 208354 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73894 | /* 208359 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73895 | /* 208361 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSr), |
| 73896 | /* 208364 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73897 | /* 208366 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73898 | /* 208369 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 73899 | /* 208371 */ GIR_RootConstrainSelectedInstOperands, |
| 73900 | /* 208372 */ // GIR_Coverage, 18275, |
| 73901 | /* 208372 */ GIR_EraseRootFromParent_Done, |
| 73902 | /* 208373 */ // Label 4765: @208373 |
| 73903 | /* 208373 */ GIM_Try, /*On fail goto*//*Label 4766*/ GIMT_Encode4(208415), // Rule ID 21423 // |
| 73904 | /* 208378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 73905 | /* 208381 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 73906 | /* 208385 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 73907 | /* 208389 */ // (fsqrt:{ *:[f32] } FR32X:{ *:[f32] }:$src) => (VSQRTSSZr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR32X:{ *:[f32] }:$src) |
| 73908 | /* 208389 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 73909 | /* 208392 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73910 | /* 208396 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73911 | /* 208401 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73912 | /* 208403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSZr), |
| 73913 | /* 208406 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73914 | /* 208408 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73915 | /* 208411 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 73916 | /* 208413 */ GIR_RootConstrainSelectedInstOperands, |
| 73917 | /* 208414 */ // GIR_Coverage, 21423, |
| 73918 | /* 208414 */ GIR_EraseRootFromParent_Done, |
| 73919 | /* 208415 */ // Label 4766: @208415 |
| 73920 | /* 208415 */ GIM_Reject, |
| 73921 | /* 208416 */ // Label 4759: @208416 |
| 73922 | /* 208416 */ GIM_Reject, |
| 73923 | /* 208417 */ // Label 4744: @208417 |
| 73924 | /* 208417 */ GIM_Try, /*On fail goto*//*Label 4767*/ GIMT_Encode4(208772), |
| 73925 | /* 208422 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 73926 | /* 208425 */ GIM_Try, /*On fail goto*//*Label 4768*/ GIMT_Encode4(208481), // Rule ID 2465 // |
| 73927 | /* 208430 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE2), |
| 73928 | /* 208433 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 73929 | /* 208437 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73930 | /* 208441 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73931 | /* 208445 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73932 | /* 208448 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73933 | /* 208452 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73934 | /* 208456 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73935 | /* 208458 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73936 | /* 208465 */ // (fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SQRTSDm:{ *:[f64] } addr:{ *:[iPTR] }:$src1) |
| 73937 | /* 208465 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SQRTSDm), |
| 73938 | /* 208468 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73939 | /* 208470 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73940 | /* 208474 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73941 | /* 208479 */ GIR_RootConstrainSelectedInstOperands, |
| 73942 | /* 208480 */ // GIR_Coverage, 2465, |
| 73943 | /* 208480 */ GIR_EraseRootFromParent_Done, |
| 73944 | /* 208481 */ // Label 4768: @208481 |
| 73945 | /* 208481 */ GIM_Try, /*On fail goto*//*Label 4769*/ GIMT_Encode4(208554), // Rule ID 18281 // |
| 73946 | /* 208486 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseAVX), |
| 73947 | /* 208489 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 73948 | /* 208493 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73949 | /* 208497 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73950 | /* 208501 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73951 | /* 208504 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73952 | /* 208508 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73953 | /* 208512 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73954 | /* 208514 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73955 | /* 208521 */ // (fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSDm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 73956 | /* 208521 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 73957 | /* 208524 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73958 | /* 208528 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73959 | /* 208533 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73960 | /* 208535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDm), |
| 73961 | /* 208538 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73962 | /* 208540 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73963 | /* 208543 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73964 | /* 208547 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73965 | /* 208552 */ GIR_RootConstrainSelectedInstOperands, |
| 73966 | /* 208553 */ // GIR_Coverage, 18281, |
| 73967 | /* 208553 */ GIR_EraseRootFromParent_Done, |
| 73968 | /* 208554 */ // Label 4769: @208554 |
| 73969 | /* 208554 */ GIM_Try, /*On fail goto*//*Label 4770*/ GIMT_Encode4(208627), // Rule ID 21429 // |
| 73970 | /* 208559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_OptForSize), |
| 73971 | /* 208562 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 73972 | /* 208566 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73973 | /* 208570 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73974 | /* 208574 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73975 | /* 208577 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73976 | /* 208581 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73977 | /* 208585 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73978 | /* 208587 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73979 | /* 208594 */ // (fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSDZm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 73980 | /* 208594 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 73981 | /* 208597 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73982 | /* 208601 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 73983 | /* 208606 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73984 | /* 208608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDZm), |
| 73985 | /* 208611 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73986 | /* 208613 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73987 | /* 208616 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73988 | /* 208620 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73989 | /* 208625 */ GIR_RootConstrainSelectedInstOperands, |
| 73990 | /* 208626 */ // GIR_Coverage, 21429, |
| 73991 | /* 208626 */ GIR_EraseRootFromParent_Done, |
| 73992 | /* 208627 */ // Label 4770: @208627 |
| 73993 | /* 208627 */ GIM_Try, /*On fail goto*//*Label 4771*/ GIMT_Encode4(208660), // Rule ID 1051 // |
| 73994 | /* 208632 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 73995 | /* 208635 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 73996 | /* 208639 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 73997 | /* 208643 */ // (fsqrt:{ *:[f64] } RFP64:{ *:[f64] }:$src) => (SQRT_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src) |
| 73998 | /* 208643 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp64), |
| 73999 | /* 208648 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 74000 | /* 208654 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 74001 | /* 208658 */ GIR_RootConstrainSelectedInstOperands, |
| 74002 | /* 208659 */ // GIR_Coverage, 1051, |
| 74003 | /* 208659 */ GIR_Done, |
| 74004 | /* 208660 */ // Label 4771: @208660 |
| 74005 | /* 208660 */ GIM_Try, /*On fail goto*//*Label 4772*/ GIMT_Encode4(208687), // Rule ID 2463 // |
| 74006 | /* 208665 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 74007 | /* 208668 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74008 | /* 208672 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74009 | /* 208676 */ // (fsqrt:{ *:[f64] } FR64:{ *:[f64] }:$src1) => (SQRTSDr:{ *:[f64] } FR64:{ *:[f64] }:$src1) |
| 74010 | /* 208676 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTSDr), |
| 74011 | /* 208681 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74012 | /* 208685 */ GIR_RootConstrainSelectedInstOperands, |
| 74013 | /* 208686 */ // GIR_Coverage, 2463, |
| 74014 | /* 208686 */ GIR_Done, |
| 74015 | /* 208687 */ // Label 4772: @208687 |
| 74016 | /* 208687 */ GIM_Try, /*On fail goto*//*Label 4773*/ GIMT_Encode4(208729), // Rule ID 18279 // |
| 74017 | /* 208692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 74018 | /* 208695 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74019 | /* 208699 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74020 | /* 208703 */ // (fsqrt:{ *:[f64] } FR64:{ *:[f64] }:$src) => (VSQRTSDr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR64:{ *:[f64] }:$src) |
| 74021 | /* 208703 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 74022 | /* 208706 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 74023 | /* 208710 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 74024 | /* 208715 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 74025 | /* 208717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDr), |
| 74026 | /* 208720 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74027 | /* 208722 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 74028 | /* 208725 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 74029 | /* 208727 */ GIR_RootConstrainSelectedInstOperands, |
| 74030 | /* 208728 */ // GIR_Coverage, 18279, |
| 74031 | /* 208728 */ GIR_EraseRootFromParent_Done, |
| 74032 | /* 208729 */ // Label 4773: @208729 |
| 74033 | /* 208729 */ GIM_Try, /*On fail goto*//*Label 4774*/ GIMT_Encode4(208771), // Rule ID 21427 // |
| 74034 | /* 208734 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74035 | /* 208737 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 74036 | /* 208741 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 74037 | /* 208745 */ // (fsqrt:{ *:[f64] } FR64X:{ *:[f64] }:$src) => (VSQRTSDZr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR64X:{ *:[f64] }:$src) |
| 74038 | /* 208745 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 74039 | /* 208748 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 74040 | /* 208752 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 74041 | /* 208757 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 74042 | /* 208759 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDZr), |
| 74043 | /* 208762 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74044 | /* 208764 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 74045 | /* 208767 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 74046 | /* 208769 */ GIR_RootConstrainSelectedInstOperands, |
| 74047 | /* 208770 */ // GIR_Coverage, 21427, |
| 74048 | /* 208770 */ GIR_EraseRootFromParent_Done, |
| 74049 | /* 208771 */ // Label 4774: @208771 |
| 74050 | /* 208771 */ GIM_Reject, |
| 74051 | /* 208772 */ // Label 4767: @208772 |
| 74052 | /* 208772 */ GIM_Reject, |
| 74053 | /* 208773 */ // Label 4745: @208773 |
| 74054 | /* 208773 */ GIM_Try, /*On fail goto*//*Label 4775*/ GIMT_Encode4(208809), // Rule ID 1053 // |
| 74055 | /* 208778 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 74056 | /* 208781 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 74057 | /* 208784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74058 | /* 208788 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74059 | /* 208792 */ // (fsqrt:{ *:[f80] } RFP80:{ *:[f80] }:$src) => (SQRT_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src) |
| 74060 | /* 208792 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp80), |
| 74061 | /* 208797 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 74062 | /* 208803 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 74063 | /* 208807 */ GIR_RootConstrainSelectedInstOperands, |
| 74064 | /* 208808 */ // GIR_Coverage, 1053, |
| 74065 | /* 208808 */ GIR_Done, |
| 74066 | /* 208809 */ // Label 4775: @208809 |
| 74067 | /* 208809 */ GIM_Reject, |
| 74068 | /* 208810 */ // Label 4746: @208810 |
| 74069 | /* 208810 */ GIM_Try, /*On fail goto*//*Label 4776*/ GIMT_Encode4(209012), |
| 74070 | /* 208815 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 74071 | /* 208818 */ GIM_Try, /*On fail goto*//*Label 4777*/ GIMT_Encode4(208874), // Rule ID 2469 // |
| 74072 | /* 208823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 74073 | /* 208826 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74074 | /* 208830 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74075 | /* 208834 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74076 | /* 208838 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74077 | /* 208841 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74078 | /* 208845 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74079 | /* 208849 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74080 | /* 208851 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74081 | /* 208858 */ // (fsqrt:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 74082 | /* 208858 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDm), |
| 74083 | /* 208861 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74084 | /* 208863 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74085 | /* 208867 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74086 | /* 208872 */ GIR_RootConstrainSelectedInstOperands, |
| 74087 | /* 208873 */ // GIR_Coverage, 2469, |
| 74088 | /* 208873 */ GIR_EraseRootFromParent_Done, |
| 74089 | /* 208874 */ // Label 4777: @208874 |
| 74090 | /* 208874 */ GIM_Try, /*On fail goto*//*Label 4778*/ GIMT_Encode4(208930), // Rule ID 12087 // |
| 74091 | /* 208879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 74092 | /* 208882 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 74093 | /* 208886 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74094 | /* 208890 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74095 | /* 208894 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74096 | /* 208897 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74097 | /* 208901 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74098 | /* 208905 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74099 | /* 208907 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74100 | /* 208914 */ // (fsqrt:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZ128m:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 74101 | /* 208914 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ128m), |
| 74102 | /* 208917 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74103 | /* 208919 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74104 | /* 208923 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74105 | /* 208928 */ GIR_RootConstrainSelectedInstOperands, |
| 74106 | /* 208929 */ // GIR_Coverage, 12087, |
| 74107 | /* 208929 */ GIR_EraseRootFromParent_Done, |
| 74108 | /* 208930 */ // Label 4778: @208930 |
| 74109 | /* 208930 */ GIM_Try, /*On fail goto*//*Label 4779*/ GIMT_Encode4(208957), // Rule ID 2467 // |
| 74110 | /* 208935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 74111 | /* 208938 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74112 | /* 208942 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74113 | /* 208946 */ // (fsqrt:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) => (VSQRTPDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 74114 | /* 208946 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDr), |
| 74115 | /* 208951 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74116 | /* 208955 */ GIR_RootConstrainSelectedInstOperands, |
| 74117 | /* 208956 */ // GIR_Coverage, 2467, |
| 74118 | /* 208956 */ GIR_Done, |
| 74119 | /* 208957 */ // Label 4779: @208957 |
| 74120 | /* 208957 */ GIM_Try, /*On fail goto*//*Label 4780*/ GIMT_Encode4(208984), // Rule ID 2475 // |
| 74121 | /* 208962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 74122 | /* 208965 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74123 | /* 208969 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74124 | /* 208973 */ // (fsqrt:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) => (SQRTPDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 74125 | /* 208973 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTPDr), |
| 74126 | /* 208978 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74127 | /* 208982 */ GIR_RootConstrainSelectedInstOperands, |
| 74128 | /* 208983 */ // GIR_Coverage, 2475, |
| 74129 | /* 208983 */ GIR_Done, |
| 74130 | /* 208984 */ // Label 4780: @208984 |
| 74131 | /* 208984 */ GIM_Try, /*On fail goto*//*Label 4781*/ GIMT_Encode4(209011), // Rule ID 12083 // |
| 74132 | /* 208989 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 74133 | /* 208992 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 74134 | /* 208996 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 74135 | /* 209000 */ // (fsqrt:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src) => (VSQRTPDZ128r:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src) |
| 74136 | /* 209000 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ128r), |
| 74137 | /* 209005 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74138 | /* 209009 */ GIR_RootConstrainSelectedInstOperands, |
| 74139 | /* 209010 */ // GIR_Coverage, 12083, |
| 74140 | /* 209010 */ GIR_Done, |
| 74141 | /* 209011 */ // Label 4781: @209011 |
| 74142 | /* 209011 */ GIM_Reject, |
| 74143 | /* 209012 */ // Label 4776: @209012 |
| 74144 | /* 209012 */ GIM_Reject, |
| 74145 | /* 209013 */ // Label 4747: @209013 |
| 74146 | /* 209013 */ GIM_Try, /*On fail goto*//*Label 4782*/ GIMT_Encode4(209215), |
| 74147 | /* 209018 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 74148 | /* 209021 */ GIM_Try, /*On fail goto*//*Label 4783*/ GIMT_Encode4(209077), // Rule ID 2453 // |
| 74149 | /* 209026 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 74150 | /* 209029 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74151 | /* 209033 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74152 | /* 209037 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74153 | /* 209041 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74154 | /* 209044 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74155 | /* 209048 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74156 | /* 209052 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74157 | /* 209054 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74158 | /* 209061 */ // (fsqrt:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 74159 | /* 209061 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSm), |
| 74160 | /* 209064 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74161 | /* 209066 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74162 | /* 209070 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74163 | /* 209075 */ GIR_RootConstrainSelectedInstOperands, |
| 74164 | /* 209076 */ // GIR_Coverage, 2453, |
| 74165 | /* 209076 */ GIR_EraseRootFromParent_Done, |
| 74166 | /* 209077 */ // Label 4783: @209077 |
| 74167 | /* 209077 */ GIM_Try, /*On fail goto*//*Label 4784*/ GIMT_Encode4(209133), // Rule ID 12063 // |
| 74168 | /* 209082 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 74169 | /* 209085 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 74170 | /* 209089 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74171 | /* 209093 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74172 | /* 209097 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74173 | /* 209100 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74174 | /* 209104 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74175 | /* 209108 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74176 | /* 209110 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74177 | /* 209117 */ // (fsqrt:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZ128m:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 74178 | /* 209117 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ128m), |
| 74179 | /* 209120 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74180 | /* 209122 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74181 | /* 209126 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74182 | /* 209131 */ GIR_RootConstrainSelectedInstOperands, |
| 74183 | /* 209132 */ // GIR_Coverage, 12063, |
| 74184 | /* 209132 */ GIR_EraseRootFromParent_Done, |
| 74185 | /* 209133 */ // Label 4784: @209133 |
| 74186 | /* 209133 */ GIM_Try, /*On fail goto*//*Label 4785*/ GIMT_Encode4(209160), // Rule ID 2451 // |
| 74187 | /* 209138 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 74188 | /* 209141 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74189 | /* 209145 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74190 | /* 209149 */ // (fsqrt:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) => (VSQRTPSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 74191 | /* 209149 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSr), |
| 74192 | /* 209154 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74193 | /* 209158 */ GIR_RootConstrainSelectedInstOperands, |
| 74194 | /* 209159 */ // GIR_Coverage, 2451, |
| 74195 | /* 209159 */ GIR_Done, |
| 74196 | /* 209160 */ // Label 4785: @209160 |
| 74197 | /* 209160 */ GIM_Try, /*On fail goto*//*Label 4786*/ GIMT_Encode4(209187), // Rule ID 2459 // |
| 74198 | /* 209165 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 74199 | /* 209168 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74200 | /* 209172 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74201 | /* 209176 */ // (fsqrt:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) => (SQRTPSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 74202 | /* 209176 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTPSr), |
| 74203 | /* 209181 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74204 | /* 209185 */ GIR_RootConstrainSelectedInstOperands, |
| 74205 | /* 209186 */ // GIR_Coverage, 2459, |
| 74206 | /* 209186 */ GIR_Done, |
| 74207 | /* 209187 */ // Label 4786: @209187 |
| 74208 | /* 209187 */ GIM_Try, /*On fail goto*//*Label 4787*/ GIMT_Encode4(209214), // Rule ID 12059 // |
| 74209 | /* 209192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 74210 | /* 209195 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 74211 | /* 209199 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 74212 | /* 209203 */ // (fsqrt:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src) => (VSQRTPSZ128r:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src) |
| 74213 | /* 209203 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ128r), |
| 74214 | /* 209208 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74215 | /* 209212 */ GIR_RootConstrainSelectedInstOperands, |
| 74216 | /* 209213 */ // GIR_Coverage, 12059, |
| 74217 | /* 209213 */ GIR_Done, |
| 74218 | /* 209214 */ // Label 4787: @209214 |
| 74219 | /* 209214 */ GIM_Reject, |
| 74220 | /* 209215 */ // Label 4782: @209215 |
| 74221 | /* 209215 */ GIM_Reject, |
| 74222 | /* 209216 */ // Label 4748: @209216 |
| 74223 | /* 209216 */ GIM_Try, /*On fail goto*//*Label 4788*/ GIMT_Encode4(209391), |
| 74224 | /* 209221 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 74225 | /* 209224 */ GIM_Try, /*On fail goto*//*Label 4789*/ GIMT_Encode4(209280), // Rule ID 2473 // |
| 74226 | /* 209229 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 74227 | /* 209232 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 74228 | /* 209236 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74229 | /* 209240 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74230 | /* 209244 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74231 | /* 209247 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74232 | /* 209251 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74233 | /* 209255 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74234 | /* 209257 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74235 | /* 209264 */ // (fsqrt:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDYm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 74236 | /* 209264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDYm), |
| 74237 | /* 209267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74238 | /* 209269 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74239 | /* 209273 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74240 | /* 209278 */ GIR_RootConstrainSelectedInstOperands, |
| 74241 | /* 209279 */ // GIR_Coverage, 2473, |
| 74242 | /* 209279 */ GIR_EraseRootFromParent_Done, |
| 74243 | /* 209280 */ // Label 4789: @209280 |
| 74244 | /* 209280 */ GIM_Try, /*On fail goto*//*Label 4790*/ GIMT_Encode4(209336), // Rule ID 12099 // |
| 74245 | /* 209285 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 74246 | /* 209288 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 74247 | /* 209292 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74248 | /* 209296 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74249 | /* 209300 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74250 | /* 209303 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74251 | /* 209307 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74252 | /* 209311 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74253 | /* 209313 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74254 | /* 209320 */ // (fsqrt:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZ256m:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 74255 | /* 209320 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ256m), |
| 74256 | /* 209323 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74257 | /* 209325 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74258 | /* 209329 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74259 | /* 209334 */ GIR_RootConstrainSelectedInstOperands, |
| 74260 | /* 209335 */ // GIR_Coverage, 12099, |
| 74261 | /* 209335 */ GIR_EraseRootFromParent_Done, |
| 74262 | /* 209336 */ // Label 4790: @209336 |
| 74263 | /* 209336 */ GIM_Try, /*On fail goto*//*Label 4791*/ GIMT_Encode4(209363), // Rule ID 2471 // |
| 74264 | /* 209341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 74265 | /* 209344 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 74266 | /* 209348 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 74267 | /* 209352 */ // (fsqrt:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src) => (VSQRTPDYr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src) |
| 74268 | /* 209352 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDYr), |
| 74269 | /* 209357 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74270 | /* 209361 */ GIR_RootConstrainSelectedInstOperands, |
| 74271 | /* 209362 */ // GIR_Coverage, 2471, |
| 74272 | /* 209362 */ GIR_Done, |
| 74273 | /* 209363 */ // Label 4791: @209363 |
| 74274 | /* 209363 */ GIM_Try, /*On fail goto*//*Label 4792*/ GIMT_Encode4(209390), // Rule ID 12095 // |
| 74275 | /* 209368 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 74276 | /* 209371 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 74277 | /* 209375 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 74278 | /* 209379 */ // (fsqrt:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src) => (VSQRTPDZ256r:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src) |
| 74279 | /* 209379 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ256r), |
| 74280 | /* 209384 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74281 | /* 209388 */ GIR_RootConstrainSelectedInstOperands, |
| 74282 | /* 209389 */ // GIR_Coverage, 12095, |
| 74283 | /* 209389 */ GIR_Done, |
| 74284 | /* 209390 */ // Label 4792: @209390 |
| 74285 | /* 209390 */ GIM_Reject, |
| 74286 | /* 209391 */ // Label 4788: @209391 |
| 74287 | /* 209391 */ GIM_Reject, |
| 74288 | /* 209392 */ // Label 4749: @209392 |
| 74289 | /* 209392 */ GIM_Try, /*On fail goto*//*Label 4793*/ GIMT_Encode4(209480), |
| 74290 | /* 209397 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 74291 | /* 209400 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 74292 | /* 209404 */ GIM_Try, /*On fail goto*//*Label 4794*/ GIMT_Encode4(209456), // Rule ID 12015 // |
| 74293 | /* 209409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 74294 | /* 209412 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74295 | /* 209416 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74296 | /* 209420 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74297 | /* 209423 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74298 | /* 209427 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74299 | /* 209431 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74300 | /* 209433 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74301 | /* 209440 */ // (fsqrt:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZ128m:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 74302 | /* 209440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ128m), |
| 74303 | /* 209443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74304 | /* 209445 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74305 | /* 209449 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74306 | /* 209454 */ GIR_RootConstrainSelectedInstOperands, |
| 74307 | /* 209455 */ // GIR_Coverage, 12015, |
| 74308 | /* 209455 */ GIR_EraseRootFromParent_Done, |
| 74309 | /* 209456 */ // Label 4794: @209456 |
| 74310 | /* 209456 */ GIM_Try, /*On fail goto*//*Label 4795*/ GIMT_Encode4(209479), // Rule ID 12011 // |
| 74311 | /* 209461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 74312 | /* 209464 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 74313 | /* 209468 */ // (fsqrt:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src) => (VSQRTPHZ128r:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src) |
| 74314 | /* 209468 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ128r), |
| 74315 | /* 209473 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74316 | /* 209477 */ GIR_RootConstrainSelectedInstOperands, |
| 74317 | /* 209478 */ // GIR_Coverage, 12011, |
| 74318 | /* 209478 */ GIR_Done, |
| 74319 | /* 209479 */ // Label 4795: @209479 |
| 74320 | /* 209479 */ GIM_Reject, |
| 74321 | /* 209480 */ // Label 4793: @209480 |
| 74322 | /* 209480 */ GIM_Reject, |
| 74323 | /* 209481 */ // Label 4750: @209481 |
| 74324 | /* 209481 */ GIM_Try, /*On fail goto*//*Label 4796*/ GIMT_Encode4(209656), |
| 74325 | /* 209486 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 74326 | /* 209489 */ GIM_Try, /*On fail goto*//*Label 4797*/ GIMT_Encode4(209545), // Rule ID 2457 // |
| 74327 | /* 209494 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 74328 | /* 209497 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 74329 | /* 209501 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74330 | /* 209505 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74331 | /* 209509 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74332 | /* 209512 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74333 | /* 209516 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74334 | /* 209520 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74335 | /* 209522 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74336 | /* 209529 */ // (fsqrt:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSYm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 74337 | /* 209529 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSYm), |
| 74338 | /* 209532 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74339 | /* 209534 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74340 | /* 209538 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74341 | /* 209543 */ GIR_RootConstrainSelectedInstOperands, |
| 74342 | /* 209544 */ // GIR_Coverage, 2457, |
| 74343 | /* 209544 */ GIR_EraseRootFromParent_Done, |
| 74344 | /* 209545 */ // Label 4797: @209545 |
| 74345 | /* 209545 */ GIM_Try, /*On fail goto*//*Label 4798*/ GIMT_Encode4(209601), // Rule ID 12075 // |
| 74346 | /* 209550 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 74347 | /* 209553 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 74348 | /* 209557 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74349 | /* 209561 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74350 | /* 209565 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74351 | /* 209568 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74352 | /* 209572 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74353 | /* 209576 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74354 | /* 209578 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74355 | /* 209585 */ // (fsqrt:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZ256m:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 74356 | /* 209585 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ256m), |
| 74357 | /* 209588 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74358 | /* 209590 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74359 | /* 209594 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74360 | /* 209599 */ GIR_RootConstrainSelectedInstOperands, |
| 74361 | /* 209600 */ // GIR_Coverage, 12075, |
| 74362 | /* 209600 */ GIR_EraseRootFromParent_Done, |
| 74363 | /* 209601 */ // Label 4798: @209601 |
| 74364 | /* 209601 */ GIM_Try, /*On fail goto*//*Label 4799*/ GIMT_Encode4(209628), // Rule ID 2455 // |
| 74365 | /* 209606 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 74366 | /* 209609 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 74367 | /* 209613 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 74368 | /* 209617 */ // (fsqrt:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src) => (VSQRTPSYr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src) |
| 74369 | /* 209617 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSYr), |
| 74370 | /* 209622 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74371 | /* 209626 */ GIR_RootConstrainSelectedInstOperands, |
| 74372 | /* 209627 */ // GIR_Coverage, 2455, |
| 74373 | /* 209627 */ GIR_Done, |
| 74374 | /* 209628 */ // Label 4799: @209628 |
| 74375 | /* 209628 */ GIM_Try, /*On fail goto*//*Label 4800*/ GIMT_Encode4(209655), // Rule ID 12071 // |
| 74376 | /* 209633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 74377 | /* 209636 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 74378 | /* 209640 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 74379 | /* 209644 */ // (fsqrt:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src) => (VSQRTPSZ256r:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src) |
| 74380 | /* 209644 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ256r), |
| 74381 | /* 209649 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74382 | /* 209653 */ GIR_RootConstrainSelectedInstOperands, |
| 74383 | /* 209654 */ // GIR_Coverage, 12071, |
| 74384 | /* 209654 */ GIR_Done, |
| 74385 | /* 209655 */ // Label 4800: @209655 |
| 74386 | /* 209655 */ GIM_Reject, |
| 74387 | /* 209656 */ // Label 4796: @209656 |
| 74388 | /* 209656 */ GIM_Reject, |
| 74389 | /* 209657 */ // Label 4751: @209657 |
| 74390 | /* 209657 */ GIM_Try, /*On fail goto*//*Label 4801*/ GIMT_Encode4(209745), |
| 74391 | /* 209662 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 74392 | /* 209665 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 74393 | /* 209669 */ GIM_Try, /*On fail goto*//*Label 4802*/ GIMT_Encode4(209721), // Rule ID 12051 // |
| 74394 | /* 209674 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74395 | /* 209677 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74396 | /* 209681 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74397 | /* 209685 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74398 | /* 209688 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74399 | /* 209692 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74400 | /* 209696 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74401 | /* 209698 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74402 | /* 209705 */ // (fsqrt:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 74403 | /* 209705 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZm), |
| 74404 | /* 209708 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74405 | /* 209710 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74406 | /* 209714 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74407 | /* 209719 */ GIR_RootConstrainSelectedInstOperands, |
| 74408 | /* 209720 */ // GIR_Coverage, 12051, |
| 74409 | /* 209720 */ GIR_EraseRootFromParent_Done, |
| 74410 | /* 209721 */ // Label 4802: @209721 |
| 74411 | /* 209721 */ GIM_Try, /*On fail goto*//*Label 4803*/ GIMT_Encode4(209744), // Rule ID 12047 // |
| 74412 | /* 209726 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74413 | /* 209729 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 74414 | /* 209733 */ // (fsqrt:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src) => (VSQRTPDZr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src) |
| 74415 | /* 209733 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZr), |
| 74416 | /* 209738 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74417 | /* 209742 */ GIR_RootConstrainSelectedInstOperands, |
| 74418 | /* 209743 */ // GIR_Coverage, 12047, |
| 74419 | /* 209743 */ GIR_Done, |
| 74420 | /* 209744 */ // Label 4803: @209744 |
| 74421 | /* 209744 */ GIM_Reject, |
| 74422 | /* 209745 */ // Label 4801: @209745 |
| 74423 | /* 209745 */ GIM_Reject, |
| 74424 | /* 209746 */ // Label 4752: @209746 |
| 74425 | /* 209746 */ GIM_Try, /*On fail goto*//*Label 4804*/ GIMT_Encode4(209834), |
| 74426 | /* 209751 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 74427 | /* 209754 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 74428 | /* 209758 */ GIM_Try, /*On fail goto*//*Label 4805*/ GIMT_Encode4(209810), // Rule ID 12027 // |
| 74429 | /* 209763 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 74430 | /* 209766 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74431 | /* 209770 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74432 | /* 209774 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74433 | /* 209777 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74434 | /* 209781 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74435 | /* 209785 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74436 | /* 209787 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74437 | /* 209794 */ // (fsqrt:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZ256m:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 74438 | /* 209794 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ256m), |
| 74439 | /* 209797 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74440 | /* 209799 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74441 | /* 209803 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74442 | /* 209808 */ GIR_RootConstrainSelectedInstOperands, |
| 74443 | /* 209809 */ // GIR_Coverage, 12027, |
| 74444 | /* 209809 */ GIR_EraseRootFromParent_Done, |
| 74445 | /* 209810 */ // Label 4805: @209810 |
| 74446 | /* 209810 */ GIM_Try, /*On fail goto*//*Label 4806*/ GIMT_Encode4(209833), // Rule ID 12023 // |
| 74447 | /* 209815 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 74448 | /* 209818 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 74449 | /* 209822 */ // (fsqrt:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src) => (VSQRTPHZ256r:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src) |
| 74450 | /* 209822 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ256r), |
| 74451 | /* 209827 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74452 | /* 209831 */ GIR_RootConstrainSelectedInstOperands, |
| 74453 | /* 209832 */ // GIR_Coverage, 12023, |
| 74454 | /* 209832 */ GIR_Done, |
| 74455 | /* 209833 */ // Label 4806: @209833 |
| 74456 | /* 209833 */ GIM_Reject, |
| 74457 | /* 209834 */ // Label 4804: @209834 |
| 74458 | /* 209834 */ GIM_Reject, |
| 74459 | /* 209835 */ // Label 4753: @209835 |
| 74460 | /* 209835 */ GIM_Try, /*On fail goto*//*Label 4807*/ GIMT_Encode4(209923), |
| 74461 | /* 209840 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 74462 | /* 209843 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 74463 | /* 209847 */ GIM_Try, /*On fail goto*//*Label 4808*/ GIMT_Encode4(209899), // Rule ID 12039 // |
| 74464 | /* 209852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74465 | /* 209855 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74466 | /* 209859 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74467 | /* 209863 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74468 | /* 209866 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74469 | /* 209870 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74470 | /* 209874 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74471 | /* 209876 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74472 | /* 209883 */ // (fsqrt:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 74473 | /* 209883 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZm), |
| 74474 | /* 209886 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74475 | /* 209888 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74476 | /* 209892 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74477 | /* 209897 */ GIR_RootConstrainSelectedInstOperands, |
| 74478 | /* 209898 */ // GIR_Coverage, 12039, |
| 74479 | /* 209898 */ GIR_EraseRootFromParent_Done, |
| 74480 | /* 209899 */ // Label 4808: @209899 |
| 74481 | /* 209899 */ GIM_Try, /*On fail goto*//*Label 4809*/ GIMT_Encode4(209922), // Rule ID 12035 // |
| 74482 | /* 209904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74483 | /* 209907 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 74484 | /* 209911 */ // (fsqrt:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src) => (VSQRTPSZr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src) |
| 74485 | /* 209911 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZr), |
| 74486 | /* 209916 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74487 | /* 209920 */ GIR_RootConstrainSelectedInstOperands, |
| 74488 | /* 209921 */ // GIR_Coverage, 12035, |
| 74489 | /* 209921 */ GIR_Done, |
| 74490 | /* 209922 */ // Label 4809: @209922 |
| 74491 | /* 209922 */ GIM_Reject, |
| 74492 | /* 209923 */ // Label 4807: @209923 |
| 74493 | /* 209923 */ GIM_Reject, |
| 74494 | /* 209924 */ // Label 4754: @209924 |
| 74495 | /* 209924 */ GIM_Try, /*On fail goto*//*Label 4810*/ GIMT_Encode4(210012), |
| 74496 | /* 209929 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 74497 | /* 209932 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 74498 | /* 209936 */ GIM_Try, /*On fail goto*//*Label 4811*/ GIMT_Encode4(209988), // Rule ID 12003 // |
| 74499 | /* 209941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 74500 | /* 209944 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74501 | /* 209948 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74502 | /* 209952 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74503 | /* 209955 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74504 | /* 209959 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74505 | /* 209963 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74506 | /* 209965 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74507 | /* 209972 */ // (fsqrt:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 74508 | /* 209972 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZm), |
| 74509 | /* 209975 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74510 | /* 209977 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74511 | /* 209981 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74512 | /* 209986 */ GIR_RootConstrainSelectedInstOperands, |
| 74513 | /* 209987 */ // GIR_Coverage, 12003, |
| 74514 | /* 209987 */ GIR_EraseRootFromParent_Done, |
| 74515 | /* 209988 */ // Label 4811: @209988 |
| 74516 | /* 209988 */ GIM_Try, /*On fail goto*//*Label 4812*/ GIMT_Encode4(210011), // Rule ID 11999 // |
| 74517 | /* 209993 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 74518 | /* 209996 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 74519 | /* 210000 */ // (fsqrt:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src) => (VSQRTPHZr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src) |
| 74520 | /* 210000 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZr), |
| 74521 | /* 210005 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74522 | /* 210009 */ GIR_RootConstrainSelectedInstOperands, |
| 74523 | /* 210010 */ // GIR_Coverage, 11999, |
| 74524 | /* 210010 */ GIR_Done, |
| 74525 | /* 210011 */ // Label 4812: @210011 |
| 74526 | /* 210011 */ GIM_Reject, |
| 74527 | /* 210012 */ // Label 4810: @210012 |
| 74528 | /* 210012 */ GIM_Reject, |
| 74529 | /* 210013 */ // Label 4755: @210013 |
| 74530 | /* 210013 */ GIM_Reject, |
| 74531 | /* 210014 */ // Label 68: @210014 |
| 74532 | /* 210014 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 4826*/ GIMT_Encode4(214943), |
| 74533 | /* 210025 */ /*GILLT_s16*//*Label 4813*/ GIMT_Encode4(210109), |
| 74534 | /* 210029 */ /*GILLT_s32*//*Label 4814*/ GIMT_Encode4(210269), |
| 74535 | /* 210033 */ /*GILLT_s64*//*Label 4815*/ GIMT_Encode4(211174), |
| 74536 | /* 210037 */ /*GILLT_s80*//*Label 4816*/ GIMT_Encode4(212223), GIMT_Encode4(0), GIMT_Encode4(0), |
| 74537 | /* 210049 */ /*GILLT_v2s64*//*Label 4817*/ GIMT_Encode4(212789), GIMT_Encode4(0), |
| 74538 | /* 210057 */ /*GILLT_v4s32*//*Label 4818*/ GIMT_Encode4(213143), |
| 74539 | /* 210061 */ /*GILLT_v4s64*//*Label 4819*/ GIMT_Encode4(213497), GIMT_Encode4(0), |
| 74540 | /* 210069 */ /*GILLT_v8s16*//*Label 4820*/ GIMT_Encode4(213820), |
| 74541 | /* 210073 */ /*GILLT_v8s32*//*Label 4821*/ GIMT_Encode4(213980), |
| 74542 | /* 210077 */ /*GILLT_v8s64*//*Label 4822*/ GIMT_Encode4(214303), GIMT_Encode4(0), GIMT_Encode4(0), |
| 74543 | /* 210089 */ /*GILLT_v16s16*//*Label 4823*/ GIMT_Encode4(214463), |
| 74544 | /* 210093 */ /*GILLT_v16s32*//*Label 4824*/ GIMT_Encode4(214623), GIMT_Encode4(0), GIMT_Encode4(0), |
| 74545 | /* 210105 */ /*GILLT_v32s16*//*Label 4825*/ GIMT_Encode4(214783), |
| 74546 | /* 210109 */ // Label 4813: @210109 |
| 74547 | /* 210109 */ GIM_Try, /*On fail goto*//*Label 4827*/ GIMT_Encode4(210268), |
| 74548 | /* 210114 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 74549 | /* 210117 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 74550 | /* 210120 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 74551 | /* 210124 */ GIM_Try, /*On fail goto*//*Label 4828*/ GIMT_Encode4(210182), // Rule ID 24249 // |
| 74552 | /* 210129 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 74553 | /* 210132 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74554 | /* 210136 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74555 | /* 210140 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74556 | /* 210143 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74557 | /* 210147 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74558 | /* 210151 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 74559 | /* 210155 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74560 | /* 210157 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74561 | /* 210164 */ // (strict_fadd:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR16X:{ *:[f16] }:$src1) => (VADDSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74562 | /* 210164 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSHZrm), |
| 74563 | /* 210167 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74564 | /* 210169 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74565 | /* 210171 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74566 | /* 210175 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74567 | /* 210180 */ GIR_RootConstrainSelectedInstOperands, |
| 74568 | /* 210181 */ // GIR_Coverage, 24249, |
| 74569 | /* 210181 */ GIR_EraseRootFromParent_Done, |
| 74570 | /* 210182 */ // Label 4828: @210182 |
| 74571 | /* 210182 */ GIM_Try, /*On fail goto*//*Label 4829*/ GIMT_Encode4(210240), // Rule ID 5954 // |
| 74572 | /* 210187 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 74573 | /* 210190 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 74574 | /* 210194 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74575 | /* 210198 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74576 | /* 210202 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74577 | /* 210205 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74578 | /* 210209 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74579 | /* 210213 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74580 | /* 210215 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74581 | /* 210222 */ // (strict_fadd:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74582 | /* 210222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSHZrm), |
| 74583 | /* 210225 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74584 | /* 210227 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74585 | /* 210229 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74586 | /* 210233 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74587 | /* 210238 */ GIR_RootConstrainSelectedInstOperands, |
| 74588 | /* 210239 */ // GIR_Coverage, 5954, |
| 74589 | /* 210239 */ GIR_EraseRootFromParent_Done, |
| 74590 | /* 210240 */ // Label 4829: @210240 |
| 74591 | /* 210240 */ GIM_Try, /*On fail goto*//*Label 4830*/ GIMT_Encode4(210267), // Rule ID 5952 // |
| 74592 | /* 210245 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 74593 | /* 210248 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 74594 | /* 210252 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 74595 | /* 210256 */ // (strict_fadd:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VADDSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 74596 | /* 210256 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSHZrr), |
| 74597 | /* 210261 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74598 | /* 210265 */ GIR_RootConstrainSelectedInstOperands, |
| 74599 | /* 210266 */ // GIR_Coverage, 5952, |
| 74600 | /* 210266 */ GIR_Done, |
| 74601 | /* 210267 */ // Label 4830: @210267 |
| 74602 | /* 210267 */ GIM_Reject, |
| 74603 | /* 210268 */ // Label 4827: @210268 |
| 74604 | /* 210268 */ GIM_Reject, |
| 74605 | /* 210269 */ // Label 4814: @210269 |
| 74606 | /* 210269 */ GIM_Try, /*On fail goto*//*Label 4831*/ GIMT_Encode4(211173), |
| 74607 | /* 210274 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 74608 | /* 210277 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 74609 | /* 210280 */ GIM_Try, /*On fail goto*//*Label 4832*/ GIMT_Encode4(210345), // Rule ID 23246 // |
| 74610 | /* 210285 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74611 | /* 210288 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74612 | /* 210292 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74613 | /* 210296 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74614 | /* 210300 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 74615 | /* 210307 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74616 | /* 210311 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74617 | /* 210315 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74618 | /* 210317 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74619 | /* 210324 */ // (strict_fadd:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (ADD_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74620 | /* 210324 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m32), |
| 74621 | /* 210327 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74622 | /* 210329 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74623 | /* 210331 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74624 | /* 210335 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74625 | /* 210338 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74626 | /* 210343 */ GIR_RootConstrainSelectedInstOperands, |
| 74627 | /* 210344 */ // GIR_Coverage, 23246, |
| 74628 | /* 210344 */ GIR_EraseRootFromParent_Done, |
| 74629 | /* 210345 */ // Label 4832: @210345 |
| 74630 | /* 210345 */ GIM_Try, /*On fail goto*//*Label 4833*/ GIMT_Encode4(210410), // Rule ID 23248 // |
| 74631 | /* 210350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74632 | /* 210353 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74633 | /* 210357 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74634 | /* 210361 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74635 | /* 210365 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74636 | /* 210372 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74637 | /* 210376 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74638 | /* 210380 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74639 | /* 210382 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74640 | /* 210389 */ // (strict_fadd:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (ADD_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74641 | /* 210389 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m32), |
| 74642 | /* 210392 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74643 | /* 210394 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74644 | /* 210396 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74645 | /* 210400 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74646 | /* 210403 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74647 | /* 210408 */ GIR_RootConstrainSelectedInstOperands, |
| 74648 | /* 210409 */ // GIR_Coverage, 23248, |
| 74649 | /* 210409 */ GIR_EraseRootFromParent_Done, |
| 74650 | /* 210410 */ // Label 4833: @210410 |
| 74651 | /* 210410 */ GIM_Try, /*On fail goto*//*Label 4834*/ GIMT_Encode4(210475), // Rule ID 23236 // |
| 74652 | /* 210415 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74653 | /* 210418 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74654 | /* 210422 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74655 | /* 210426 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74656 | /* 210430 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74657 | /* 210433 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74658 | /* 210437 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74659 | /* 210441 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74660 | /* 210445 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74661 | /* 210447 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74662 | /* 210454 */ // (strict_fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP32:{ *:[f32] }:$src1) => (ADD_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74663 | /* 210454 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32m), |
| 74664 | /* 210457 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74665 | /* 210459 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74666 | /* 210461 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74667 | /* 210465 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74668 | /* 210468 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74669 | /* 210473 */ GIR_RootConstrainSelectedInstOperands, |
| 74670 | /* 210474 */ // GIR_Coverage, 23236, |
| 74671 | /* 210474 */ GIR_EraseRootFromParent_Done, |
| 74672 | /* 210475 */ // Label 4834: @210475 |
| 74673 | /* 210475 */ GIM_Try, /*On fail goto*//*Label 4835*/ GIMT_Encode4(210537), // Rule ID 23381 // |
| 74674 | /* 210480 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 74675 | /* 210483 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74676 | /* 210487 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74677 | /* 210491 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74678 | /* 210495 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74679 | /* 210498 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74680 | /* 210502 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74681 | /* 210506 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74682 | /* 210510 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74683 | /* 210512 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74684 | /* 210519 */ // (strict_fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (VADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74685 | /* 210519 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 74686 | /* 210522 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74687 | /* 210524 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74688 | /* 210526 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74689 | /* 210530 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74690 | /* 210535 */ GIR_RootConstrainSelectedInstOperands, |
| 74691 | /* 210536 */ // GIR_Coverage, 23381, |
| 74692 | /* 210536 */ GIR_EraseRootFromParent_Done, |
| 74693 | /* 210537 */ // Label 4835: @210537 |
| 74694 | /* 210537 */ GIM_Try, /*On fail goto*//*Label 4836*/ GIMT_Encode4(210599), // Rule ID 23385 // |
| 74695 | /* 210542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 74696 | /* 210545 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74697 | /* 210549 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74698 | /* 210553 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74699 | /* 210557 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74700 | /* 210560 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74701 | /* 210564 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74702 | /* 210568 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74703 | /* 210572 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74704 | /* 210574 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74705 | /* 210581 */ // (strict_fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (ADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74706 | /* 210581 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 74707 | /* 210584 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74708 | /* 210586 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74709 | /* 210588 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74710 | /* 210592 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74711 | /* 210597 */ GIR_RootConstrainSelectedInstOperands, |
| 74712 | /* 210598 */ // GIR_Coverage, 23385, |
| 74713 | /* 210598 */ GIR_EraseRootFromParent_Done, |
| 74714 | /* 210599 */ // Label 4836: @210599 |
| 74715 | /* 210599 */ GIM_Try, /*On fail goto*//*Label 4837*/ GIMT_Encode4(210661), // Rule ID 24245 // |
| 74716 | /* 210604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74717 | /* 210607 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74718 | /* 210611 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74719 | /* 210615 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74720 | /* 210619 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74721 | /* 210622 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74722 | /* 210626 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74723 | /* 210630 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74724 | /* 210634 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74725 | /* 210636 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74726 | /* 210643 */ // (strict_fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32X:{ *:[f32] }:$src1) => (VADDSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74727 | /* 210643 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 74728 | /* 210646 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74729 | /* 210648 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74730 | /* 210650 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74731 | /* 210654 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74732 | /* 210659 */ GIR_RootConstrainSelectedInstOperands, |
| 74733 | /* 210660 */ // GIR_Coverage, 24245, |
| 74734 | /* 210660 */ GIR_EraseRootFromParent_Done, |
| 74735 | /* 210661 */ // Label 4837: @210661 |
| 74736 | /* 210661 */ GIM_Try, /*On fail goto*//*Label 4838*/ GIMT_Encode4(210726), // Rule ID 920 // |
| 74737 | /* 210666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74738 | /* 210669 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74739 | /* 210673 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74740 | /* 210677 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74741 | /* 210681 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74742 | /* 210685 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 74743 | /* 210692 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74744 | /* 210696 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74745 | /* 210698 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74746 | /* 210705 */ // (strict_fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74747 | /* 210705 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m32), |
| 74748 | /* 210708 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74749 | /* 210710 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74750 | /* 210712 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74751 | /* 210716 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74752 | /* 210719 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74753 | /* 210724 */ GIR_RootConstrainSelectedInstOperands, |
| 74754 | /* 210725 */ // GIR_Coverage, 920, |
| 74755 | /* 210725 */ GIR_EraseRootFromParent_Done, |
| 74756 | /* 210726 */ // Label 4838: @210726 |
| 74757 | /* 210726 */ GIM_Try, /*On fail goto*//*Label 4839*/ GIMT_Encode4(210791), // Rule ID 922 // |
| 74758 | /* 210731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74759 | /* 210734 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74760 | /* 210738 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74761 | /* 210742 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74762 | /* 210746 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74763 | /* 210750 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74764 | /* 210757 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74765 | /* 210761 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74766 | /* 210763 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74767 | /* 210770 */ // (strict_fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74768 | /* 210770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m32), |
| 74769 | /* 210773 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74770 | /* 210775 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74771 | /* 210777 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74772 | /* 210781 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74773 | /* 210784 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74774 | /* 210789 */ GIR_RootConstrainSelectedInstOperands, |
| 74775 | /* 210790 */ // GIR_Coverage, 922, |
| 74776 | /* 210790 */ GIR_EraseRootFromParent_Done, |
| 74777 | /* 210791 */ // Label 4839: @210791 |
| 74778 | /* 210791 */ GIM_Try, /*On fail goto*//*Label 4840*/ GIMT_Encode4(210856), // Rule ID 910 // |
| 74779 | /* 210796 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74780 | /* 210799 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74781 | /* 210803 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74782 | /* 210807 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74783 | /* 210811 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74784 | /* 210815 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74785 | /* 210818 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74786 | /* 210822 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74787 | /* 210826 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74788 | /* 210828 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74789 | /* 210835 */ // (strict_fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADD_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74790 | /* 210835 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32m), |
| 74791 | /* 210838 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74792 | /* 210840 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74793 | /* 210842 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74794 | /* 210846 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74795 | /* 210849 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74796 | /* 210854 */ GIR_RootConstrainSelectedInstOperands, |
| 74797 | /* 210855 */ // GIR_Coverage, 910, |
| 74798 | /* 210855 */ GIR_EraseRootFromParent_Done, |
| 74799 | /* 210856 */ // Label 4840: @210856 |
| 74800 | /* 210856 */ GIM_Try, /*On fail goto*//*Label 4841*/ GIMT_Encode4(210918), // Rule ID 2160 // |
| 74801 | /* 210861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 74802 | /* 210864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74803 | /* 210868 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74804 | /* 210872 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74805 | /* 210876 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74806 | /* 210880 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74807 | /* 210883 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74808 | /* 210887 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74809 | /* 210891 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74810 | /* 210893 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74811 | /* 210900 */ // (strict_fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74812 | /* 210900 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 74813 | /* 210903 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74814 | /* 210905 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74815 | /* 210907 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74816 | /* 210911 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74817 | /* 210916 */ GIR_RootConstrainSelectedInstOperands, |
| 74818 | /* 210917 */ // GIR_Coverage, 2160, |
| 74819 | /* 210917 */ GIR_EraseRootFromParent_Done, |
| 74820 | /* 210918 */ // Label 4841: @210918 |
| 74821 | /* 210918 */ GIM_Try, /*On fail goto*//*Label 4842*/ GIMT_Encode4(210980), // Rule ID 2168 // |
| 74822 | /* 210923 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 74823 | /* 210926 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74824 | /* 210930 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74825 | /* 210934 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74826 | /* 210938 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74827 | /* 210942 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74828 | /* 210945 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74829 | /* 210949 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74830 | /* 210953 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74831 | /* 210955 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74832 | /* 210962 */ // (strict_fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74833 | /* 210962 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 74834 | /* 210965 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74835 | /* 210967 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74836 | /* 210969 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74837 | /* 210973 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74838 | /* 210978 */ GIR_RootConstrainSelectedInstOperands, |
| 74839 | /* 210979 */ // GIR_Coverage, 2168, |
| 74840 | /* 210979 */ GIR_EraseRootFromParent_Done, |
| 74841 | /* 210980 */ // Label 4842: @210980 |
| 74842 | /* 210980 */ GIM_Try, /*On fail goto*//*Label 4843*/ GIMT_Encode4(211042), // Rule ID 5916 // |
| 74843 | /* 210985 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74844 | /* 210988 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74845 | /* 210992 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74846 | /* 210996 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74847 | /* 211000 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74848 | /* 211004 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74849 | /* 211007 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74850 | /* 211011 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74851 | /* 211015 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74852 | /* 211017 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74853 | /* 211024 */ // (strict_fadd:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74854 | /* 211024 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 74855 | /* 211027 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74856 | /* 211029 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74857 | /* 211031 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74858 | /* 211035 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74859 | /* 211040 */ GIR_RootConstrainSelectedInstOperands, |
| 74860 | /* 211041 */ // GIR_Coverage, 5916, |
| 74861 | /* 211041 */ GIR_EraseRootFromParent_Done, |
| 74862 | /* 211042 */ // Label 4843: @211042 |
| 74863 | /* 211042 */ GIM_Try, /*On fail goto*//*Label 4844*/ GIMT_Encode4(211079), // Rule ID 886 // |
| 74864 | /* 211047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74865 | /* 211050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74866 | /* 211054 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74867 | /* 211058 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74868 | /* 211062 */ // (strict_fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (ADD_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 74869 | /* 211062 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32), |
| 74870 | /* 211067 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 74871 | /* 211073 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 74872 | /* 211077 */ GIR_RootConstrainSelectedInstOperands, |
| 74873 | /* 211078 */ // GIR_Coverage, 886, |
| 74874 | /* 211078 */ GIR_Done, |
| 74875 | /* 211079 */ // Label 4844: @211079 |
| 74876 | /* 211079 */ GIM_Try, /*On fail goto*//*Label 4845*/ GIMT_Encode4(211110), // Rule ID 2158 // |
| 74877 | /* 211084 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 74878 | /* 211087 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74879 | /* 211091 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74880 | /* 211095 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74881 | /* 211099 */ // (strict_fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VADDSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 74882 | /* 211099 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSSrr), |
| 74883 | /* 211104 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74884 | /* 211108 */ GIR_RootConstrainSelectedInstOperands, |
| 74885 | /* 211109 */ // GIR_Coverage, 2158, |
| 74886 | /* 211109 */ GIR_Done, |
| 74887 | /* 211110 */ // Label 4845: @211110 |
| 74888 | /* 211110 */ GIM_Try, /*On fail goto*//*Label 4846*/ GIMT_Encode4(211141), // Rule ID 2166 // |
| 74889 | /* 211115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 74890 | /* 211118 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74891 | /* 211122 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74892 | /* 211126 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74893 | /* 211130 */ // (strict_fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (ADDSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 74894 | /* 211130 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDSSrr), |
| 74895 | /* 211135 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74896 | /* 211139 */ GIR_RootConstrainSelectedInstOperands, |
| 74897 | /* 211140 */ // GIR_Coverage, 2166, |
| 74898 | /* 211140 */ GIR_Done, |
| 74899 | /* 211141 */ // Label 4846: @211141 |
| 74900 | /* 211141 */ GIM_Try, /*On fail goto*//*Label 4847*/ GIMT_Encode4(211172), // Rule ID 5914 // |
| 74901 | /* 211146 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74902 | /* 211149 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74903 | /* 211153 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74904 | /* 211157 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74905 | /* 211161 */ // (strict_fadd:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VADDSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 74906 | /* 211161 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSSZrr), |
| 74907 | /* 211166 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74908 | /* 211170 */ GIR_RootConstrainSelectedInstOperands, |
| 74909 | /* 211171 */ // GIR_Coverage, 5914, |
| 74910 | /* 211171 */ GIR_Done, |
| 74911 | /* 211172 */ // Label 4847: @211172 |
| 74912 | /* 211172 */ GIM_Reject, |
| 74913 | /* 211173 */ // Label 4831: @211173 |
| 74914 | /* 211173 */ GIM_Reject, |
| 74915 | /* 211174 */ // Label 4815: @211174 |
| 74916 | /* 211174 */ GIM_Try, /*On fail goto*//*Label 4848*/ GIMT_Encode4(212222), |
| 74917 | /* 211179 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 74918 | /* 211182 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 74919 | /* 211185 */ GIM_Try, /*On fail goto*//*Label 4849*/ GIMT_Encode4(211250), // Rule ID 23250 // |
| 74920 | /* 211190 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74921 | /* 211193 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74922 | /* 211197 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74923 | /* 211201 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74924 | /* 211205 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 74925 | /* 211212 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74926 | /* 211216 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74927 | /* 211220 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74928 | /* 211222 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74929 | /* 211229 */ // (strict_fadd:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (ADD_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74930 | /* 211229 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m64), |
| 74931 | /* 211232 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74932 | /* 211234 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74933 | /* 211236 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74934 | /* 211240 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74935 | /* 211243 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74936 | /* 211248 */ GIR_RootConstrainSelectedInstOperands, |
| 74937 | /* 211249 */ // GIR_Coverage, 23250, |
| 74938 | /* 211249 */ GIR_EraseRootFromParent_Done, |
| 74939 | /* 211250 */ // Label 4849: @211250 |
| 74940 | /* 211250 */ GIM_Try, /*On fail goto*//*Label 4850*/ GIMT_Encode4(211315), // Rule ID 23252 // |
| 74941 | /* 211255 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74942 | /* 211258 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74943 | /* 211262 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74944 | /* 211266 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74945 | /* 211270 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74946 | /* 211277 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74947 | /* 211281 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74948 | /* 211285 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74949 | /* 211287 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74950 | /* 211294 */ // (strict_fadd:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (ADD_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74951 | /* 211294 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m64), |
| 74952 | /* 211297 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74953 | /* 211299 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74954 | /* 211301 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74955 | /* 211305 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74956 | /* 211308 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74957 | /* 211313 */ GIR_RootConstrainSelectedInstOperands, |
| 74958 | /* 211314 */ // GIR_Coverage, 23252, |
| 74959 | /* 211314 */ GIR_EraseRootFromParent_Done, |
| 74960 | /* 211315 */ // Label 4850: @211315 |
| 74961 | /* 211315 */ GIM_Try, /*On fail goto*//*Label 4851*/ GIMT_Encode4(211380), // Rule ID 23238 // |
| 74962 | /* 211320 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74963 | /* 211323 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74964 | /* 211327 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74965 | /* 211331 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74966 | /* 211335 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74967 | /* 211338 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74968 | /* 211342 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74969 | /* 211346 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74970 | /* 211350 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74971 | /* 211352 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74972 | /* 211359 */ // (strict_fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP64:{ *:[f64] }:$src1) => (ADD_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74973 | /* 211359 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m), |
| 74974 | /* 211362 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74975 | /* 211364 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74976 | /* 211366 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74977 | /* 211370 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74978 | /* 211373 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74979 | /* 211378 */ GIR_RootConstrainSelectedInstOperands, |
| 74980 | /* 211379 */ // GIR_Coverage, 23238, |
| 74981 | /* 211379 */ GIR_EraseRootFromParent_Done, |
| 74982 | /* 211380 */ // Label 4851: @211380 |
| 74983 | /* 211380 */ GIM_Try, /*On fail goto*//*Label 4852*/ GIMT_Encode4(211452), // Rule ID 23240 // |
| 74984 | /* 211385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74985 | /* 211388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74986 | /* 211392 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74987 | /* 211396 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74988 | /* 211400 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74989 | /* 211403 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74990 | /* 211407 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74991 | /* 211414 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74992 | /* 211418 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74993 | /* 211422 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74994 | /* 211424 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74995 | /* 211431 */ // (strict_fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP64:{ *:[f64] }:$src1) => (ADD_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74996 | /* 211431 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m32), |
| 74997 | /* 211434 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74998 | /* 211436 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74999 | /* 211438 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75000 | /* 211442 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75001 | /* 211445 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75002 | /* 211450 */ GIR_RootConstrainSelectedInstOperands, |
| 75003 | /* 211451 */ // GIR_Coverage, 23240, |
| 75004 | /* 211451 */ GIR_EraseRootFromParent_Done, |
| 75005 | /* 211452 */ // Label 4852: @211452 |
| 75006 | /* 211452 */ GIM_Try, /*On fail goto*//*Label 4853*/ GIMT_Encode4(211514), // Rule ID 23383 // |
| 75007 | /* 211457 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 75008 | /* 211460 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75009 | /* 211464 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75010 | /* 211468 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75011 | /* 211472 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75012 | /* 211475 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75013 | /* 211479 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75014 | /* 211483 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75015 | /* 211487 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75016 | /* 211489 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75017 | /* 211496 */ // (strict_fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (VADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75018 | /* 211496 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 75019 | /* 211499 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75020 | /* 211501 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75021 | /* 211503 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75022 | /* 211507 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75023 | /* 211512 */ GIR_RootConstrainSelectedInstOperands, |
| 75024 | /* 211513 */ // GIR_Coverage, 23383, |
| 75025 | /* 211513 */ GIR_EraseRootFromParent_Done, |
| 75026 | /* 211514 */ // Label 4853: @211514 |
| 75027 | /* 211514 */ GIM_Try, /*On fail goto*//*Label 4854*/ GIMT_Encode4(211576), // Rule ID 23387 // |
| 75028 | /* 211519 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 75029 | /* 211522 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75030 | /* 211526 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75031 | /* 211530 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75032 | /* 211534 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75033 | /* 211537 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75034 | /* 211541 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75035 | /* 211545 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75036 | /* 211549 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75037 | /* 211551 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75038 | /* 211558 */ // (strict_fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (ADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75039 | /* 211558 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 75040 | /* 211561 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75041 | /* 211563 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75042 | /* 211565 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75043 | /* 211569 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75044 | /* 211574 */ GIR_RootConstrainSelectedInstOperands, |
| 75045 | /* 211575 */ // GIR_Coverage, 23387, |
| 75046 | /* 211575 */ GIR_EraseRootFromParent_Done, |
| 75047 | /* 211576 */ // Label 4854: @211576 |
| 75048 | /* 211576 */ GIM_Try, /*On fail goto*//*Label 4855*/ GIMT_Encode4(211638), // Rule ID 24247 // |
| 75049 | /* 211581 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 75050 | /* 211584 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 75051 | /* 211588 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75052 | /* 211592 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75053 | /* 211596 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75054 | /* 211599 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75055 | /* 211603 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75056 | /* 211607 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 75057 | /* 211611 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75058 | /* 211613 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75059 | /* 211620 */ // (strict_fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64X:{ *:[f64] }:$src1) => (VADDSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75060 | /* 211620 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 75061 | /* 211623 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75062 | /* 211625 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75063 | /* 211627 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75064 | /* 211631 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75065 | /* 211636 */ GIR_RootConstrainSelectedInstOperands, |
| 75066 | /* 211637 */ // GIR_Coverage, 24247, |
| 75067 | /* 211637 */ GIR_EraseRootFromParent_Done, |
| 75068 | /* 211638 */ // Label 4855: @211638 |
| 75069 | /* 211638 */ GIM_Try, /*On fail goto*//*Label 4856*/ GIMT_Encode4(211703), // Rule ID 924 // |
| 75070 | /* 211643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 75071 | /* 211646 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75072 | /* 211650 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75073 | /* 211654 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75074 | /* 211658 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 75075 | /* 211662 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 75076 | /* 211669 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75077 | /* 211673 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75078 | /* 211675 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75079 | /* 211682 */ // (strict_fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75080 | /* 211682 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m64), |
| 75081 | /* 211685 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75082 | /* 211687 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75083 | /* 211689 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75084 | /* 211693 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75085 | /* 211696 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75086 | /* 211701 */ GIR_RootConstrainSelectedInstOperands, |
| 75087 | /* 211702 */ // GIR_Coverage, 924, |
| 75088 | /* 211702 */ GIR_EraseRootFromParent_Done, |
| 75089 | /* 211703 */ // Label 4856: @211703 |
| 75090 | /* 211703 */ GIM_Try, /*On fail goto*//*Label 4857*/ GIMT_Encode4(211768), // Rule ID 926 // |
| 75091 | /* 211708 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 75092 | /* 211711 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75093 | /* 211715 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75094 | /* 211719 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75095 | /* 211723 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 75096 | /* 211727 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 75097 | /* 211734 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75098 | /* 211738 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75099 | /* 211740 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75100 | /* 211747 */ // (strict_fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75101 | /* 211747 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m64), |
| 75102 | /* 211750 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75103 | /* 211752 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75104 | /* 211754 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75105 | /* 211758 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75106 | /* 211761 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75107 | /* 211766 */ GIR_RootConstrainSelectedInstOperands, |
| 75108 | /* 211767 */ // GIR_Coverage, 926, |
| 75109 | /* 211767 */ GIR_EraseRootFromParent_Done, |
| 75110 | /* 211768 */ // Label 4857: @211768 |
| 75111 | /* 211768 */ GIM_Try, /*On fail goto*//*Label 4858*/ GIMT_Encode4(211833), // Rule ID 912 // |
| 75112 | /* 211773 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 75113 | /* 211776 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75114 | /* 211780 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75115 | /* 211784 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75116 | /* 211788 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75117 | /* 211792 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75118 | /* 211795 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75119 | /* 211799 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75120 | /* 211803 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75121 | /* 211805 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75122 | /* 211812 */ // (strict_fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADD_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75123 | /* 211812 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m), |
| 75124 | /* 211815 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75125 | /* 211817 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75126 | /* 211819 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75127 | /* 211823 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75128 | /* 211826 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75129 | /* 211831 */ GIR_RootConstrainSelectedInstOperands, |
| 75130 | /* 211832 */ // GIR_Coverage, 912, |
| 75131 | /* 211832 */ GIR_EraseRootFromParent_Done, |
| 75132 | /* 211833 */ // Label 4858: @211833 |
| 75133 | /* 211833 */ GIM_Try, /*On fail goto*//*Label 4859*/ GIMT_Encode4(211905), // Rule ID 914 // |
| 75134 | /* 211838 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 75135 | /* 211841 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75136 | /* 211845 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75137 | /* 211849 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75138 | /* 211853 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75139 | /* 211857 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75140 | /* 211860 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75141 | /* 211864 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 75142 | /* 211871 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75143 | /* 211875 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75144 | /* 211877 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75145 | /* 211884 */ // (strict_fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (ADD_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75146 | /* 211884 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m32), |
| 75147 | /* 211887 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75148 | /* 211889 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75149 | /* 211891 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75150 | /* 211895 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75151 | /* 211898 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75152 | /* 211903 */ GIR_RootConstrainSelectedInstOperands, |
| 75153 | /* 211904 */ // GIR_Coverage, 914, |
| 75154 | /* 211904 */ GIR_EraseRootFromParent_Done, |
| 75155 | /* 211905 */ // Label 4859: @211905 |
| 75156 | /* 211905 */ GIM_Try, /*On fail goto*//*Label 4860*/ GIMT_Encode4(211967), // Rule ID 2164 // |
| 75157 | /* 211910 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 75158 | /* 211913 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75159 | /* 211917 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75160 | /* 211921 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75161 | /* 211925 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75162 | /* 211929 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75163 | /* 211932 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75164 | /* 211936 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75165 | /* 211940 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75166 | /* 211942 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75167 | /* 211949 */ // (strict_fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75168 | /* 211949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 75169 | /* 211952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75170 | /* 211954 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75171 | /* 211956 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75172 | /* 211960 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75173 | /* 211965 */ GIR_RootConstrainSelectedInstOperands, |
| 75174 | /* 211966 */ // GIR_Coverage, 2164, |
| 75175 | /* 211966 */ GIR_EraseRootFromParent_Done, |
| 75176 | /* 211967 */ // Label 4860: @211967 |
| 75177 | /* 211967 */ GIM_Try, /*On fail goto*//*Label 4861*/ GIMT_Encode4(212029), // Rule ID 2172 // |
| 75178 | /* 211972 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 75179 | /* 211975 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75180 | /* 211979 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75181 | /* 211983 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75182 | /* 211987 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75183 | /* 211991 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75184 | /* 211994 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75185 | /* 211998 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75186 | /* 212002 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75187 | /* 212004 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75188 | /* 212011 */ // (strict_fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75189 | /* 212011 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 75190 | /* 212014 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75191 | /* 212016 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75192 | /* 212018 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75193 | /* 212022 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75194 | /* 212027 */ GIR_RootConstrainSelectedInstOperands, |
| 75195 | /* 212028 */ // GIR_Coverage, 2172, |
| 75196 | /* 212028 */ GIR_EraseRootFromParent_Done, |
| 75197 | /* 212029 */ // Label 4861: @212029 |
| 75198 | /* 212029 */ GIM_Try, /*On fail goto*//*Label 4862*/ GIMT_Encode4(212091), // Rule ID 5935 // |
| 75199 | /* 212034 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 75200 | /* 212037 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 75201 | /* 212041 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 75202 | /* 212045 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75203 | /* 212049 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75204 | /* 212053 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75205 | /* 212056 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75206 | /* 212060 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75207 | /* 212064 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75208 | /* 212066 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75209 | /* 212073 */ // (strict_fadd:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75210 | /* 212073 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 75211 | /* 212076 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75212 | /* 212078 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75213 | /* 212080 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75214 | /* 212084 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75215 | /* 212089 */ GIR_RootConstrainSelectedInstOperands, |
| 75216 | /* 212090 */ // GIR_Coverage, 5935, |
| 75217 | /* 212090 */ GIR_EraseRootFromParent_Done, |
| 75218 | /* 212091 */ // Label 4862: @212091 |
| 75219 | /* 212091 */ GIM_Try, /*On fail goto*//*Label 4863*/ GIMT_Encode4(212128), // Rule ID 888 // |
| 75220 | /* 212096 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 75221 | /* 212099 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75222 | /* 212103 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75223 | /* 212107 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 75224 | /* 212111 */ // (strict_fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (ADD_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 75225 | /* 212111 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64), |
| 75226 | /* 212116 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 75227 | /* 212122 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 75228 | /* 212126 */ GIR_RootConstrainSelectedInstOperands, |
| 75229 | /* 212127 */ // GIR_Coverage, 888, |
| 75230 | /* 212127 */ GIR_Done, |
| 75231 | /* 212128 */ // Label 4863: @212128 |
| 75232 | /* 212128 */ GIM_Try, /*On fail goto*//*Label 4864*/ GIMT_Encode4(212159), // Rule ID 2162 // |
| 75233 | /* 212133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 75234 | /* 212136 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75235 | /* 212140 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75236 | /* 212144 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75237 | /* 212148 */ // (strict_fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VADDSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 75238 | /* 212148 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSDrr), |
| 75239 | /* 212153 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75240 | /* 212157 */ GIR_RootConstrainSelectedInstOperands, |
| 75241 | /* 212158 */ // GIR_Coverage, 2162, |
| 75242 | /* 212158 */ GIR_Done, |
| 75243 | /* 212159 */ // Label 4864: @212159 |
| 75244 | /* 212159 */ GIM_Try, /*On fail goto*//*Label 4865*/ GIMT_Encode4(212190), // Rule ID 2170 // |
| 75245 | /* 212164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 75246 | /* 212167 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75247 | /* 212171 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75248 | /* 212175 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 75249 | /* 212179 */ // (strict_fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (ADDSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 75250 | /* 212179 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDSDrr), |
| 75251 | /* 212184 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75252 | /* 212188 */ GIR_RootConstrainSelectedInstOperands, |
| 75253 | /* 212189 */ // GIR_Coverage, 2170, |
| 75254 | /* 212189 */ GIR_Done, |
| 75255 | /* 212190 */ // Label 4865: @212190 |
| 75256 | /* 212190 */ GIM_Try, /*On fail goto*//*Label 4866*/ GIMT_Encode4(212221), // Rule ID 5933 // |
| 75257 | /* 212195 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 75258 | /* 212198 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 75259 | /* 212202 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 75260 | /* 212206 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 75261 | /* 212210 */ // (strict_fadd:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VADDSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 75262 | /* 212210 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSDZrr), |
| 75263 | /* 212215 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75264 | /* 212219 */ GIR_RootConstrainSelectedInstOperands, |
| 75265 | /* 212220 */ // GIR_Coverage, 5933, |
| 75266 | /* 212220 */ GIR_Done, |
| 75267 | /* 212221 */ // Label 4866: @212221 |
| 75268 | /* 212221 */ GIM_Reject, |
| 75269 | /* 212222 */ // Label 4848: @212222 |
| 75270 | /* 212222 */ GIM_Reject, |
| 75271 | /* 212223 */ // Label 4816: @212223 |
| 75272 | /* 212223 */ GIM_Try, /*On fail goto*//*Label 4867*/ GIMT_Encode4(212788), |
| 75273 | /* 212228 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 75274 | /* 212231 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 75275 | /* 212234 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75276 | /* 212238 */ GIM_Try, /*On fail goto*//*Label 4868*/ GIMT_Encode4(212299), // Rule ID 23254 // |
| 75277 | /* 212243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 75278 | /* 212246 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75279 | /* 212250 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 75280 | /* 212254 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 75281 | /* 212261 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75282 | /* 212265 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75283 | /* 212269 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75284 | /* 212271 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75285 | /* 212278 */ // (strict_fadd:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (ADD_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75286 | /* 212278 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m80), |
| 75287 | /* 212281 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75288 | /* 212283 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75289 | /* 212285 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75290 | /* 212289 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75291 | /* 212292 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75292 | /* 212297 */ GIR_RootConstrainSelectedInstOperands, |
| 75293 | /* 212298 */ // GIR_Coverage, 23254, |
| 75294 | /* 212298 */ GIR_EraseRootFromParent_Done, |
| 75295 | /* 212299 */ // Label 4868: @212299 |
| 75296 | /* 212299 */ GIM_Try, /*On fail goto*//*Label 4869*/ GIMT_Encode4(212360), // Rule ID 23256 // |
| 75297 | /* 212304 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 75298 | /* 212307 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75299 | /* 212311 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 75300 | /* 212315 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 75301 | /* 212322 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75302 | /* 212326 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75303 | /* 212330 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75304 | /* 212332 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75305 | /* 212339 */ // (strict_fadd:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (ADD_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75306 | /* 212339 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m80), |
| 75307 | /* 212342 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75308 | /* 212344 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75309 | /* 212346 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75310 | /* 212350 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75311 | /* 212353 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75312 | /* 212358 */ GIR_RootConstrainSelectedInstOperands, |
| 75313 | /* 212359 */ // GIR_Coverage, 23256, |
| 75314 | /* 212359 */ GIR_EraseRootFromParent_Done, |
| 75315 | /* 212360 */ // Label 4869: @212360 |
| 75316 | /* 212360 */ GIM_Try, /*On fail goto*//*Label 4870*/ GIMT_Encode4(212428), // Rule ID 23242 // |
| 75317 | /* 212365 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 75318 | /* 212368 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75319 | /* 212372 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75320 | /* 212376 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75321 | /* 212379 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75322 | /* 212383 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 75323 | /* 212390 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75324 | /* 212394 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75325 | /* 212398 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75326 | /* 212400 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75327 | /* 212407 */ // (strict_fadd:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP80:{ *:[f80] }:$src1) => (ADD_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75328 | /* 212407 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m32), |
| 75329 | /* 212410 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75330 | /* 212412 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75331 | /* 212414 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75332 | /* 212418 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75333 | /* 212421 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75334 | /* 212426 */ GIR_RootConstrainSelectedInstOperands, |
| 75335 | /* 212427 */ // GIR_Coverage, 23242, |
| 75336 | /* 212427 */ GIR_EraseRootFromParent_Done, |
| 75337 | /* 212428 */ // Label 4870: @212428 |
| 75338 | /* 212428 */ GIM_Try, /*On fail goto*//*Label 4871*/ GIMT_Encode4(212496), // Rule ID 23244 // |
| 75339 | /* 212433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 75340 | /* 212436 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75341 | /* 212440 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75342 | /* 212444 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75343 | /* 212447 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75344 | /* 212451 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 75345 | /* 212458 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75346 | /* 212462 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75347 | /* 212466 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75348 | /* 212468 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75349 | /* 212475 */ // (strict_fadd:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>, RFP80:{ *:[f80] }:$src1) => (ADD_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75350 | /* 212475 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m64), |
| 75351 | /* 212478 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75352 | /* 212480 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75353 | /* 212482 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75354 | /* 212486 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75355 | /* 212489 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75356 | /* 212494 */ GIR_RootConstrainSelectedInstOperands, |
| 75357 | /* 212495 */ // GIR_Coverage, 23244, |
| 75358 | /* 212495 */ GIR_EraseRootFromParent_Done, |
| 75359 | /* 212496 */ // Label 4871: @212496 |
| 75360 | /* 212496 */ GIM_Try, /*On fail goto*//*Label 4872*/ GIMT_Encode4(212557), // Rule ID 928 // |
| 75361 | /* 212501 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 75362 | /* 212504 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75363 | /* 212508 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75364 | /* 212512 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 75365 | /* 212516 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 75366 | /* 212523 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75367 | /* 212527 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75368 | /* 212529 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75369 | /* 212536 */ // (strict_fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75370 | /* 212536 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m80), |
| 75371 | /* 212539 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75372 | /* 212541 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75373 | /* 212543 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75374 | /* 212547 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75375 | /* 212550 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75376 | /* 212555 */ GIR_RootConstrainSelectedInstOperands, |
| 75377 | /* 212556 */ // GIR_Coverage, 928, |
| 75378 | /* 212556 */ GIR_EraseRootFromParent_Done, |
| 75379 | /* 212557 */ // Label 4872: @212557 |
| 75380 | /* 212557 */ GIM_Try, /*On fail goto*//*Label 4873*/ GIMT_Encode4(212618), // Rule ID 930 // |
| 75381 | /* 212562 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 75382 | /* 212565 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75383 | /* 212569 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75384 | /* 212573 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 75385 | /* 212577 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 75386 | /* 212584 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75387 | /* 212588 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75388 | /* 212590 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75389 | /* 212597 */ // (strict_fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75390 | /* 212597 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m80), |
| 75391 | /* 212600 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75392 | /* 212602 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75393 | /* 212604 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75394 | /* 212608 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75395 | /* 212611 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75396 | /* 212616 */ GIR_RootConstrainSelectedInstOperands, |
| 75397 | /* 212617 */ // GIR_Coverage, 930, |
| 75398 | /* 212617 */ GIR_EraseRootFromParent_Done, |
| 75399 | /* 212618 */ // Label 4873: @212618 |
| 75400 | /* 212618 */ GIM_Try, /*On fail goto*//*Label 4874*/ GIMT_Encode4(212686), // Rule ID 916 // |
| 75401 | /* 212623 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 75402 | /* 212626 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75403 | /* 212630 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75404 | /* 212634 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75405 | /* 212638 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75406 | /* 212641 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75407 | /* 212645 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 75408 | /* 212652 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75409 | /* 212656 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75410 | /* 212658 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75411 | /* 212665 */ // (strict_fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (ADD_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75412 | /* 212665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m32), |
| 75413 | /* 212668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75414 | /* 212670 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75415 | /* 212672 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75416 | /* 212676 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75417 | /* 212679 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75418 | /* 212684 */ GIR_RootConstrainSelectedInstOperands, |
| 75419 | /* 212685 */ // GIR_Coverage, 916, |
| 75420 | /* 212685 */ GIR_EraseRootFromParent_Done, |
| 75421 | /* 212686 */ // Label 4874: @212686 |
| 75422 | /* 212686 */ GIM_Try, /*On fail goto*//*Label 4875*/ GIMT_Encode4(212754), // Rule ID 918 // |
| 75423 | /* 212691 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 75424 | /* 212694 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75425 | /* 212698 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75426 | /* 212702 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75427 | /* 212706 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75428 | /* 212709 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75429 | /* 212713 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 75430 | /* 212720 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75431 | /* 212724 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75432 | /* 212726 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75433 | /* 212733 */ // (strict_fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>) => (ADD_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75434 | /* 212733 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m64), |
| 75435 | /* 212736 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75436 | /* 212738 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75437 | /* 212740 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75438 | /* 212744 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75439 | /* 212747 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75440 | /* 212752 */ GIR_RootConstrainSelectedInstOperands, |
| 75441 | /* 212753 */ // GIR_Coverage, 918, |
| 75442 | /* 212753 */ GIR_EraseRootFromParent_Done, |
| 75443 | /* 212754 */ // Label 4875: @212754 |
| 75444 | /* 212754 */ GIM_Try, /*On fail goto*//*Label 4876*/ GIMT_Encode4(212787), // Rule ID 890 // |
| 75445 | /* 212759 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 75446 | /* 212762 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75447 | /* 212766 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 75448 | /* 212770 */ // (strict_fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (ADD_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 75449 | /* 212770 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80), |
| 75450 | /* 212775 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 75451 | /* 212781 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 75452 | /* 212785 */ GIR_RootConstrainSelectedInstOperands, |
| 75453 | /* 212786 */ // GIR_Coverage, 890, |
| 75454 | /* 212786 */ GIR_Done, |
| 75455 | /* 212787 */ // Label 4876: @212787 |
| 75456 | /* 212787 */ GIM_Reject, |
| 75457 | /* 212788 */ // Label 4867: @212788 |
| 75458 | /* 212788 */ GIM_Reject, |
| 75459 | /* 212789 */ // Label 4817: @212789 |
| 75460 | /* 212789 */ GIM_Try, /*On fail goto*//*Label 4877*/ GIMT_Encode4(213142), |
| 75461 | /* 212794 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 75462 | /* 212797 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 75463 | /* 212800 */ GIM_Try, /*On fail goto*//*Label 4878*/ GIMT_Encode4(212862), // Rule ID 23371 // |
| 75464 | /* 212805 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75465 | /* 212808 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75466 | /* 212812 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75467 | /* 212816 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75468 | /* 212820 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75469 | /* 212823 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75470 | /* 212827 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75471 | /* 212831 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75472 | /* 212835 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75473 | /* 212837 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75474 | /* 212844 */ // (strict_fadd:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1) => (VADDPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75475 | /* 212844 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDrm), |
| 75476 | /* 212847 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75477 | /* 212849 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75478 | /* 212851 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75479 | /* 212855 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75480 | /* 212860 */ GIR_RootConstrainSelectedInstOperands, |
| 75481 | /* 212861 */ // GIR_Coverage, 23371, |
| 75482 | /* 212861 */ GIR_EraseRootFromParent_Done, |
| 75483 | /* 212862 */ // Label 4878: @212862 |
| 75484 | /* 212862 */ GIM_Try, /*On fail goto*//*Label 4879*/ GIMT_Encode4(212924), // Rule ID 24295 // |
| 75485 | /* 212867 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75486 | /* 212870 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75487 | /* 212874 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75488 | /* 212878 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75489 | /* 212882 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75490 | /* 212885 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75491 | /* 212889 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75492 | /* 212893 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75493 | /* 212897 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75494 | /* 212899 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75495 | /* 212906 */ // (strict_fadd:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2f64] }:$src1) => (VADDPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75496 | /* 212906 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rm), |
| 75497 | /* 212909 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75498 | /* 212911 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75499 | /* 212913 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75500 | /* 212917 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75501 | /* 212922 */ GIR_RootConstrainSelectedInstOperands, |
| 75502 | /* 212923 */ // GIR_Coverage, 24295, |
| 75503 | /* 212923 */ GIR_EraseRootFromParent_Done, |
| 75504 | /* 212924 */ // Label 4879: @212924 |
| 75505 | /* 212924 */ GIM_Try, /*On fail goto*//*Label 4880*/ GIMT_Encode4(212986), // Rule ID 2140 // |
| 75506 | /* 212929 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75507 | /* 212932 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75508 | /* 212936 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75509 | /* 212940 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75510 | /* 212944 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75511 | /* 212948 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75512 | /* 212951 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75513 | /* 212955 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75514 | /* 212959 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75515 | /* 212961 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75516 | /* 212968 */ // (strict_fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75517 | /* 212968 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDrm), |
| 75518 | /* 212971 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75519 | /* 212973 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75520 | /* 212975 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75521 | /* 212979 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75522 | /* 212984 */ GIR_RootConstrainSelectedInstOperands, |
| 75523 | /* 212985 */ // GIR_Coverage, 2140, |
| 75524 | /* 212985 */ GIR_EraseRootFromParent_Done, |
| 75525 | /* 212986 */ // Label 4880: @212986 |
| 75526 | /* 212986 */ GIM_Try, /*On fail goto*//*Label 4881*/ GIMT_Encode4(213048), // Rule ID 6308 // |
| 75527 | /* 212991 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75528 | /* 212994 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75529 | /* 212998 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75530 | /* 213002 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75531 | /* 213006 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75532 | /* 213010 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75533 | /* 213013 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75534 | /* 213017 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75535 | /* 213021 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75536 | /* 213023 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75537 | /* 213030 */ // (strict_fadd:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75538 | /* 213030 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rm), |
| 75539 | /* 213033 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75540 | /* 213035 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75541 | /* 213037 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75542 | /* 213041 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75543 | /* 213046 */ GIR_RootConstrainSelectedInstOperands, |
| 75544 | /* 213047 */ // GIR_Coverage, 6308, |
| 75545 | /* 213047 */ GIR_EraseRootFromParent_Done, |
| 75546 | /* 213048 */ // Label 4881: @213048 |
| 75547 | /* 213048 */ GIM_Try, /*On fail goto*//*Label 4882*/ GIMT_Encode4(213079), // Rule ID 2138 // |
| 75548 | /* 213053 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75549 | /* 213056 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75550 | /* 213060 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75551 | /* 213064 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75552 | /* 213068 */ // (strict_fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VADDPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 75553 | /* 213068 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDrr), |
| 75554 | /* 213073 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75555 | /* 213077 */ GIR_RootConstrainSelectedInstOperands, |
| 75556 | /* 213078 */ // GIR_Coverage, 2138, |
| 75557 | /* 213078 */ GIR_Done, |
| 75558 | /* 213079 */ // Label 4882: @213079 |
| 75559 | /* 213079 */ GIM_Try, /*On fail goto*//*Label 4883*/ GIMT_Encode4(213110), // Rule ID 2154 // |
| 75560 | /* 213084 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 75561 | /* 213087 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75562 | /* 213091 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75563 | /* 213095 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75564 | /* 213099 */ // (strict_fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (ADDPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 75565 | /* 213099 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDPDrr), |
| 75566 | /* 213104 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75567 | /* 213108 */ GIR_RootConstrainSelectedInstOperands, |
| 75568 | /* 213109 */ // GIR_Coverage, 2154, |
| 75569 | /* 213109 */ GIR_Done, |
| 75570 | /* 213110 */ // Label 4883: @213110 |
| 75571 | /* 213110 */ GIM_Try, /*On fail goto*//*Label 4884*/ GIMT_Encode4(213141), // Rule ID 6304 // |
| 75572 | /* 213115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75573 | /* 213118 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75574 | /* 213122 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75575 | /* 213126 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75576 | /* 213130 */ // (strict_fadd:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VADDPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 75577 | /* 213130 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rr), |
| 75578 | /* 213135 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75579 | /* 213139 */ GIR_RootConstrainSelectedInstOperands, |
| 75580 | /* 213140 */ // GIR_Coverage, 6304, |
| 75581 | /* 213140 */ GIR_Done, |
| 75582 | /* 213141 */ // Label 4884: @213141 |
| 75583 | /* 213141 */ GIM_Reject, |
| 75584 | /* 213142 */ // Label 4877: @213142 |
| 75585 | /* 213142 */ GIM_Reject, |
| 75586 | /* 213143 */ // Label 4818: @213143 |
| 75587 | /* 213143 */ GIM_Try, /*On fail goto*//*Label 4885*/ GIMT_Encode4(213496), |
| 75588 | /* 213148 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 75589 | /* 213151 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 75590 | /* 213154 */ GIM_Try, /*On fail goto*//*Label 4886*/ GIMT_Encode4(213216), // Rule ID 23369 // |
| 75591 | /* 213159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75592 | /* 213162 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75593 | /* 213166 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75594 | /* 213170 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75595 | /* 213174 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75596 | /* 213177 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75597 | /* 213181 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75598 | /* 213185 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75599 | /* 213189 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75600 | /* 213191 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75601 | /* 213198 */ // (strict_fadd:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1) => (VADDPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75602 | /* 213198 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSrm), |
| 75603 | /* 213201 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75604 | /* 213203 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75605 | /* 213205 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75606 | /* 213209 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75607 | /* 213214 */ GIR_RootConstrainSelectedInstOperands, |
| 75608 | /* 213215 */ // GIR_Coverage, 23369, |
| 75609 | /* 213215 */ GIR_EraseRootFromParent_Done, |
| 75610 | /* 213216 */ // Label 4886: @213216 |
| 75611 | /* 213216 */ GIM_Try, /*On fail goto*//*Label 4887*/ GIMT_Encode4(213278), // Rule ID 24279 // |
| 75612 | /* 213221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75613 | /* 213224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75614 | /* 213228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75615 | /* 213232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75616 | /* 213236 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75617 | /* 213239 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75618 | /* 213243 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75619 | /* 213247 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75620 | /* 213251 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75621 | /* 213253 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75622 | /* 213260 */ // (strict_fadd:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4f32] }:$src1) => (VADDPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75623 | /* 213260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rm), |
| 75624 | /* 213263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75625 | /* 213265 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75626 | /* 213267 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75627 | /* 213271 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75628 | /* 213276 */ GIR_RootConstrainSelectedInstOperands, |
| 75629 | /* 213277 */ // GIR_Coverage, 24279, |
| 75630 | /* 213277 */ GIR_EraseRootFromParent_Done, |
| 75631 | /* 213278 */ // Label 4887: @213278 |
| 75632 | /* 213278 */ GIM_Try, /*On fail goto*//*Label 4888*/ GIMT_Encode4(213340), // Rule ID 2136 // |
| 75633 | /* 213283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75634 | /* 213286 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75635 | /* 213290 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75636 | /* 213294 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75637 | /* 213298 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75638 | /* 213302 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75639 | /* 213305 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75640 | /* 213309 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75641 | /* 213313 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75642 | /* 213315 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75643 | /* 213322 */ // (strict_fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75644 | /* 213322 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSrm), |
| 75645 | /* 213325 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75646 | /* 213327 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75647 | /* 213329 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75648 | /* 213333 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75649 | /* 213338 */ GIR_RootConstrainSelectedInstOperands, |
| 75650 | /* 213339 */ // GIR_Coverage, 2136, |
| 75651 | /* 213339 */ GIR_EraseRootFromParent_Done, |
| 75652 | /* 213340 */ // Label 4888: @213340 |
| 75653 | /* 213340 */ GIM_Try, /*On fail goto*//*Label 4889*/ GIMT_Encode4(213402), // Rule ID 6284 // |
| 75654 | /* 213345 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75655 | /* 213348 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75656 | /* 213352 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75657 | /* 213356 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75658 | /* 213360 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75659 | /* 213364 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75660 | /* 213367 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75661 | /* 213371 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75662 | /* 213375 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75663 | /* 213377 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75664 | /* 213384 */ // (strict_fadd:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75665 | /* 213384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rm), |
| 75666 | /* 213387 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75667 | /* 213389 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75668 | /* 213391 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75669 | /* 213395 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75670 | /* 213400 */ GIR_RootConstrainSelectedInstOperands, |
| 75671 | /* 213401 */ // GIR_Coverage, 6284, |
| 75672 | /* 213401 */ GIR_EraseRootFromParent_Done, |
| 75673 | /* 213402 */ // Label 4889: @213402 |
| 75674 | /* 213402 */ GIM_Try, /*On fail goto*//*Label 4890*/ GIMT_Encode4(213433), // Rule ID 2134 // |
| 75675 | /* 213407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75676 | /* 213410 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75677 | /* 213414 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75678 | /* 213418 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75679 | /* 213422 */ // (strict_fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VADDPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 75680 | /* 213422 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSrr), |
| 75681 | /* 213427 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75682 | /* 213431 */ GIR_RootConstrainSelectedInstOperands, |
| 75683 | /* 213432 */ // GIR_Coverage, 2134, |
| 75684 | /* 213432 */ GIR_Done, |
| 75685 | /* 213433 */ // Label 4890: @213433 |
| 75686 | /* 213433 */ GIM_Try, /*On fail goto*//*Label 4891*/ GIMT_Encode4(213464), // Rule ID 2150 // |
| 75687 | /* 213438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 75688 | /* 213441 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75689 | /* 213445 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75690 | /* 213449 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75691 | /* 213453 */ // (strict_fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (ADDPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 75692 | /* 213453 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDPSrr), |
| 75693 | /* 213458 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75694 | /* 213462 */ GIR_RootConstrainSelectedInstOperands, |
| 75695 | /* 213463 */ // GIR_Coverage, 2150, |
| 75696 | /* 213463 */ GIR_Done, |
| 75697 | /* 213464 */ // Label 4891: @213464 |
| 75698 | /* 213464 */ GIM_Try, /*On fail goto*//*Label 4892*/ GIMT_Encode4(213495), // Rule ID 6280 // |
| 75699 | /* 213469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75700 | /* 213472 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75701 | /* 213476 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75702 | /* 213480 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75703 | /* 213484 */ // (strict_fadd:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VADDPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 75704 | /* 213484 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rr), |
| 75705 | /* 213489 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75706 | /* 213493 */ GIR_RootConstrainSelectedInstOperands, |
| 75707 | /* 213494 */ // GIR_Coverage, 6280, |
| 75708 | /* 213494 */ GIR_Done, |
| 75709 | /* 213495 */ // Label 4892: @213495 |
| 75710 | /* 213495 */ GIM_Reject, |
| 75711 | /* 213496 */ // Label 4885: @213496 |
| 75712 | /* 213496 */ GIM_Reject, |
| 75713 | /* 213497 */ // Label 4819: @213497 |
| 75714 | /* 213497 */ GIM_Try, /*On fail goto*//*Label 4893*/ GIMT_Encode4(213819), |
| 75715 | /* 213502 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 75716 | /* 213505 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 75717 | /* 213508 */ GIM_Try, /*On fail goto*//*Label 4894*/ GIMT_Encode4(213570), // Rule ID 23375 // |
| 75718 | /* 213513 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75719 | /* 213516 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75720 | /* 213520 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75721 | /* 213524 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75722 | /* 213528 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75723 | /* 213531 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75724 | /* 213535 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75725 | /* 213539 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75726 | /* 213543 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75727 | /* 213545 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75728 | /* 213552 */ // (strict_fadd:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1) => (VADDPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75729 | /* 213552 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDYrm), |
| 75730 | /* 213555 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75731 | /* 213557 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75732 | /* 213559 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75733 | /* 213563 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75734 | /* 213568 */ GIR_RootConstrainSelectedInstOperands, |
| 75735 | /* 213569 */ // GIR_Coverage, 23375, |
| 75736 | /* 213569 */ GIR_EraseRootFromParent_Done, |
| 75737 | /* 213570 */ // Label 4894: @213570 |
| 75738 | /* 213570 */ GIM_Try, /*On fail goto*//*Label 4895*/ GIMT_Encode4(213632), // Rule ID 24303 // |
| 75739 | /* 213575 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75740 | /* 213578 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75741 | /* 213582 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75742 | /* 213586 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75743 | /* 213590 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75744 | /* 213593 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75745 | /* 213597 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75746 | /* 213601 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75747 | /* 213605 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75748 | /* 213607 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75749 | /* 213614 */ // (strict_fadd:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4f64] }:$src1) => (VADDPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75750 | /* 213614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rm), |
| 75751 | /* 213617 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75752 | /* 213619 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75753 | /* 213621 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75754 | /* 213625 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75755 | /* 213630 */ GIR_RootConstrainSelectedInstOperands, |
| 75756 | /* 213631 */ // GIR_Coverage, 24303, |
| 75757 | /* 213631 */ GIR_EraseRootFromParent_Done, |
| 75758 | /* 213632 */ // Label 4895: @213632 |
| 75759 | /* 213632 */ GIM_Try, /*On fail goto*//*Label 4896*/ GIMT_Encode4(213694), // Rule ID 2148 // |
| 75760 | /* 213637 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75761 | /* 213640 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75762 | /* 213644 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75763 | /* 213648 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75764 | /* 213652 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75765 | /* 213656 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75766 | /* 213659 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75767 | /* 213663 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75768 | /* 213667 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75769 | /* 213669 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75770 | /* 213676 */ // (strict_fadd:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75771 | /* 213676 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDYrm), |
| 75772 | /* 213679 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75773 | /* 213681 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75774 | /* 213683 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75775 | /* 213687 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75776 | /* 213692 */ GIR_RootConstrainSelectedInstOperands, |
| 75777 | /* 213693 */ // GIR_Coverage, 2148, |
| 75778 | /* 213693 */ GIR_EraseRootFromParent_Done, |
| 75779 | /* 213694 */ // Label 4896: @213694 |
| 75780 | /* 213694 */ GIM_Try, /*On fail goto*//*Label 4897*/ GIMT_Encode4(213756), // Rule ID 6320 // |
| 75781 | /* 213699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75782 | /* 213702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75783 | /* 213706 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75784 | /* 213710 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75785 | /* 213714 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75786 | /* 213718 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75787 | /* 213721 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75788 | /* 213725 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75789 | /* 213729 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75790 | /* 213731 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75791 | /* 213738 */ // (strict_fadd:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75792 | /* 213738 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rm), |
| 75793 | /* 213741 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75794 | /* 213743 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75795 | /* 213745 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75796 | /* 213749 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75797 | /* 213754 */ GIR_RootConstrainSelectedInstOperands, |
| 75798 | /* 213755 */ // GIR_Coverage, 6320, |
| 75799 | /* 213755 */ GIR_EraseRootFromParent_Done, |
| 75800 | /* 213756 */ // Label 4897: @213756 |
| 75801 | /* 213756 */ GIM_Try, /*On fail goto*//*Label 4898*/ GIMT_Encode4(213787), // Rule ID 2146 // |
| 75802 | /* 213761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75803 | /* 213764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75804 | /* 213768 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75805 | /* 213772 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75806 | /* 213776 */ // (strict_fadd:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VADDPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 75807 | /* 213776 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDYrr), |
| 75808 | /* 213781 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75809 | /* 213785 */ GIR_RootConstrainSelectedInstOperands, |
| 75810 | /* 213786 */ // GIR_Coverage, 2146, |
| 75811 | /* 213786 */ GIR_Done, |
| 75812 | /* 213787 */ // Label 4898: @213787 |
| 75813 | /* 213787 */ GIM_Try, /*On fail goto*//*Label 4899*/ GIMT_Encode4(213818), // Rule ID 6316 // |
| 75814 | /* 213792 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75815 | /* 213795 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75816 | /* 213799 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75817 | /* 213803 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75818 | /* 213807 */ // (strict_fadd:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VADDPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 75819 | /* 213807 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rr), |
| 75820 | /* 213812 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75821 | /* 213816 */ GIR_RootConstrainSelectedInstOperands, |
| 75822 | /* 213817 */ // GIR_Coverage, 6316, |
| 75823 | /* 213817 */ GIR_Done, |
| 75824 | /* 213818 */ // Label 4899: @213818 |
| 75825 | /* 213818 */ GIM_Reject, |
| 75826 | /* 213819 */ // Label 4893: @213819 |
| 75827 | /* 213819 */ GIM_Reject, |
| 75828 | /* 213820 */ // Label 4820: @213820 |
| 75829 | /* 213820 */ GIM_Try, /*On fail goto*//*Label 4900*/ GIMT_Encode4(213979), |
| 75830 | /* 213825 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 75831 | /* 213828 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 75832 | /* 213831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75833 | /* 213835 */ GIM_Try, /*On fail goto*//*Label 4901*/ GIMT_Encode4(213893), // Rule ID 24319 // |
| 75834 | /* 213840 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 75835 | /* 213843 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75836 | /* 213847 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75837 | /* 213851 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75838 | /* 213854 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75839 | /* 213858 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75840 | /* 213862 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75841 | /* 213866 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75842 | /* 213868 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75843 | /* 213875 */ // (strict_fadd:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src1) => (VADDPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75844 | /* 213875 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rm), |
| 75845 | /* 213878 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75846 | /* 213880 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75847 | /* 213882 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75848 | /* 213886 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75849 | /* 213891 */ GIR_RootConstrainSelectedInstOperands, |
| 75850 | /* 213892 */ // GIR_Coverage, 24319, |
| 75851 | /* 213892 */ GIR_EraseRootFromParent_Done, |
| 75852 | /* 213893 */ // Label 4901: @213893 |
| 75853 | /* 213893 */ GIM_Try, /*On fail goto*//*Label 4902*/ GIMT_Encode4(213951), // Rule ID 6344 // |
| 75854 | /* 213898 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 75855 | /* 213901 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75856 | /* 213905 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75857 | /* 213909 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75858 | /* 213913 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75859 | /* 213916 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75860 | /* 213920 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75861 | /* 213924 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75862 | /* 213926 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75863 | /* 213933 */ // (strict_fadd:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75864 | /* 213933 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rm), |
| 75865 | /* 213936 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75866 | /* 213938 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75867 | /* 213940 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75868 | /* 213944 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75869 | /* 213949 */ GIR_RootConstrainSelectedInstOperands, |
| 75870 | /* 213950 */ // GIR_Coverage, 6344, |
| 75871 | /* 213950 */ GIR_EraseRootFromParent_Done, |
| 75872 | /* 213951 */ // Label 4902: @213951 |
| 75873 | /* 213951 */ GIM_Try, /*On fail goto*//*Label 4903*/ GIMT_Encode4(213978), // Rule ID 6340 // |
| 75874 | /* 213956 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 75875 | /* 213959 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75876 | /* 213963 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75877 | /* 213967 */ // (strict_fadd:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VADDPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 75878 | /* 213967 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rr), |
| 75879 | /* 213972 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75880 | /* 213976 */ GIR_RootConstrainSelectedInstOperands, |
| 75881 | /* 213977 */ // GIR_Coverage, 6340, |
| 75882 | /* 213977 */ GIR_Done, |
| 75883 | /* 213978 */ // Label 4903: @213978 |
| 75884 | /* 213978 */ GIM_Reject, |
| 75885 | /* 213979 */ // Label 4900: @213979 |
| 75886 | /* 213979 */ GIM_Reject, |
| 75887 | /* 213980 */ // Label 4821: @213980 |
| 75888 | /* 213980 */ GIM_Try, /*On fail goto*//*Label 4904*/ GIMT_Encode4(214302), |
| 75889 | /* 213985 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 75890 | /* 213988 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 75891 | /* 213991 */ GIM_Try, /*On fail goto*//*Label 4905*/ GIMT_Encode4(214053), // Rule ID 23373 // |
| 75892 | /* 213996 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75893 | /* 213999 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75894 | /* 214003 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75895 | /* 214007 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75896 | /* 214011 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75897 | /* 214014 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75898 | /* 214018 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75899 | /* 214022 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75900 | /* 214026 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75901 | /* 214028 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75902 | /* 214035 */ // (strict_fadd:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1) => (VADDPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75903 | /* 214035 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSYrm), |
| 75904 | /* 214038 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75905 | /* 214040 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75906 | /* 214042 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75907 | /* 214046 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75908 | /* 214051 */ GIR_RootConstrainSelectedInstOperands, |
| 75909 | /* 214052 */ // GIR_Coverage, 23373, |
| 75910 | /* 214052 */ GIR_EraseRootFromParent_Done, |
| 75911 | /* 214053 */ // Label 4905: @214053 |
| 75912 | /* 214053 */ GIM_Try, /*On fail goto*//*Label 4906*/ GIMT_Encode4(214115), // Rule ID 24287 // |
| 75913 | /* 214058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75914 | /* 214061 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75915 | /* 214065 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75916 | /* 214069 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75917 | /* 214073 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75918 | /* 214076 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75919 | /* 214080 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75920 | /* 214084 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75921 | /* 214088 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75922 | /* 214090 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75923 | /* 214097 */ // (strict_fadd:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8f32] }:$src1) => (VADDPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75924 | /* 214097 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rm), |
| 75925 | /* 214100 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75926 | /* 214102 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75927 | /* 214104 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75928 | /* 214108 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75929 | /* 214113 */ GIR_RootConstrainSelectedInstOperands, |
| 75930 | /* 214114 */ // GIR_Coverage, 24287, |
| 75931 | /* 214114 */ GIR_EraseRootFromParent_Done, |
| 75932 | /* 214115 */ // Label 4906: @214115 |
| 75933 | /* 214115 */ GIM_Try, /*On fail goto*//*Label 4907*/ GIMT_Encode4(214177), // Rule ID 2144 // |
| 75934 | /* 214120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75935 | /* 214123 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75936 | /* 214127 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75937 | /* 214131 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75938 | /* 214135 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75939 | /* 214139 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75940 | /* 214142 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75941 | /* 214146 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75942 | /* 214150 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75943 | /* 214152 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75944 | /* 214159 */ // (strict_fadd:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75945 | /* 214159 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSYrm), |
| 75946 | /* 214162 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75947 | /* 214164 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75948 | /* 214166 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75949 | /* 214170 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75950 | /* 214175 */ GIR_RootConstrainSelectedInstOperands, |
| 75951 | /* 214176 */ // GIR_Coverage, 2144, |
| 75952 | /* 214176 */ GIR_EraseRootFromParent_Done, |
| 75953 | /* 214177 */ // Label 4907: @214177 |
| 75954 | /* 214177 */ GIM_Try, /*On fail goto*//*Label 4908*/ GIMT_Encode4(214239), // Rule ID 6296 // |
| 75955 | /* 214182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75956 | /* 214185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75957 | /* 214189 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75958 | /* 214193 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75959 | /* 214197 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75960 | /* 214201 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75961 | /* 214204 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75962 | /* 214208 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75963 | /* 214212 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75964 | /* 214214 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75965 | /* 214221 */ // (strict_fadd:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75966 | /* 214221 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rm), |
| 75967 | /* 214224 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75968 | /* 214226 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75969 | /* 214228 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75970 | /* 214232 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75971 | /* 214237 */ GIR_RootConstrainSelectedInstOperands, |
| 75972 | /* 214238 */ // GIR_Coverage, 6296, |
| 75973 | /* 214238 */ GIR_EraseRootFromParent_Done, |
| 75974 | /* 214239 */ // Label 4908: @214239 |
| 75975 | /* 214239 */ GIM_Try, /*On fail goto*//*Label 4909*/ GIMT_Encode4(214270), // Rule ID 2142 // |
| 75976 | /* 214244 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75977 | /* 214247 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75978 | /* 214251 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75979 | /* 214255 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75980 | /* 214259 */ // (strict_fadd:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VADDPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 75981 | /* 214259 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSYrr), |
| 75982 | /* 214264 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75983 | /* 214268 */ GIR_RootConstrainSelectedInstOperands, |
| 75984 | /* 214269 */ // GIR_Coverage, 2142, |
| 75985 | /* 214269 */ GIR_Done, |
| 75986 | /* 214270 */ // Label 4909: @214270 |
| 75987 | /* 214270 */ GIM_Try, /*On fail goto*//*Label 4910*/ GIMT_Encode4(214301), // Rule ID 6292 // |
| 75988 | /* 214275 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75989 | /* 214278 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75990 | /* 214282 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75991 | /* 214286 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75992 | /* 214290 */ // (strict_fadd:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VADDPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 75993 | /* 214290 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rr), |
| 75994 | /* 214295 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75995 | /* 214299 */ GIR_RootConstrainSelectedInstOperands, |
| 75996 | /* 214300 */ // GIR_Coverage, 6292, |
| 75997 | /* 214300 */ GIR_Done, |
| 75998 | /* 214301 */ // Label 4910: @214301 |
| 75999 | /* 214301 */ GIM_Reject, |
| 76000 | /* 214302 */ // Label 4904: @214302 |
| 76001 | /* 214302 */ GIM_Reject, |
| 76002 | /* 214303 */ // Label 4822: @214303 |
| 76003 | /* 214303 */ GIM_Try, /*On fail goto*//*Label 4911*/ GIMT_Encode4(214462), |
| 76004 | /* 214308 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 76005 | /* 214311 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 76006 | /* 214314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76007 | /* 214318 */ GIM_Try, /*On fail goto*//*Label 4912*/ GIMT_Encode4(214376), // Rule ID 24271 // |
| 76008 | /* 214323 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76009 | /* 214326 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76010 | /* 214330 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76011 | /* 214334 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76012 | /* 214337 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76013 | /* 214341 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76014 | /* 214345 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76015 | /* 214349 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76016 | /* 214351 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76017 | /* 214358 */ // (strict_fadd:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8f64] }:$src1) => (VADDPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76018 | /* 214358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZrm), |
| 76019 | /* 214361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76020 | /* 214363 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76021 | /* 214365 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76022 | /* 214369 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76023 | /* 214374 */ GIR_RootConstrainSelectedInstOperands, |
| 76024 | /* 214375 */ // GIR_Coverage, 24271, |
| 76025 | /* 214375 */ GIR_EraseRootFromParent_Done, |
| 76026 | /* 214376 */ // Label 4912: @214376 |
| 76027 | /* 214376 */ GIM_Try, /*On fail goto*//*Label 4913*/ GIMT_Encode4(214434), // Rule ID 6272 // |
| 76028 | /* 214381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76029 | /* 214384 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76030 | /* 214388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76031 | /* 214392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76032 | /* 214396 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76033 | /* 214399 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76034 | /* 214403 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76035 | /* 214407 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76036 | /* 214409 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76037 | /* 214416 */ // (strict_fadd:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76038 | /* 214416 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZrm), |
| 76039 | /* 214419 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76040 | /* 214421 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76041 | /* 214423 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76042 | /* 214427 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76043 | /* 214432 */ GIR_RootConstrainSelectedInstOperands, |
| 76044 | /* 214433 */ // GIR_Coverage, 6272, |
| 76045 | /* 214433 */ GIR_EraseRootFromParent_Done, |
| 76046 | /* 214434 */ // Label 4913: @214434 |
| 76047 | /* 214434 */ GIM_Try, /*On fail goto*//*Label 4914*/ GIMT_Encode4(214461), // Rule ID 6268 // |
| 76048 | /* 214439 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76049 | /* 214442 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76050 | /* 214446 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76051 | /* 214450 */ // (strict_fadd:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VADDPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 76052 | /* 214450 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZrr), |
| 76053 | /* 214455 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76054 | /* 214459 */ GIR_RootConstrainSelectedInstOperands, |
| 76055 | /* 214460 */ // GIR_Coverage, 6268, |
| 76056 | /* 214460 */ GIR_Done, |
| 76057 | /* 214461 */ // Label 4914: @214461 |
| 76058 | /* 214461 */ GIM_Reject, |
| 76059 | /* 214462 */ // Label 4911: @214462 |
| 76060 | /* 214462 */ GIM_Reject, |
| 76061 | /* 214463 */ // Label 4823: @214463 |
| 76062 | /* 214463 */ GIM_Try, /*On fail goto*//*Label 4915*/ GIMT_Encode4(214622), |
| 76063 | /* 214468 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 76064 | /* 214471 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 76065 | /* 214474 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76066 | /* 214478 */ GIM_Try, /*On fail goto*//*Label 4916*/ GIMT_Encode4(214536), // Rule ID 24327 // |
| 76067 | /* 214483 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 76068 | /* 214486 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76069 | /* 214490 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76070 | /* 214494 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76071 | /* 214497 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76072 | /* 214501 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76073 | /* 214505 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76074 | /* 214509 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76075 | /* 214511 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76076 | /* 214518 */ // (strict_fadd:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src1) => (VADDPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76077 | /* 214518 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rm), |
| 76078 | /* 214521 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76079 | /* 214523 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76080 | /* 214525 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76081 | /* 214529 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76082 | /* 214534 */ GIR_RootConstrainSelectedInstOperands, |
| 76083 | /* 214535 */ // GIR_Coverage, 24327, |
| 76084 | /* 214535 */ GIR_EraseRootFromParent_Done, |
| 76085 | /* 214536 */ // Label 4916: @214536 |
| 76086 | /* 214536 */ GIM_Try, /*On fail goto*//*Label 4917*/ GIMT_Encode4(214594), // Rule ID 6356 // |
| 76087 | /* 214541 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 76088 | /* 214544 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76089 | /* 214548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76090 | /* 214552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76091 | /* 214556 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76092 | /* 214559 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76093 | /* 214563 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76094 | /* 214567 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76095 | /* 214569 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76096 | /* 214576 */ // (strict_fadd:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76097 | /* 214576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rm), |
| 76098 | /* 214579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76099 | /* 214581 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76100 | /* 214583 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76101 | /* 214587 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76102 | /* 214592 */ GIR_RootConstrainSelectedInstOperands, |
| 76103 | /* 214593 */ // GIR_Coverage, 6356, |
| 76104 | /* 214593 */ GIR_EraseRootFromParent_Done, |
| 76105 | /* 214594 */ // Label 4917: @214594 |
| 76106 | /* 214594 */ GIM_Try, /*On fail goto*//*Label 4918*/ GIMT_Encode4(214621), // Rule ID 6352 // |
| 76107 | /* 214599 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 76108 | /* 214602 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76109 | /* 214606 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76110 | /* 214610 */ // (strict_fadd:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VADDPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 76111 | /* 214610 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rr), |
| 76112 | /* 214615 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76113 | /* 214619 */ GIR_RootConstrainSelectedInstOperands, |
| 76114 | /* 214620 */ // GIR_Coverage, 6352, |
| 76115 | /* 214620 */ GIR_Done, |
| 76116 | /* 214621 */ // Label 4918: @214621 |
| 76117 | /* 214621 */ GIM_Reject, |
| 76118 | /* 214622 */ // Label 4915: @214622 |
| 76119 | /* 214622 */ GIM_Reject, |
| 76120 | /* 214623 */ // Label 4824: @214623 |
| 76121 | /* 214623 */ GIM_Try, /*On fail goto*//*Label 4919*/ GIMT_Encode4(214782), |
| 76122 | /* 214628 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 76123 | /* 214631 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 76124 | /* 214634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76125 | /* 214638 */ GIM_Try, /*On fail goto*//*Label 4920*/ GIMT_Encode4(214696), // Rule ID 24263 // |
| 76126 | /* 214643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76127 | /* 214646 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76128 | /* 214650 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76129 | /* 214654 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76130 | /* 214657 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76131 | /* 214661 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76132 | /* 214665 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76133 | /* 214669 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76134 | /* 214671 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76135 | /* 214678 */ // (strict_fadd:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16f32] }:$src1) => (VADDPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76136 | /* 214678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZrm), |
| 76137 | /* 214681 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76138 | /* 214683 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76139 | /* 214685 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76140 | /* 214689 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76141 | /* 214694 */ GIR_RootConstrainSelectedInstOperands, |
| 76142 | /* 214695 */ // GIR_Coverage, 24263, |
| 76143 | /* 214695 */ GIR_EraseRootFromParent_Done, |
| 76144 | /* 214696 */ // Label 4920: @214696 |
| 76145 | /* 214696 */ GIM_Try, /*On fail goto*//*Label 4921*/ GIMT_Encode4(214754), // Rule ID 6260 // |
| 76146 | /* 214701 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76147 | /* 214704 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76148 | /* 214708 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76149 | /* 214712 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76150 | /* 214716 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76151 | /* 214719 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76152 | /* 214723 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76153 | /* 214727 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76154 | /* 214729 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76155 | /* 214736 */ // (strict_fadd:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76156 | /* 214736 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZrm), |
| 76157 | /* 214739 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76158 | /* 214741 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76159 | /* 214743 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76160 | /* 214747 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76161 | /* 214752 */ GIR_RootConstrainSelectedInstOperands, |
| 76162 | /* 214753 */ // GIR_Coverage, 6260, |
| 76163 | /* 214753 */ GIR_EraseRootFromParent_Done, |
| 76164 | /* 214754 */ // Label 4921: @214754 |
| 76165 | /* 214754 */ GIM_Try, /*On fail goto*//*Label 4922*/ GIMT_Encode4(214781), // Rule ID 6256 // |
| 76166 | /* 214759 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76167 | /* 214762 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76168 | /* 214766 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76169 | /* 214770 */ // (strict_fadd:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VADDPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 76170 | /* 214770 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZrr), |
| 76171 | /* 214775 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76172 | /* 214779 */ GIR_RootConstrainSelectedInstOperands, |
| 76173 | /* 214780 */ // GIR_Coverage, 6256, |
| 76174 | /* 214780 */ GIR_Done, |
| 76175 | /* 214781 */ // Label 4922: @214781 |
| 76176 | /* 214781 */ GIM_Reject, |
| 76177 | /* 214782 */ // Label 4919: @214782 |
| 76178 | /* 214782 */ GIM_Reject, |
| 76179 | /* 214783 */ // Label 4825: @214783 |
| 76180 | /* 214783 */ GIM_Try, /*On fail goto*//*Label 4923*/ GIMT_Encode4(214942), |
| 76181 | /* 214788 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 76182 | /* 214791 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 76183 | /* 214794 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76184 | /* 214798 */ GIM_Try, /*On fail goto*//*Label 4924*/ GIMT_Encode4(214856), // Rule ID 24311 // |
| 76185 | /* 214803 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 76186 | /* 214806 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76187 | /* 214810 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76188 | /* 214814 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76189 | /* 214817 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76190 | /* 214821 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76191 | /* 214825 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76192 | /* 214829 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76193 | /* 214831 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76194 | /* 214838 */ // (strict_fadd:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src1) => (VADDPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76195 | /* 214838 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZrm), |
| 76196 | /* 214841 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76197 | /* 214843 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76198 | /* 214845 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76199 | /* 214849 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76200 | /* 214854 */ GIR_RootConstrainSelectedInstOperands, |
| 76201 | /* 214855 */ // GIR_Coverage, 24311, |
| 76202 | /* 214855 */ GIR_EraseRootFromParent_Done, |
| 76203 | /* 214856 */ // Label 4924: @214856 |
| 76204 | /* 214856 */ GIM_Try, /*On fail goto*//*Label 4925*/ GIMT_Encode4(214914), // Rule ID 6332 // |
| 76205 | /* 214861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 76206 | /* 214864 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76207 | /* 214868 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76208 | /* 214872 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76209 | /* 214876 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76210 | /* 214879 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76211 | /* 214883 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76212 | /* 214887 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76213 | /* 214889 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76214 | /* 214896 */ // (strict_fadd:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76215 | /* 214896 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZrm), |
| 76216 | /* 214899 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76217 | /* 214901 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76218 | /* 214903 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76219 | /* 214907 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76220 | /* 214912 */ GIR_RootConstrainSelectedInstOperands, |
| 76221 | /* 214913 */ // GIR_Coverage, 6332, |
| 76222 | /* 214913 */ GIR_EraseRootFromParent_Done, |
| 76223 | /* 214914 */ // Label 4925: @214914 |
| 76224 | /* 214914 */ GIM_Try, /*On fail goto*//*Label 4926*/ GIMT_Encode4(214941), // Rule ID 6328 // |
| 76225 | /* 214919 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 76226 | /* 214922 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76227 | /* 214926 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76228 | /* 214930 */ // (strict_fadd:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VADDPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 76229 | /* 214930 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZrr), |
| 76230 | /* 214935 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76231 | /* 214939 */ GIR_RootConstrainSelectedInstOperands, |
| 76232 | /* 214940 */ // GIR_Coverage, 6328, |
| 76233 | /* 214940 */ GIR_Done, |
| 76234 | /* 214941 */ // Label 4926: @214941 |
| 76235 | /* 214941 */ GIM_Reject, |
| 76236 | /* 214942 */ // Label 4923: @214942 |
| 76237 | /* 214942 */ GIM_Reject, |
| 76238 | /* 214943 */ // Label 4826: @214943 |
| 76239 | /* 214943 */ GIM_Reject, |
| 76240 | /* 214944 */ // Label 69: @214944 |
| 76241 | /* 214944 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 4940*/ GIMT_Encode4(218633), |
| 76242 | /* 214955 */ /*GILLT_s16*//*Label 4927*/ GIMT_Encode4(215039), |
| 76243 | /* 214959 */ /*GILLT_s32*//*Label 4928*/ GIMT_Encode4(215137), |
| 76244 | /* 214963 */ /*GILLT_s64*//*Label 4929*/ GIMT_Encode4(215856), |
| 76245 | /* 214967 */ /*GILLT_s80*//*Label 4930*/ GIMT_Encode4(216719), GIMT_Encode4(0), GIMT_Encode4(0), |
| 76246 | /* 214979 */ /*GILLT_v2s64*//*Label 4931*/ GIMT_Encode4(217285), GIMT_Encode4(0), |
| 76247 | /* 214987 */ /*GILLT_v4s32*//*Label 4932*/ GIMT_Encode4(217515), |
| 76248 | /* 214991 */ /*GILLT_v4s64*//*Label 4933*/ GIMT_Encode4(217745), GIMT_Encode4(0), |
| 76249 | /* 214999 */ /*GILLT_v8s16*//*Label 4934*/ GIMT_Encode4(217944), |
| 76250 | /* 215003 */ /*GILLT_v8s32*//*Label 4935*/ GIMT_Encode4(218042), |
| 76251 | /* 215007 */ /*GILLT_v8s64*//*Label 4936*/ GIMT_Encode4(218241), GIMT_Encode4(0), GIMT_Encode4(0), |
| 76252 | /* 215019 */ /*GILLT_v16s16*//*Label 4937*/ GIMT_Encode4(218339), |
| 76253 | /* 215023 */ /*GILLT_v16s32*//*Label 4938*/ GIMT_Encode4(218437), GIMT_Encode4(0), GIMT_Encode4(0), |
| 76254 | /* 215035 */ /*GILLT_v32s16*//*Label 4939*/ GIMT_Encode4(218535), |
| 76255 | /* 215039 */ // Label 4927: @215039 |
| 76256 | /* 215039 */ GIM_Try, /*On fail goto*//*Label 4941*/ GIMT_Encode4(215136), |
| 76257 | /* 215044 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 76258 | /* 215047 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 76259 | /* 215050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 76260 | /* 215054 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 76261 | /* 215058 */ GIM_Try, /*On fail goto*//*Label 4942*/ GIMT_Encode4(215112), // Rule ID 6068 // |
| 76262 | /* 215063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 76263 | /* 215066 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76264 | /* 215070 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76265 | /* 215074 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76266 | /* 215077 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76267 | /* 215081 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76268 | /* 215085 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76269 | /* 215087 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76270 | /* 215094 */ // (strict_fsub:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76271 | /* 215094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSHZrm), |
| 76272 | /* 215097 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76273 | /* 215099 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76274 | /* 215101 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76275 | /* 215105 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76276 | /* 215110 */ GIR_RootConstrainSelectedInstOperands, |
| 76277 | /* 215111 */ // GIR_Coverage, 6068, |
| 76278 | /* 215111 */ GIR_EraseRootFromParent_Done, |
| 76279 | /* 215112 */ // Label 4942: @215112 |
| 76280 | /* 215112 */ GIM_Try, /*On fail goto*//*Label 4943*/ GIMT_Encode4(215135), // Rule ID 6066 // |
| 76281 | /* 215117 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 76282 | /* 215120 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 76283 | /* 215124 */ // (strict_fsub:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VSUBSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 76284 | /* 215124 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSHZrr), |
| 76285 | /* 215129 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76286 | /* 215133 */ GIR_RootConstrainSelectedInstOperands, |
| 76287 | /* 215134 */ // GIR_Coverage, 6066, |
| 76288 | /* 215134 */ GIR_Done, |
| 76289 | /* 215135 */ // Label 4943: @215135 |
| 76290 | /* 215135 */ GIM_Reject, |
| 76291 | /* 215136 */ // Label 4941: @215136 |
| 76292 | /* 215136 */ GIM_Reject, |
| 76293 | /* 215137 */ // Label 4928: @215137 |
| 76294 | /* 215137 */ GIM_Try, /*On fail goto*//*Label 4944*/ GIMT_Encode4(215855), |
| 76295 | /* 215142 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 76296 | /* 215145 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 76297 | /* 215148 */ GIM_Try, /*On fail goto*//*Label 4945*/ GIMT_Encode4(215213), // Rule ID 964 // |
| 76298 | /* 215153 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 76299 | /* 215156 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76300 | /* 215160 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76301 | /* 215164 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76302 | /* 215168 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 76303 | /* 215175 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76304 | /* 215179 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76305 | /* 215183 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76306 | /* 215185 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76307 | /* 215192 */ // (strict_fsub:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (SUBR_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76308 | /* 215192 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m32), |
| 76309 | /* 215195 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76310 | /* 215197 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76311 | /* 215199 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76312 | /* 215203 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76313 | /* 215206 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76314 | /* 215211 */ GIR_RootConstrainSelectedInstOperands, |
| 76315 | /* 215212 */ // GIR_Coverage, 964, |
| 76316 | /* 215212 */ GIR_EraseRootFromParent_Done, |
| 76317 | /* 215213 */ // Label 4945: @215213 |
| 76318 | /* 215213 */ GIM_Try, /*On fail goto*//*Label 4946*/ GIMT_Encode4(215278), // Rule ID 966 // |
| 76319 | /* 215218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 76320 | /* 215221 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76321 | /* 215225 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76322 | /* 215229 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76323 | /* 215233 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76324 | /* 215240 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76325 | /* 215244 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76326 | /* 215248 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76327 | /* 215250 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76328 | /* 215257 */ // (strict_fsub:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (SUBR_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76329 | /* 215257 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m32), |
| 76330 | /* 215260 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76331 | /* 215262 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76332 | /* 215264 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76333 | /* 215268 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76334 | /* 215271 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76335 | /* 215276 */ GIR_RootConstrainSelectedInstOperands, |
| 76336 | /* 215277 */ // GIR_Coverage, 966, |
| 76337 | /* 215277 */ GIR_EraseRootFromParent_Done, |
| 76338 | /* 215278 */ // Label 4946: @215278 |
| 76339 | /* 215278 */ GIM_Try, /*On fail goto*//*Label 4947*/ GIMT_Encode4(215343), // Rule ID 954 // |
| 76340 | /* 215283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 76341 | /* 215286 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76342 | /* 215290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76343 | /* 215294 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76344 | /* 215298 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76345 | /* 215301 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76346 | /* 215305 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76347 | /* 215309 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76348 | /* 215313 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76349 | /* 215315 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76350 | /* 215322 */ // (strict_fsub:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP32:{ *:[f32] }:$src1) => (SUBR_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76351 | /* 215322 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp32m), |
| 76352 | /* 215325 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76353 | /* 215327 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76354 | /* 215329 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76355 | /* 215333 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76356 | /* 215336 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76357 | /* 215341 */ GIR_RootConstrainSelectedInstOperands, |
| 76358 | /* 215342 */ // GIR_Coverage, 954, |
| 76359 | /* 215342 */ GIR_EraseRootFromParent_Done, |
| 76360 | /* 215343 */ // Label 4947: @215343 |
| 76361 | /* 215343 */ GIM_Try, /*On fail goto*//*Label 4948*/ GIMT_Encode4(215408), // Rule ID 942 // |
| 76362 | /* 215348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 76363 | /* 215351 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76364 | /* 215355 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76365 | /* 215359 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76366 | /* 215363 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76367 | /* 215367 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 76368 | /* 215374 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76369 | /* 215378 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76370 | /* 215380 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76371 | /* 215387 */ // (strict_fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76372 | /* 215387 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m32), |
| 76373 | /* 215390 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76374 | /* 215392 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76375 | /* 215394 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76376 | /* 215398 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76377 | /* 215401 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76378 | /* 215406 */ GIR_RootConstrainSelectedInstOperands, |
| 76379 | /* 215407 */ // GIR_Coverage, 942, |
| 76380 | /* 215407 */ GIR_EraseRootFromParent_Done, |
| 76381 | /* 215408 */ // Label 4948: @215408 |
| 76382 | /* 215408 */ GIM_Try, /*On fail goto*//*Label 4949*/ GIMT_Encode4(215473), // Rule ID 944 // |
| 76383 | /* 215413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 76384 | /* 215416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76385 | /* 215420 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76386 | /* 215424 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76387 | /* 215428 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76388 | /* 215432 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76389 | /* 215439 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76390 | /* 215443 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76391 | /* 215445 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76392 | /* 215452 */ // (strict_fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76393 | /* 215452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m32), |
| 76394 | /* 215455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76395 | /* 215457 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76396 | /* 215459 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76397 | /* 215463 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76398 | /* 215466 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76399 | /* 215471 */ GIR_RootConstrainSelectedInstOperands, |
| 76400 | /* 215472 */ // GIR_Coverage, 944, |
| 76401 | /* 215472 */ GIR_EraseRootFromParent_Done, |
| 76402 | /* 215473 */ // Label 4949: @215473 |
| 76403 | /* 215473 */ GIM_Try, /*On fail goto*//*Label 4950*/ GIMT_Encode4(215538), // Rule ID 932 // |
| 76404 | /* 215478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 76405 | /* 215481 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76406 | /* 215485 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76407 | /* 215489 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76408 | /* 215493 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76409 | /* 215497 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76410 | /* 215500 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76411 | /* 215504 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76412 | /* 215508 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76413 | /* 215510 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76414 | /* 215517 */ // (strict_fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUB_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76415 | /* 215517 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp32m), |
| 76416 | /* 215520 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76417 | /* 215522 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76418 | /* 215524 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76419 | /* 215528 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76420 | /* 215531 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76421 | /* 215536 */ GIR_RootConstrainSelectedInstOperands, |
| 76422 | /* 215537 */ // GIR_Coverage, 932, |
| 76423 | /* 215537 */ GIR_EraseRootFromParent_Done, |
| 76424 | /* 215538 */ // Label 4950: @215538 |
| 76425 | /* 215538 */ GIM_Try, /*On fail goto*//*Label 4951*/ GIMT_Encode4(215600), // Rule ID 2240 // |
| 76426 | /* 215543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 76427 | /* 215546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76428 | /* 215550 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76429 | /* 215554 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76430 | /* 215558 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76431 | /* 215562 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76432 | /* 215565 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76433 | /* 215569 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76434 | /* 215573 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76435 | /* 215575 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76436 | /* 215582 */ // (strict_fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76437 | /* 215582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSrm), |
| 76438 | /* 215585 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76439 | /* 215587 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76440 | /* 215589 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76441 | /* 215593 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76442 | /* 215598 */ GIR_RootConstrainSelectedInstOperands, |
| 76443 | /* 215599 */ // GIR_Coverage, 2240, |
| 76444 | /* 215599 */ GIR_EraseRootFromParent_Done, |
| 76445 | /* 215600 */ // Label 4951: @215600 |
| 76446 | /* 215600 */ GIM_Try, /*On fail goto*//*Label 4952*/ GIMT_Encode4(215662), // Rule ID 2248 // |
| 76447 | /* 215605 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 76448 | /* 215608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76449 | /* 215612 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76450 | /* 215616 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76451 | /* 215620 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76452 | /* 215624 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76453 | /* 215627 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76454 | /* 215631 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76455 | /* 215635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76456 | /* 215637 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76457 | /* 215644 */ // (strict_fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUBSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76458 | /* 215644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSSrm), |
| 76459 | /* 215647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76460 | /* 215649 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76461 | /* 215651 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76462 | /* 215655 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76463 | /* 215660 */ GIR_RootConstrainSelectedInstOperands, |
| 76464 | /* 215661 */ // GIR_Coverage, 2248, |
| 76465 | /* 215661 */ GIR_EraseRootFromParent_Done, |
| 76466 | /* 215662 */ // Label 4952: @215662 |
| 76467 | /* 215662 */ GIM_Try, /*On fail goto*//*Label 4953*/ GIMT_Encode4(215724), // Rule ID 6030 // |
| 76468 | /* 215667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76469 | /* 215670 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 76470 | /* 215674 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 76471 | /* 215678 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76472 | /* 215682 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76473 | /* 215686 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76474 | /* 215689 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76475 | /* 215693 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76476 | /* 215697 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76477 | /* 215699 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76478 | /* 215706 */ // (strict_fsub:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76479 | /* 215706 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSZrm), |
| 76480 | /* 215709 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76481 | /* 215711 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76482 | /* 215713 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76483 | /* 215717 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76484 | /* 215722 */ GIR_RootConstrainSelectedInstOperands, |
| 76485 | /* 215723 */ // GIR_Coverage, 6030, |
| 76486 | /* 215723 */ GIR_EraseRootFromParent_Done, |
| 76487 | /* 215724 */ // Label 4953: @215724 |
| 76488 | /* 215724 */ GIM_Try, /*On fail goto*//*Label 4954*/ GIMT_Encode4(215761), // Rule ID 892 // |
| 76489 | /* 215729 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 76490 | /* 215732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76491 | /* 215736 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76492 | /* 215740 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76493 | /* 215744 */ // (strict_fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (SUB_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 76494 | /* 215744 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp32), |
| 76495 | /* 215749 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 76496 | /* 215755 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 76497 | /* 215759 */ GIR_RootConstrainSelectedInstOperands, |
| 76498 | /* 215760 */ // GIR_Coverage, 892, |
| 76499 | /* 215760 */ GIR_Done, |
| 76500 | /* 215761 */ // Label 4954: @215761 |
| 76501 | /* 215761 */ GIM_Try, /*On fail goto*//*Label 4955*/ GIMT_Encode4(215792), // Rule ID 2238 // |
| 76502 | /* 215766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 76503 | /* 215769 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76504 | /* 215773 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76505 | /* 215777 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76506 | /* 215781 */ // (strict_fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VSUBSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 76507 | /* 215781 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSSrr), |
| 76508 | /* 215786 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76509 | /* 215790 */ GIR_RootConstrainSelectedInstOperands, |
| 76510 | /* 215791 */ // GIR_Coverage, 2238, |
| 76511 | /* 215791 */ GIR_Done, |
| 76512 | /* 215792 */ // Label 4955: @215792 |
| 76513 | /* 215792 */ GIM_Try, /*On fail goto*//*Label 4956*/ GIMT_Encode4(215823), // Rule ID 2246 // |
| 76514 | /* 215797 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 76515 | /* 215800 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76516 | /* 215804 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76517 | /* 215808 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76518 | /* 215812 */ // (strict_fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (SUBSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 76519 | /* 215812 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBSSrr), |
| 76520 | /* 215817 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76521 | /* 215821 */ GIR_RootConstrainSelectedInstOperands, |
| 76522 | /* 215822 */ // GIR_Coverage, 2246, |
| 76523 | /* 215822 */ GIR_Done, |
| 76524 | /* 215823 */ // Label 4956: @215823 |
| 76525 | /* 215823 */ GIM_Try, /*On fail goto*//*Label 4957*/ GIMT_Encode4(215854), // Rule ID 6028 // |
| 76526 | /* 215828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76527 | /* 215831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 76528 | /* 215835 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 76529 | /* 215839 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 76530 | /* 215843 */ // (strict_fsub:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VSUBSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 76531 | /* 215843 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSSZrr), |
| 76532 | /* 215848 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76533 | /* 215852 */ GIR_RootConstrainSelectedInstOperands, |
| 76534 | /* 215853 */ // GIR_Coverage, 6028, |
| 76535 | /* 215853 */ GIR_Done, |
| 76536 | /* 215854 */ // Label 4957: @215854 |
| 76537 | /* 215854 */ GIM_Reject, |
| 76538 | /* 215855 */ // Label 4944: @215855 |
| 76539 | /* 215855 */ GIM_Reject, |
| 76540 | /* 215856 */ // Label 4929: @215856 |
| 76541 | /* 215856 */ GIM_Try, /*On fail goto*//*Label 4958*/ GIMT_Encode4(216718), |
| 76542 | /* 215861 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 76543 | /* 215864 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 76544 | /* 215867 */ GIM_Try, /*On fail goto*//*Label 4959*/ GIMT_Encode4(215932), // Rule ID 968 // |
| 76545 | /* 215872 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76546 | /* 215875 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76547 | /* 215879 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76548 | /* 215883 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76549 | /* 215887 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 76550 | /* 215894 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76551 | /* 215898 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76552 | /* 215902 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76553 | /* 215904 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76554 | /* 215911 */ // (strict_fsub:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (SUBR_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76555 | /* 215911 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m64), |
| 76556 | /* 215914 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76557 | /* 215916 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76558 | /* 215918 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76559 | /* 215922 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76560 | /* 215925 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76561 | /* 215930 */ GIR_RootConstrainSelectedInstOperands, |
| 76562 | /* 215931 */ // GIR_Coverage, 968, |
| 76563 | /* 215931 */ GIR_EraseRootFromParent_Done, |
| 76564 | /* 215932 */ // Label 4959: @215932 |
| 76565 | /* 215932 */ GIM_Try, /*On fail goto*//*Label 4960*/ GIMT_Encode4(215997), // Rule ID 970 // |
| 76566 | /* 215937 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76567 | /* 215940 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76568 | /* 215944 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76569 | /* 215948 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76570 | /* 215952 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76571 | /* 215959 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76572 | /* 215963 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76573 | /* 215967 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76574 | /* 215969 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76575 | /* 215976 */ // (strict_fsub:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (SUBR_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76576 | /* 215976 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m64), |
| 76577 | /* 215979 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76578 | /* 215981 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76579 | /* 215983 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76580 | /* 215987 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76581 | /* 215990 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76582 | /* 215995 */ GIR_RootConstrainSelectedInstOperands, |
| 76583 | /* 215996 */ // GIR_Coverage, 970, |
| 76584 | /* 215996 */ GIR_EraseRootFromParent_Done, |
| 76585 | /* 215997 */ // Label 4960: @215997 |
| 76586 | /* 215997 */ GIM_Try, /*On fail goto*//*Label 4961*/ GIMT_Encode4(216062), // Rule ID 956 // |
| 76587 | /* 216002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76588 | /* 216005 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76589 | /* 216009 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76590 | /* 216013 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76591 | /* 216017 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76592 | /* 216020 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76593 | /* 216024 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76594 | /* 216028 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76595 | /* 216032 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76596 | /* 216034 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76597 | /* 216041 */ // (strict_fsub:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP64:{ *:[f64] }:$src1) => (SUBR_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76598 | /* 216041 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp64m), |
| 76599 | /* 216044 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76600 | /* 216046 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76601 | /* 216048 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76602 | /* 216052 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76603 | /* 216055 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76604 | /* 216060 */ GIR_RootConstrainSelectedInstOperands, |
| 76605 | /* 216061 */ // GIR_Coverage, 956, |
| 76606 | /* 216061 */ GIR_EraseRootFromParent_Done, |
| 76607 | /* 216062 */ // Label 4961: @216062 |
| 76608 | /* 216062 */ GIM_Try, /*On fail goto*//*Label 4962*/ GIMT_Encode4(216134), // Rule ID 958 // |
| 76609 | /* 216067 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76610 | /* 216070 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76611 | /* 216074 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76612 | /* 216078 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76613 | /* 216082 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76614 | /* 216085 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76615 | /* 216089 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76616 | /* 216096 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76617 | /* 216100 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76618 | /* 216104 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76619 | /* 216106 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76620 | /* 216113 */ // (strict_fsub:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP64:{ *:[f64] }:$src1) => (SUBR_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76621 | /* 216113 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp64m32), |
| 76622 | /* 216116 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76623 | /* 216118 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76624 | /* 216120 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76625 | /* 216124 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76626 | /* 216127 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76627 | /* 216132 */ GIR_RootConstrainSelectedInstOperands, |
| 76628 | /* 216133 */ // GIR_Coverage, 958, |
| 76629 | /* 216133 */ GIR_EraseRootFromParent_Done, |
| 76630 | /* 216134 */ // Label 4962: @216134 |
| 76631 | /* 216134 */ GIM_Try, /*On fail goto*//*Label 4963*/ GIMT_Encode4(216199), // Rule ID 946 // |
| 76632 | /* 216139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76633 | /* 216142 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76634 | /* 216146 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76635 | /* 216150 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76636 | /* 216154 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76637 | /* 216158 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 76638 | /* 216165 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76639 | /* 216169 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76640 | /* 216171 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76641 | /* 216178 */ // (strict_fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76642 | /* 216178 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m64), |
| 76643 | /* 216181 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76644 | /* 216183 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76645 | /* 216185 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76646 | /* 216189 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76647 | /* 216192 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76648 | /* 216197 */ GIR_RootConstrainSelectedInstOperands, |
| 76649 | /* 216198 */ // GIR_Coverage, 946, |
| 76650 | /* 216198 */ GIR_EraseRootFromParent_Done, |
| 76651 | /* 216199 */ // Label 4963: @216199 |
| 76652 | /* 216199 */ GIM_Try, /*On fail goto*//*Label 4964*/ GIMT_Encode4(216264), // Rule ID 948 // |
| 76653 | /* 216204 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76654 | /* 216207 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76655 | /* 216211 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76656 | /* 216215 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76657 | /* 216219 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76658 | /* 216223 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76659 | /* 216230 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76660 | /* 216234 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76661 | /* 216236 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76662 | /* 216243 */ // (strict_fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76663 | /* 216243 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m64), |
| 76664 | /* 216246 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76665 | /* 216248 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76666 | /* 216250 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76667 | /* 216254 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76668 | /* 216257 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76669 | /* 216262 */ GIR_RootConstrainSelectedInstOperands, |
| 76670 | /* 216263 */ // GIR_Coverage, 948, |
| 76671 | /* 216263 */ GIR_EraseRootFromParent_Done, |
| 76672 | /* 216264 */ // Label 4964: @216264 |
| 76673 | /* 216264 */ GIM_Try, /*On fail goto*//*Label 4965*/ GIMT_Encode4(216329), // Rule ID 934 // |
| 76674 | /* 216269 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76675 | /* 216272 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76676 | /* 216276 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76677 | /* 216280 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76678 | /* 216284 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76679 | /* 216288 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76680 | /* 216291 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76681 | /* 216295 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76682 | /* 216299 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76683 | /* 216301 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76684 | /* 216308 */ // (strict_fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUB_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76685 | /* 216308 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64m), |
| 76686 | /* 216311 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76687 | /* 216313 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76688 | /* 216315 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76689 | /* 216319 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76690 | /* 216322 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76691 | /* 216327 */ GIR_RootConstrainSelectedInstOperands, |
| 76692 | /* 216328 */ // GIR_Coverage, 934, |
| 76693 | /* 216328 */ GIR_EraseRootFromParent_Done, |
| 76694 | /* 216329 */ // Label 4965: @216329 |
| 76695 | /* 216329 */ GIM_Try, /*On fail goto*//*Label 4966*/ GIMT_Encode4(216401), // Rule ID 936 // |
| 76696 | /* 216334 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76697 | /* 216337 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76698 | /* 216341 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76699 | /* 216345 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76700 | /* 216349 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76701 | /* 216353 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76702 | /* 216356 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76703 | /* 216360 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76704 | /* 216367 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76705 | /* 216371 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76706 | /* 216373 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76707 | /* 216380 */ // (strict_fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (SUB_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76708 | /* 216380 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64m32), |
| 76709 | /* 216383 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76710 | /* 216385 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76711 | /* 216387 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76712 | /* 216391 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76713 | /* 216394 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76714 | /* 216399 */ GIR_RootConstrainSelectedInstOperands, |
| 76715 | /* 216400 */ // GIR_Coverage, 936, |
| 76716 | /* 216400 */ GIR_EraseRootFromParent_Done, |
| 76717 | /* 216401 */ // Label 4966: @216401 |
| 76718 | /* 216401 */ GIM_Try, /*On fail goto*//*Label 4967*/ GIMT_Encode4(216463), // Rule ID 2244 // |
| 76719 | /* 216406 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 76720 | /* 216409 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76721 | /* 216413 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76722 | /* 216417 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76723 | /* 216421 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76724 | /* 216425 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76725 | /* 216428 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76726 | /* 216432 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76727 | /* 216436 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76728 | /* 216438 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76729 | /* 216445 */ // (strict_fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76730 | /* 216445 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDrm), |
| 76731 | /* 216448 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76732 | /* 216450 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76733 | /* 216452 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76734 | /* 216456 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76735 | /* 216461 */ GIR_RootConstrainSelectedInstOperands, |
| 76736 | /* 216462 */ // GIR_Coverage, 2244, |
| 76737 | /* 216462 */ GIR_EraseRootFromParent_Done, |
| 76738 | /* 216463 */ // Label 4967: @216463 |
| 76739 | /* 216463 */ GIM_Try, /*On fail goto*//*Label 4968*/ GIMT_Encode4(216525), // Rule ID 2252 // |
| 76740 | /* 216468 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 76741 | /* 216471 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76742 | /* 216475 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76743 | /* 216479 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76744 | /* 216483 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76745 | /* 216487 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76746 | /* 216490 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76747 | /* 216494 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76748 | /* 216498 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76749 | /* 216500 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76750 | /* 216507 */ // (strict_fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUBSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76751 | /* 216507 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSDrm), |
| 76752 | /* 216510 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76753 | /* 216512 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76754 | /* 216514 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76755 | /* 216518 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76756 | /* 216523 */ GIR_RootConstrainSelectedInstOperands, |
| 76757 | /* 216524 */ // GIR_Coverage, 2252, |
| 76758 | /* 216524 */ GIR_EraseRootFromParent_Done, |
| 76759 | /* 216525 */ // Label 4968: @216525 |
| 76760 | /* 216525 */ GIM_Try, /*On fail goto*//*Label 4969*/ GIMT_Encode4(216587), // Rule ID 6049 // |
| 76761 | /* 216530 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76762 | /* 216533 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 76763 | /* 216537 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 76764 | /* 216541 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76765 | /* 216545 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76766 | /* 216549 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76767 | /* 216552 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76768 | /* 216556 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76769 | /* 216560 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76770 | /* 216562 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76771 | /* 216569 */ // (strict_fsub:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76772 | /* 216569 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDZrm), |
| 76773 | /* 216572 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76774 | /* 216574 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76775 | /* 216576 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76776 | /* 216580 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76777 | /* 216585 */ GIR_RootConstrainSelectedInstOperands, |
| 76778 | /* 216586 */ // GIR_Coverage, 6049, |
| 76779 | /* 216586 */ GIR_EraseRootFromParent_Done, |
| 76780 | /* 216587 */ // Label 4969: @216587 |
| 76781 | /* 216587 */ GIM_Try, /*On fail goto*//*Label 4970*/ GIMT_Encode4(216624), // Rule ID 894 // |
| 76782 | /* 216592 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76783 | /* 216595 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76784 | /* 216599 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76785 | /* 216603 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76786 | /* 216607 */ // (strict_fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (SUB_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 76787 | /* 216607 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64), |
| 76788 | /* 216612 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 76789 | /* 216618 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 76790 | /* 216622 */ GIR_RootConstrainSelectedInstOperands, |
| 76791 | /* 216623 */ // GIR_Coverage, 894, |
| 76792 | /* 216623 */ GIR_Done, |
| 76793 | /* 216624 */ // Label 4970: @216624 |
| 76794 | /* 216624 */ GIM_Try, /*On fail goto*//*Label 4971*/ GIMT_Encode4(216655), // Rule ID 2242 // |
| 76795 | /* 216629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 76796 | /* 216632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76797 | /* 216636 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76798 | /* 216640 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76799 | /* 216644 */ // (strict_fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VSUBSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 76800 | /* 216644 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSDrr), |
| 76801 | /* 216649 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76802 | /* 216653 */ GIR_RootConstrainSelectedInstOperands, |
| 76803 | /* 216654 */ // GIR_Coverage, 2242, |
| 76804 | /* 216654 */ GIR_Done, |
| 76805 | /* 216655 */ // Label 4971: @216655 |
| 76806 | /* 216655 */ GIM_Try, /*On fail goto*//*Label 4972*/ GIMT_Encode4(216686), // Rule ID 2250 // |
| 76807 | /* 216660 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 76808 | /* 216663 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76809 | /* 216667 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76810 | /* 216671 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76811 | /* 216675 */ // (strict_fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (SUBSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 76812 | /* 216675 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBSDrr), |
| 76813 | /* 216680 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76814 | /* 216684 */ GIR_RootConstrainSelectedInstOperands, |
| 76815 | /* 216685 */ // GIR_Coverage, 2250, |
| 76816 | /* 216685 */ GIR_Done, |
| 76817 | /* 216686 */ // Label 4972: @216686 |
| 76818 | /* 216686 */ GIM_Try, /*On fail goto*//*Label 4973*/ GIMT_Encode4(216717), // Rule ID 6047 // |
| 76819 | /* 216691 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76820 | /* 216694 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 76821 | /* 216698 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 76822 | /* 216702 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 76823 | /* 216706 */ // (strict_fsub:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VSUBSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 76824 | /* 216706 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSDZrr), |
| 76825 | /* 216711 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76826 | /* 216715 */ GIR_RootConstrainSelectedInstOperands, |
| 76827 | /* 216716 */ // GIR_Coverage, 6047, |
| 76828 | /* 216716 */ GIR_Done, |
| 76829 | /* 216717 */ // Label 4973: @216717 |
| 76830 | /* 216717 */ GIM_Reject, |
| 76831 | /* 216718 */ // Label 4958: @216718 |
| 76832 | /* 216718 */ GIM_Reject, |
| 76833 | /* 216719 */ // Label 4930: @216719 |
| 76834 | /* 216719 */ GIM_Try, /*On fail goto*//*Label 4974*/ GIMT_Encode4(217284), |
| 76835 | /* 216724 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 76836 | /* 216727 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 76837 | /* 216730 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76838 | /* 216734 */ GIM_Try, /*On fail goto*//*Label 4975*/ GIMT_Encode4(216795), // Rule ID 972 // |
| 76839 | /* 216739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76840 | /* 216742 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76841 | /* 216746 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76842 | /* 216750 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 76843 | /* 216757 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76844 | /* 216761 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76845 | /* 216765 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76846 | /* 216767 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76847 | /* 216774 */ // (strict_fsub:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (SUBR_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76848 | /* 216774 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m80), |
| 76849 | /* 216777 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76850 | /* 216779 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76851 | /* 216781 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76852 | /* 216785 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76853 | /* 216788 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76854 | /* 216793 */ GIR_RootConstrainSelectedInstOperands, |
| 76855 | /* 216794 */ // GIR_Coverage, 972, |
| 76856 | /* 216794 */ GIR_EraseRootFromParent_Done, |
| 76857 | /* 216795 */ // Label 4975: @216795 |
| 76858 | /* 216795 */ GIM_Try, /*On fail goto*//*Label 4976*/ GIMT_Encode4(216856), // Rule ID 974 // |
| 76859 | /* 216800 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76860 | /* 216803 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76861 | /* 216807 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76862 | /* 216811 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76863 | /* 216818 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76864 | /* 216822 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76865 | /* 216826 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76866 | /* 216828 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76867 | /* 216835 */ // (strict_fsub:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (SUBR_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76868 | /* 216835 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m80), |
| 76869 | /* 216838 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76870 | /* 216840 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76871 | /* 216842 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76872 | /* 216846 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76873 | /* 216849 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76874 | /* 216854 */ GIR_RootConstrainSelectedInstOperands, |
| 76875 | /* 216855 */ // GIR_Coverage, 974, |
| 76876 | /* 216855 */ GIR_EraseRootFromParent_Done, |
| 76877 | /* 216856 */ // Label 4976: @216856 |
| 76878 | /* 216856 */ GIM_Try, /*On fail goto*//*Label 4977*/ GIMT_Encode4(216924), // Rule ID 960 // |
| 76879 | /* 216861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76880 | /* 216864 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76881 | /* 216868 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76882 | /* 216872 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76883 | /* 216875 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76884 | /* 216879 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76885 | /* 216886 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76886 | /* 216890 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76887 | /* 216894 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76888 | /* 216896 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76889 | /* 216903 */ // (strict_fsub:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP80:{ *:[f80] }:$src1) => (SUBR_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76890 | /* 216903 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp80m32), |
| 76891 | /* 216906 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76892 | /* 216908 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76893 | /* 216910 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76894 | /* 216914 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76895 | /* 216917 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76896 | /* 216922 */ GIR_RootConstrainSelectedInstOperands, |
| 76897 | /* 216923 */ // GIR_Coverage, 960, |
| 76898 | /* 216923 */ GIR_EraseRootFromParent_Done, |
| 76899 | /* 216924 */ // Label 4977: @216924 |
| 76900 | /* 216924 */ GIM_Try, /*On fail goto*//*Label 4978*/ GIMT_Encode4(216992), // Rule ID 962 // |
| 76901 | /* 216929 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76902 | /* 216932 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76903 | /* 216936 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76904 | /* 216940 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76905 | /* 216943 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76906 | /* 216947 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 76907 | /* 216954 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76908 | /* 216958 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76909 | /* 216962 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76910 | /* 216964 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76911 | /* 216971 */ // (strict_fsub:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>, RFP80:{ *:[f80] }:$src1) => (SUBR_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76912 | /* 216971 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp80m64), |
| 76913 | /* 216974 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76914 | /* 216976 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76915 | /* 216978 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76916 | /* 216982 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76917 | /* 216985 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76918 | /* 216990 */ GIR_RootConstrainSelectedInstOperands, |
| 76919 | /* 216991 */ // GIR_Coverage, 962, |
| 76920 | /* 216991 */ GIR_EraseRootFromParent_Done, |
| 76921 | /* 216992 */ // Label 4978: @216992 |
| 76922 | /* 216992 */ GIM_Try, /*On fail goto*//*Label 4979*/ GIMT_Encode4(217053), // Rule ID 950 // |
| 76923 | /* 216997 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76924 | /* 217000 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76925 | /* 217004 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76926 | /* 217008 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76927 | /* 217012 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 76928 | /* 217019 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76929 | /* 217023 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76930 | /* 217025 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76931 | /* 217032 */ // (strict_fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76932 | /* 217032 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m80), |
| 76933 | /* 217035 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76934 | /* 217037 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76935 | /* 217039 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76936 | /* 217043 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76937 | /* 217046 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76938 | /* 217051 */ GIR_RootConstrainSelectedInstOperands, |
| 76939 | /* 217052 */ // GIR_Coverage, 950, |
| 76940 | /* 217052 */ GIR_EraseRootFromParent_Done, |
| 76941 | /* 217053 */ // Label 4979: @217053 |
| 76942 | /* 217053 */ GIM_Try, /*On fail goto*//*Label 4980*/ GIMT_Encode4(217114), // Rule ID 952 // |
| 76943 | /* 217058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76944 | /* 217061 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76945 | /* 217065 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76946 | /* 217069 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76947 | /* 217073 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76948 | /* 217080 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76949 | /* 217084 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76950 | /* 217086 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76951 | /* 217093 */ // (strict_fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76952 | /* 217093 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m80), |
| 76953 | /* 217096 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76954 | /* 217098 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76955 | /* 217100 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76956 | /* 217104 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76957 | /* 217107 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76958 | /* 217112 */ GIR_RootConstrainSelectedInstOperands, |
| 76959 | /* 217113 */ // GIR_Coverage, 952, |
| 76960 | /* 217113 */ GIR_EraseRootFromParent_Done, |
| 76961 | /* 217114 */ // Label 4980: @217114 |
| 76962 | /* 217114 */ GIM_Try, /*On fail goto*//*Label 4981*/ GIMT_Encode4(217182), // Rule ID 938 // |
| 76963 | /* 217119 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76964 | /* 217122 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76965 | /* 217126 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76966 | /* 217130 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76967 | /* 217134 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76968 | /* 217137 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76969 | /* 217141 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76970 | /* 217148 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76971 | /* 217152 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76972 | /* 217154 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76973 | /* 217161 */ // (strict_fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (SUB_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76974 | /* 217161 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80m32), |
| 76975 | /* 217164 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76976 | /* 217166 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76977 | /* 217168 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76978 | /* 217172 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76979 | /* 217175 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76980 | /* 217180 */ GIR_RootConstrainSelectedInstOperands, |
| 76981 | /* 217181 */ // GIR_Coverage, 938, |
| 76982 | /* 217181 */ GIR_EraseRootFromParent_Done, |
| 76983 | /* 217182 */ // Label 4981: @217182 |
| 76984 | /* 217182 */ GIM_Try, /*On fail goto*//*Label 4982*/ GIMT_Encode4(217250), // Rule ID 940 // |
| 76985 | /* 217187 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76986 | /* 217190 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76987 | /* 217194 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76988 | /* 217198 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76989 | /* 217202 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76990 | /* 217205 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76991 | /* 217209 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 76992 | /* 217216 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76993 | /* 217220 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76994 | /* 217222 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76995 | /* 217229 */ // (strict_fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>) => (SUB_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76996 | /* 217229 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80m64), |
| 76997 | /* 217232 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76998 | /* 217234 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76999 | /* 217236 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77000 | /* 217240 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77001 | /* 217243 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77002 | /* 217248 */ GIR_RootConstrainSelectedInstOperands, |
| 77003 | /* 217249 */ // GIR_Coverage, 940, |
| 77004 | /* 217249 */ GIR_EraseRootFromParent_Done, |
| 77005 | /* 217250 */ // Label 4982: @217250 |
| 77006 | /* 217250 */ GIM_Try, /*On fail goto*//*Label 4983*/ GIMT_Encode4(217283), // Rule ID 896 // |
| 77007 | /* 217255 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 77008 | /* 217258 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77009 | /* 217262 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77010 | /* 217266 */ // (strict_fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (SUB_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 77011 | /* 217266 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80), |
| 77012 | /* 217271 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 77013 | /* 217277 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 77014 | /* 217281 */ GIR_RootConstrainSelectedInstOperands, |
| 77015 | /* 217282 */ // GIR_Coverage, 896, |
| 77016 | /* 217282 */ GIR_Done, |
| 77017 | /* 217283 */ // Label 4983: @217283 |
| 77018 | /* 217283 */ GIM_Reject, |
| 77019 | /* 217284 */ // Label 4974: @217284 |
| 77020 | /* 217284 */ GIM_Reject, |
| 77021 | /* 217285 */ // Label 4931: @217285 |
| 77022 | /* 217285 */ GIM_Try, /*On fail goto*//*Label 4984*/ GIMT_Encode4(217514), |
| 77023 | /* 217290 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 77024 | /* 217293 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 77025 | /* 217296 */ GIM_Try, /*On fail goto*//*Label 4985*/ GIMT_Encode4(217358), // Rule ID 2220 // |
| 77026 | /* 217301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 77027 | /* 217304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77028 | /* 217308 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77029 | /* 217312 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77030 | /* 217316 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77031 | /* 217320 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77032 | /* 217323 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77033 | /* 217327 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77034 | /* 217331 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77035 | /* 217333 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77036 | /* 217340 */ // (strict_fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77037 | /* 217340 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDrm), |
| 77038 | /* 217343 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77039 | /* 217345 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77040 | /* 217347 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77041 | /* 217351 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77042 | /* 217356 */ GIR_RootConstrainSelectedInstOperands, |
| 77043 | /* 217357 */ // GIR_Coverage, 2220, |
| 77044 | /* 217357 */ GIR_EraseRootFromParent_Done, |
| 77045 | /* 217358 */ // Label 4985: @217358 |
| 77046 | /* 217358 */ GIM_Try, /*On fail goto*//*Label 4986*/ GIMT_Encode4(217420), // Rule ID 6542 // |
| 77047 | /* 217363 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 77048 | /* 217366 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77049 | /* 217370 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77050 | /* 217374 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77051 | /* 217378 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77052 | /* 217382 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77053 | /* 217385 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77054 | /* 217389 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77055 | /* 217393 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77056 | /* 217395 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77057 | /* 217402 */ // (strict_fsub:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77058 | /* 217402 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ128rm), |
| 77059 | /* 217405 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77060 | /* 217407 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77061 | /* 217409 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77062 | /* 217413 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77063 | /* 217418 */ GIR_RootConstrainSelectedInstOperands, |
| 77064 | /* 217419 */ // GIR_Coverage, 6542, |
| 77065 | /* 217419 */ GIR_EraseRootFromParent_Done, |
| 77066 | /* 217420 */ // Label 4986: @217420 |
| 77067 | /* 217420 */ GIM_Try, /*On fail goto*//*Label 4987*/ GIMT_Encode4(217451), // Rule ID 2218 // |
| 77068 | /* 217425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 77069 | /* 217428 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77070 | /* 217432 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77071 | /* 217436 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77072 | /* 217440 */ // (strict_fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VSUBPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 77073 | /* 217440 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDrr), |
| 77074 | /* 217445 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77075 | /* 217449 */ GIR_RootConstrainSelectedInstOperands, |
| 77076 | /* 217450 */ // GIR_Coverage, 2218, |
| 77077 | /* 217450 */ GIR_Done, |
| 77078 | /* 217451 */ // Label 4987: @217451 |
| 77079 | /* 217451 */ GIM_Try, /*On fail goto*//*Label 4988*/ GIMT_Encode4(217482), // Rule ID 2234 // |
| 77080 | /* 217456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 77081 | /* 217459 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77082 | /* 217463 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77083 | /* 217467 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77084 | /* 217471 */ // (strict_fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (SUBPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 77085 | /* 217471 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBPDrr), |
| 77086 | /* 217476 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77087 | /* 217480 */ GIR_RootConstrainSelectedInstOperands, |
| 77088 | /* 217481 */ // GIR_Coverage, 2234, |
| 77089 | /* 217481 */ GIR_Done, |
| 77090 | /* 217482 */ // Label 4988: @217482 |
| 77091 | /* 217482 */ GIM_Try, /*On fail goto*//*Label 4989*/ GIMT_Encode4(217513), // Rule ID 6538 // |
| 77092 | /* 217487 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 77093 | /* 217490 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77094 | /* 217494 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77095 | /* 217498 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77096 | /* 217502 */ // (strict_fsub:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VSUBPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 77097 | /* 217502 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ128rr), |
| 77098 | /* 217507 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77099 | /* 217511 */ GIR_RootConstrainSelectedInstOperands, |
| 77100 | /* 217512 */ // GIR_Coverage, 6538, |
| 77101 | /* 217512 */ GIR_Done, |
| 77102 | /* 217513 */ // Label 4989: @217513 |
| 77103 | /* 217513 */ GIM_Reject, |
| 77104 | /* 217514 */ // Label 4984: @217514 |
| 77105 | /* 217514 */ GIM_Reject, |
| 77106 | /* 217515 */ // Label 4932: @217515 |
| 77107 | /* 217515 */ GIM_Try, /*On fail goto*//*Label 4990*/ GIMT_Encode4(217744), |
| 77108 | /* 217520 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 77109 | /* 217523 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 77110 | /* 217526 */ GIM_Try, /*On fail goto*//*Label 4991*/ GIMT_Encode4(217588), // Rule ID 2216 // |
| 77111 | /* 217531 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 77112 | /* 217534 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77113 | /* 217538 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77114 | /* 217542 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77115 | /* 217546 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77116 | /* 217550 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77117 | /* 217553 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77118 | /* 217557 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77119 | /* 217561 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77120 | /* 217563 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77121 | /* 217570 */ // (strict_fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77122 | /* 217570 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSrm), |
| 77123 | /* 217573 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77124 | /* 217575 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77125 | /* 217577 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77126 | /* 217581 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77127 | /* 217586 */ GIR_RootConstrainSelectedInstOperands, |
| 77128 | /* 217587 */ // GIR_Coverage, 2216, |
| 77129 | /* 217587 */ GIR_EraseRootFromParent_Done, |
| 77130 | /* 217588 */ // Label 4991: @217588 |
| 77131 | /* 217588 */ GIM_Try, /*On fail goto*//*Label 4992*/ GIMT_Encode4(217650), // Rule ID 6518 // |
| 77132 | /* 217593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 77133 | /* 217596 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77134 | /* 217600 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77135 | /* 217604 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77136 | /* 217608 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77137 | /* 217612 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77138 | /* 217615 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77139 | /* 217619 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77140 | /* 217623 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77141 | /* 217625 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77142 | /* 217632 */ // (strict_fsub:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77143 | /* 217632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ128rm), |
| 77144 | /* 217635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77145 | /* 217637 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77146 | /* 217639 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77147 | /* 217643 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77148 | /* 217648 */ GIR_RootConstrainSelectedInstOperands, |
| 77149 | /* 217649 */ // GIR_Coverage, 6518, |
| 77150 | /* 217649 */ GIR_EraseRootFromParent_Done, |
| 77151 | /* 217650 */ // Label 4992: @217650 |
| 77152 | /* 217650 */ GIM_Try, /*On fail goto*//*Label 4993*/ GIMT_Encode4(217681), // Rule ID 2214 // |
| 77153 | /* 217655 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 77154 | /* 217658 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77155 | /* 217662 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77156 | /* 217666 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77157 | /* 217670 */ // (strict_fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VSUBPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 77158 | /* 217670 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSrr), |
| 77159 | /* 217675 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77160 | /* 217679 */ GIR_RootConstrainSelectedInstOperands, |
| 77161 | /* 217680 */ // GIR_Coverage, 2214, |
| 77162 | /* 217680 */ GIR_Done, |
| 77163 | /* 217681 */ // Label 4993: @217681 |
| 77164 | /* 217681 */ GIM_Try, /*On fail goto*//*Label 4994*/ GIMT_Encode4(217712), // Rule ID 2230 // |
| 77165 | /* 217686 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 77166 | /* 217689 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77167 | /* 217693 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77168 | /* 217697 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77169 | /* 217701 */ // (strict_fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (SUBPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 77170 | /* 217701 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBPSrr), |
| 77171 | /* 217706 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77172 | /* 217710 */ GIR_RootConstrainSelectedInstOperands, |
| 77173 | /* 217711 */ // GIR_Coverage, 2230, |
| 77174 | /* 217711 */ GIR_Done, |
| 77175 | /* 217712 */ // Label 4994: @217712 |
| 77176 | /* 217712 */ GIM_Try, /*On fail goto*//*Label 4995*/ GIMT_Encode4(217743), // Rule ID 6514 // |
| 77177 | /* 217717 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 77178 | /* 217720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77179 | /* 217724 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77180 | /* 217728 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77181 | /* 217732 */ // (strict_fsub:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VSUBPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 77182 | /* 217732 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ128rr), |
| 77183 | /* 217737 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77184 | /* 217741 */ GIR_RootConstrainSelectedInstOperands, |
| 77185 | /* 217742 */ // GIR_Coverage, 6514, |
| 77186 | /* 217742 */ GIR_Done, |
| 77187 | /* 217743 */ // Label 4995: @217743 |
| 77188 | /* 217743 */ GIM_Reject, |
| 77189 | /* 217744 */ // Label 4990: @217744 |
| 77190 | /* 217744 */ GIM_Reject, |
| 77191 | /* 217745 */ // Label 4933: @217745 |
| 77192 | /* 217745 */ GIM_Try, /*On fail goto*//*Label 4996*/ GIMT_Encode4(217943), |
| 77193 | /* 217750 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 77194 | /* 217753 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 77195 | /* 217756 */ GIM_Try, /*On fail goto*//*Label 4997*/ GIMT_Encode4(217818), // Rule ID 2228 // |
| 77196 | /* 217761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 77197 | /* 217764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 77198 | /* 217768 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 77199 | /* 217772 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77200 | /* 217776 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77201 | /* 217780 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77202 | /* 217783 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77203 | /* 217787 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77204 | /* 217791 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77205 | /* 217793 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77206 | /* 217800 */ // (strict_fsub:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77207 | /* 217800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDYrm), |
| 77208 | /* 217803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77209 | /* 217805 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77210 | /* 217807 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77211 | /* 217811 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77212 | /* 217816 */ GIR_RootConstrainSelectedInstOperands, |
| 77213 | /* 217817 */ // GIR_Coverage, 2228, |
| 77214 | /* 217817 */ GIR_EraseRootFromParent_Done, |
| 77215 | /* 217818 */ // Label 4997: @217818 |
| 77216 | /* 217818 */ GIM_Try, /*On fail goto*//*Label 4998*/ GIMT_Encode4(217880), // Rule ID 6554 // |
| 77217 | /* 217823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 77218 | /* 217826 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77219 | /* 217830 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77220 | /* 217834 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77221 | /* 217838 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77222 | /* 217842 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77223 | /* 217845 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77224 | /* 217849 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77225 | /* 217853 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77226 | /* 217855 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77227 | /* 217862 */ // (strict_fsub:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77228 | /* 217862 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ256rm), |
| 77229 | /* 217865 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77230 | /* 217867 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77231 | /* 217869 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77232 | /* 217873 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77233 | /* 217878 */ GIR_RootConstrainSelectedInstOperands, |
| 77234 | /* 217879 */ // GIR_Coverage, 6554, |
| 77235 | /* 217879 */ GIR_EraseRootFromParent_Done, |
| 77236 | /* 217880 */ // Label 4998: @217880 |
| 77237 | /* 217880 */ GIM_Try, /*On fail goto*//*Label 4999*/ GIMT_Encode4(217911), // Rule ID 2226 // |
| 77238 | /* 217885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 77239 | /* 217888 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 77240 | /* 217892 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 77241 | /* 217896 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 77242 | /* 217900 */ // (strict_fsub:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VSUBPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 77243 | /* 217900 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDYrr), |
| 77244 | /* 217905 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77245 | /* 217909 */ GIR_RootConstrainSelectedInstOperands, |
| 77246 | /* 217910 */ // GIR_Coverage, 2226, |
| 77247 | /* 217910 */ GIR_Done, |
| 77248 | /* 217911 */ // Label 4999: @217911 |
| 77249 | /* 217911 */ GIM_Try, /*On fail goto*//*Label 5000*/ GIMT_Encode4(217942), // Rule ID 6550 // |
| 77250 | /* 217916 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 77251 | /* 217919 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77252 | /* 217923 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77253 | /* 217927 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77254 | /* 217931 */ // (strict_fsub:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VSUBPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 77255 | /* 217931 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ256rr), |
| 77256 | /* 217936 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77257 | /* 217940 */ GIR_RootConstrainSelectedInstOperands, |
| 77258 | /* 217941 */ // GIR_Coverage, 6550, |
| 77259 | /* 217941 */ GIR_Done, |
| 77260 | /* 217942 */ // Label 5000: @217942 |
| 77261 | /* 217942 */ GIM_Reject, |
| 77262 | /* 217943 */ // Label 4996: @217943 |
| 77263 | /* 217943 */ GIM_Reject, |
| 77264 | /* 217944 */ // Label 4934: @217944 |
| 77265 | /* 217944 */ GIM_Try, /*On fail goto*//*Label 5001*/ GIMT_Encode4(218041), |
| 77266 | /* 217949 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 77267 | /* 217952 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 77268 | /* 217955 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77269 | /* 217959 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77270 | /* 217963 */ GIM_Try, /*On fail goto*//*Label 5002*/ GIMT_Encode4(218017), // Rule ID 6578 // |
| 77271 | /* 217968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 77272 | /* 217971 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77273 | /* 217975 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77274 | /* 217979 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77275 | /* 217982 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77276 | /* 217986 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77277 | /* 217990 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77278 | /* 217992 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77279 | /* 217999 */ // (strict_fsub:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77280 | /* 217999 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ128rm), |
| 77281 | /* 218002 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77282 | /* 218004 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77283 | /* 218006 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77284 | /* 218010 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77285 | /* 218015 */ GIR_RootConstrainSelectedInstOperands, |
| 77286 | /* 218016 */ // GIR_Coverage, 6578, |
| 77287 | /* 218016 */ GIR_EraseRootFromParent_Done, |
| 77288 | /* 218017 */ // Label 5002: @218017 |
| 77289 | /* 218017 */ GIM_Try, /*On fail goto*//*Label 5003*/ GIMT_Encode4(218040), // Rule ID 6574 // |
| 77290 | /* 218022 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 77291 | /* 218025 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 77292 | /* 218029 */ // (strict_fsub:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VSUBPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 77293 | /* 218029 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ128rr), |
| 77294 | /* 218034 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77295 | /* 218038 */ GIR_RootConstrainSelectedInstOperands, |
| 77296 | /* 218039 */ // GIR_Coverage, 6574, |
| 77297 | /* 218039 */ GIR_Done, |
| 77298 | /* 218040 */ // Label 5003: @218040 |
| 77299 | /* 218040 */ GIM_Reject, |
| 77300 | /* 218041 */ // Label 5001: @218041 |
| 77301 | /* 218041 */ GIM_Reject, |
| 77302 | /* 218042 */ // Label 4935: @218042 |
| 77303 | /* 218042 */ GIM_Try, /*On fail goto*//*Label 5004*/ GIMT_Encode4(218240), |
| 77304 | /* 218047 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 77305 | /* 218050 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 77306 | /* 218053 */ GIM_Try, /*On fail goto*//*Label 5005*/ GIMT_Encode4(218115), // Rule ID 2224 // |
| 77307 | /* 218058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 77308 | /* 218061 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 77309 | /* 218065 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 77310 | /* 218069 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77311 | /* 218073 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77312 | /* 218077 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77313 | /* 218080 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77314 | /* 218084 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77315 | /* 218088 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77316 | /* 218090 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77317 | /* 218097 */ // (strict_fsub:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77318 | /* 218097 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSYrm), |
| 77319 | /* 218100 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77320 | /* 218102 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77321 | /* 218104 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77322 | /* 218108 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77323 | /* 218113 */ GIR_RootConstrainSelectedInstOperands, |
| 77324 | /* 218114 */ // GIR_Coverage, 2224, |
| 77325 | /* 218114 */ GIR_EraseRootFromParent_Done, |
| 77326 | /* 218115 */ // Label 5005: @218115 |
| 77327 | /* 218115 */ GIM_Try, /*On fail goto*//*Label 5006*/ GIMT_Encode4(218177), // Rule ID 6530 // |
| 77328 | /* 218120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 77329 | /* 218123 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77330 | /* 218127 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77331 | /* 218131 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77332 | /* 218135 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77333 | /* 218139 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77334 | /* 218142 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77335 | /* 218146 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77336 | /* 218150 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77337 | /* 218152 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77338 | /* 218159 */ // (strict_fsub:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77339 | /* 218159 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ256rm), |
| 77340 | /* 218162 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77341 | /* 218164 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77342 | /* 218166 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77343 | /* 218170 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77344 | /* 218175 */ GIR_RootConstrainSelectedInstOperands, |
| 77345 | /* 218176 */ // GIR_Coverage, 6530, |
| 77346 | /* 218176 */ GIR_EraseRootFromParent_Done, |
| 77347 | /* 218177 */ // Label 5006: @218177 |
| 77348 | /* 218177 */ GIM_Try, /*On fail goto*//*Label 5007*/ GIMT_Encode4(218208), // Rule ID 2222 // |
| 77349 | /* 218182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 77350 | /* 218185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 77351 | /* 218189 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 77352 | /* 218193 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 77353 | /* 218197 */ // (strict_fsub:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VSUBPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 77354 | /* 218197 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSYrr), |
| 77355 | /* 218202 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77356 | /* 218206 */ GIR_RootConstrainSelectedInstOperands, |
| 77357 | /* 218207 */ // GIR_Coverage, 2222, |
| 77358 | /* 218207 */ GIR_Done, |
| 77359 | /* 218208 */ // Label 5007: @218208 |
| 77360 | /* 218208 */ GIM_Try, /*On fail goto*//*Label 5008*/ GIMT_Encode4(218239), // Rule ID 6526 // |
| 77361 | /* 218213 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 77362 | /* 218216 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77363 | /* 218220 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77364 | /* 218224 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77365 | /* 218228 */ // (strict_fsub:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VSUBPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 77366 | /* 218228 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ256rr), |
| 77367 | /* 218233 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77368 | /* 218237 */ GIR_RootConstrainSelectedInstOperands, |
| 77369 | /* 218238 */ // GIR_Coverage, 6526, |
| 77370 | /* 218238 */ GIR_Done, |
| 77371 | /* 218239 */ // Label 5008: @218239 |
| 77372 | /* 218239 */ GIM_Reject, |
| 77373 | /* 218240 */ // Label 5004: @218240 |
| 77374 | /* 218240 */ GIM_Reject, |
| 77375 | /* 218241 */ // Label 4936: @218241 |
| 77376 | /* 218241 */ GIM_Try, /*On fail goto*//*Label 5009*/ GIMT_Encode4(218338), |
| 77377 | /* 218246 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 77378 | /* 218249 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 77379 | /* 218252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77380 | /* 218256 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77381 | /* 218260 */ GIM_Try, /*On fail goto*//*Label 5010*/ GIMT_Encode4(218314), // Rule ID 6506 // |
| 77382 | /* 218265 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77383 | /* 218268 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77384 | /* 218272 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77385 | /* 218276 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77386 | /* 218279 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77387 | /* 218283 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77388 | /* 218287 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77389 | /* 218289 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77390 | /* 218296 */ // (strict_fsub:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77391 | /* 218296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZrm), |
| 77392 | /* 218299 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77393 | /* 218301 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77394 | /* 218303 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77395 | /* 218307 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77396 | /* 218312 */ GIR_RootConstrainSelectedInstOperands, |
| 77397 | /* 218313 */ // GIR_Coverage, 6506, |
| 77398 | /* 218313 */ GIR_EraseRootFromParent_Done, |
| 77399 | /* 218314 */ // Label 5010: @218314 |
| 77400 | /* 218314 */ GIM_Try, /*On fail goto*//*Label 5011*/ GIMT_Encode4(218337), // Rule ID 6502 // |
| 77401 | /* 218319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77402 | /* 218322 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77403 | /* 218326 */ // (strict_fsub:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VSUBPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 77404 | /* 218326 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZrr), |
| 77405 | /* 218331 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77406 | /* 218335 */ GIR_RootConstrainSelectedInstOperands, |
| 77407 | /* 218336 */ // GIR_Coverage, 6502, |
| 77408 | /* 218336 */ GIR_Done, |
| 77409 | /* 218337 */ // Label 5011: @218337 |
| 77410 | /* 218337 */ GIM_Reject, |
| 77411 | /* 218338 */ // Label 5009: @218338 |
| 77412 | /* 218338 */ GIM_Reject, |
| 77413 | /* 218339 */ // Label 4937: @218339 |
| 77414 | /* 218339 */ GIM_Try, /*On fail goto*//*Label 5012*/ GIMT_Encode4(218436), |
| 77415 | /* 218344 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 77416 | /* 218347 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 77417 | /* 218350 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77418 | /* 218354 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77419 | /* 218358 */ GIM_Try, /*On fail goto*//*Label 5013*/ GIMT_Encode4(218412), // Rule ID 6590 // |
| 77420 | /* 218363 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 77421 | /* 218366 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77422 | /* 218370 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77423 | /* 218374 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77424 | /* 218377 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77425 | /* 218381 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77426 | /* 218385 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77427 | /* 218387 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77428 | /* 218394 */ // (strict_fsub:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77429 | /* 218394 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ256rm), |
| 77430 | /* 218397 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77431 | /* 218399 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77432 | /* 218401 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77433 | /* 218405 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77434 | /* 218410 */ GIR_RootConstrainSelectedInstOperands, |
| 77435 | /* 218411 */ // GIR_Coverage, 6590, |
| 77436 | /* 218411 */ GIR_EraseRootFromParent_Done, |
| 77437 | /* 218412 */ // Label 5013: @218412 |
| 77438 | /* 218412 */ GIM_Try, /*On fail goto*//*Label 5014*/ GIMT_Encode4(218435), // Rule ID 6586 // |
| 77439 | /* 218417 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 77440 | /* 218420 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 77441 | /* 218424 */ // (strict_fsub:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VSUBPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 77442 | /* 218424 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ256rr), |
| 77443 | /* 218429 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77444 | /* 218433 */ GIR_RootConstrainSelectedInstOperands, |
| 77445 | /* 218434 */ // GIR_Coverage, 6586, |
| 77446 | /* 218434 */ GIR_Done, |
| 77447 | /* 218435 */ // Label 5014: @218435 |
| 77448 | /* 218435 */ GIM_Reject, |
| 77449 | /* 218436 */ // Label 5012: @218436 |
| 77450 | /* 218436 */ GIM_Reject, |
| 77451 | /* 218437 */ // Label 4938: @218437 |
| 77452 | /* 218437 */ GIM_Try, /*On fail goto*//*Label 5015*/ GIMT_Encode4(218534), |
| 77453 | /* 218442 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 77454 | /* 218445 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 77455 | /* 218448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77456 | /* 218452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77457 | /* 218456 */ GIM_Try, /*On fail goto*//*Label 5016*/ GIMT_Encode4(218510), // Rule ID 6494 // |
| 77458 | /* 218461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77459 | /* 218464 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77460 | /* 218468 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77461 | /* 218472 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77462 | /* 218475 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77463 | /* 218479 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77464 | /* 218483 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77465 | /* 218485 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77466 | /* 218492 */ // (strict_fsub:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77467 | /* 218492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZrm), |
| 77468 | /* 218495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77469 | /* 218497 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77470 | /* 218499 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77471 | /* 218503 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77472 | /* 218508 */ GIR_RootConstrainSelectedInstOperands, |
| 77473 | /* 218509 */ // GIR_Coverage, 6494, |
| 77474 | /* 218509 */ GIR_EraseRootFromParent_Done, |
| 77475 | /* 218510 */ // Label 5016: @218510 |
| 77476 | /* 218510 */ GIM_Try, /*On fail goto*//*Label 5017*/ GIMT_Encode4(218533), // Rule ID 6490 // |
| 77477 | /* 218515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77478 | /* 218518 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77479 | /* 218522 */ // (strict_fsub:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VSUBPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 77480 | /* 218522 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZrr), |
| 77481 | /* 218527 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77482 | /* 218531 */ GIR_RootConstrainSelectedInstOperands, |
| 77483 | /* 218532 */ // GIR_Coverage, 6490, |
| 77484 | /* 218532 */ GIR_Done, |
| 77485 | /* 218533 */ // Label 5017: @218533 |
| 77486 | /* 218533 */ GIM_Reject, |
| 77487 | /* 218534 */ // Label 5015: @218534 |
| 77488 | /* 218534 */ GIM_Reject, |
| 77489 | /* 218535 */ // Label 4939: @218535 |
| 77490 | /* 218535 */ GIM_Try, /*On fail goto*//*Label 5018*/ GIMT_Encode4(218632), |
| 77491 | /* 218540 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 77492 | /* 218543 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 77493 | /* 218546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77494 | /* 218550 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77495 | /* 218554 */ GIM_Try, /*On fail goto*//*Label 5019*/ GIMT_Encode4(218608), // Rule ID 6566 // |
| 77496 | /* 218559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 77497 | /* 218562 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77498 | /* 218566 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77499 | /* 218570 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77500 | /* 218573 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77501 | /* 218577 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77502 | /* 218581 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77503 | /* 218583 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77504 | /* 218590 */ // (strict_fsub:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77505 | /* 218590 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZrm), |
| 77506 | /* 218593 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77507 | /* 218595 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77508 | /* 218597 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77509 | /* 218601 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77510 | /* 218606 */ GIR_RootConstrainSelectedInstOperands, |
| 77511 | /* 218607 */ // GIR_Coverage, 6566, |
| 77512 | /* 218607 */ GIR_EraseRootFromParent_Done, |
| 77513 | /* 218608 */ // Label 5019: @218608 |
| 77514 | /* 218608 */ GIM_Try, /*On fail goto*//*Label 5020*/ GIMT_Encode4(218631), // Rule ID 6562 // |
| 77515 | /* 218613 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 77516 | /* 218616 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77517 | /* 218620 */ // (strict_fsub:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VSUBPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 77518 | /* 218620 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZrr), |
| 77519 | /* 218625 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77520 | /* 218629 */ GIR_RootConstrainSelectedInstOperands, |
| 77521 | /* 218630 */ // GIR_Coverage, 6562, |
| 77522 | /* 218630 */ GIR_Done, |
| 77523 | /* 218631 */ // Label 5020: @218631 |
| 77524 | /* 218631 */ GIM_Reject, |
| 77525 | /* 218632 */ // Label 5018: @218632 |
| 77526 | /* 218632 */ GIM_Reject, |
| 77527 | /* 218633 */ // Label 4940: @218633 |
| 77528 | /* 218633 */ GIM_Reject, |
| 77529 | /* 218634 */ // Label 70: @218634 |
| 77530 | /* 218634 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 5034*/ GIMT_Encode4(223563), |
| 77531 | /* 218645 */ /*GILLT_s16*//*Label 5021*/ GIMT_Encode4(218729), |
| 77532 | /* 218649 */ /*GILLT_s32*//*Label 5022*/ GIMT_Encode4(218889), |
| 77533 | /* 218653 */ /*GILLT_s64*//*Label 5023*/ GIMT_Encode4(219794), |
| 77534 | /* 218657 */ /*GILLT_s80*//*Label 5024*/ GIMT_Encode4(220843), GIMT_Encode4(0), GIMT_Encode4(0), |
| 77535 | /* 218669 */ /*GILLT_v2s64*//*Label 5025*/ GIMT_Encode4(221409), GIMT_Encode4(0), |
| 77536 | /* 218677 */ /*GILLT_v4s32*//*Label 5026*/ GIMT_Encode4(221763), |
| 77537 | /* 218681 */ /*GILLT_v4s64*//*Label 5027*/ GIMT_Encode4(222117), GIMT_Encode4(0), |
| 77538 | /* 218689 */ /*GILLT_v8s16*//*Label 5028*/ GIMT_Encode4(222440), |
| 77539 | /* 218693 */ /*GILLT_v8s32*//*Label 5029*/ GIMT_Encode4(222600), |
| 77540 | /* 218697 */ /*GILLT_v8s64*//*Label 5030*/ GIMT_Encode4(222923), GIMT_Encode4(0), GIMT_Encode4(0), |
| 77541 | /* 218709 */ /*GILLT_v16s16*//*Label 5031*/ GIMT_Encode4(223083), |
| 77542 | /* 218713 */ /*GILLT_v16s32*//*Label 5032*/ GIMT_Encode4(223243), GIMT_Encode4(0), GIMT_Encode4(0), |
| 77543 | /* 218725 */ /*GILLT_v32s16*//*Label 5033*/ GIMT_Encode4(223403), |
| 77544 | /* 218729 */ // Label 5021: @218729 |
| 77545 | /* 218729 */ GIM_Try, /*On fail goto*//*Label 5035*/ GIMT_Encode4(218888), |
| 77546 | /* 218734 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 77547 | /* 218737 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 77548 | /* 218740 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 77549 | /* 218744 */ GIM_Try, /*On fail goto*//*Label 5036*/ GIMT_Encode4(218802), // Rule ID 24255 // |
| 77550 | /* 218749 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 77551 | /* 218752 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77552 | /* 218756 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77553 | /* 218760 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77554 | /* 218763 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77555 | /* 218767 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77556 | /* 218771 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 77557 | /* 218775 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77558 | /* 218777 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77559 | /* 218784 */ // (strict_fmul:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR16X:{ *:[f16] }:$src1) => (VMULSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77560 | /* 218784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSHZrm), |
| 77561 | /* 218787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77562 | /* 218789 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77563 | /* 218791 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77564 | /* 218795 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77565 | /* 218800 */ GIR_RootConstrainSelectedInstOperands, |
| 77566 | /* 218801 */ // GIR_Coverage, 24255, |
| 77567 | /* 218801 */ GIR_EraseRootFromParent_Done, |
| 77568 | /* 218802 */ // Label 5036: @218802 |
| 77569 | /* 218802 */ GIM_Try, /*On fail goto*//*Label 5037*/ GIMT_Encode4(218860), // Rule ID 6011 // |
| 77570 | /* 218807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 77571 | /* 218810 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 77572 | /* 218814 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77573 | /* 218818 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77574 | /* 218822 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77575 | /* 218825 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77576 | /* 218829 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77577 | /* 218833 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77578 | /* 218835 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77579 | /* 218842 */ // (strict_fmul:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77580 | /* 218842 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSHZrm), |
| 77581 | /* 218845 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77582 | /* 218847 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77583 | /* 218849 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77584 | /* 218853 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77585 | /* 218858 */ GIR_RootConstrainSelectedInstOperands, |
| 77586 | /* 218859 */ // GIR_Coverage, 6011, |
| 77587 | /* 218859 */ GIR_EraseRootFromParent_Done, |
| 77588 | /* 218860 */ // Label 5037: @218860 |
| 77589 | /* 218860 */ GIM_Try, /*On fail goto*//*Label 5038*/ GIMT_Encode4(218887), // Rule ID 6009 // |
| 77590 | /* 218865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 77591 | /* 218868 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 77592 | /* 218872 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 77593 | /* 218876 */ // (strict_fmul:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VMULSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 77594 | /* 218876 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSHZrr), |
| 77595 | /* 218881 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77596 | /* 218885 */ GIR_RootConstrainSelectedInstOperands, |
| 77597 | /* 218886 */ // GIR_Coverage, 6009, |
| 77598 | /* 218886 */ GIR_Done, |
| 77599 | /* 218887 */ // Label 5038: @218887 |
| 77600 | /* 218887 */ GIM_Reject, |
| 77601 | /* 218888 */ // Label 5035: @218888 |
| 77602 | /* 218888 */ GIM_Reject, |
| 77603 | /* 218889 */ // Label 5022: @218889 |
| 77604 | /* 218889 */ GIM_Try, /*On fail goto*//*Label 5039*/ GIMT_Encode4(219793), |
| 77605 | /* 218894 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 77606 | /* 218897 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 77607 | /* 218900 */ GIM_Try, /*On fail goto*//*Label 5040*/ GIMT_Encode4(218965), // Rule ID 23268 // |
| 77608 | /* 218905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77609 | /* 218908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77610 | /* 218912 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77611 | /* 218916 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77612 | /* 218920 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 77613 | /* 218927 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77614 | /* 218931 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77615 | /* 218935 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77616 | /* 218937 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77617 | /* 218944 */ // (strict_fmul:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (MUL_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77618 | /* 218944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m32), |
| 77619 | /* 218947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77620 | /* 218949 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77621 | /* 218951 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77622 | /* 218955 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77623 | /* 218958 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77624 | /* 218963 */ GIR_RootConstrainSelectedInstOperands, |
| 77625 | /* 218964 */ // GIR_Coverage, 23268, |
| 77626 | /* 218964 */ GIR_EraseRootFromParent_Done, |
| 77627 | /* 218965 */ // Label 5040: @218965 |
| 77628 | /* 218965 */ GIM_Try, /*On fail goto*//*Label 5041*/ GIMT_Encode4(219030), // Rule ID 23270 // |
| 77629 | /* 218970 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77630 | /* 218973 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77631 | /* 218977 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77632 | /* 218981 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77633 | /* 218985 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77634 | /* 218992 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77635 | /* 218996 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77636 | /* 219000 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77637 | /* 219002 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77638 | /* 219009 */ // (strict_fmul:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (MUL_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77639 | /* 219009 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m32), |
| 77640 | /* 219012 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77641 | /* 219014 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77642 | /* 219016 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77643 | /* 219020 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77644 | /* 219023 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77645 | /* 219028 */ GIR_RootConstrainSelectedInstOperands, |
| 77646 | /* 219029 */ // GIR_Coverage, 23270, |
| 77647 | /* 219029 */ GIR_EraseRootFromParent_Done, |
| 77648 | /* 219030 */ // Label 5041: @219030 |
| 77649 | /* 219030 */ GIM_Try, /*On fail goto*//*Label 5042*/ GIMT_Encode4(219095), // Rule ID 23258 // |
| 77650 | /* 219035 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77651 | /* 219038 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77652 | /* 219042 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77653 | /* 219046 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77654 | /* 219050 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77655 | /* 219053 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77656 | /* 219057 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77657 | /* 219061 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77658 | /* 219065 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77659 | /* 219067 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77660 | /* 219074 */ // (strict_fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP32:{ *:[f32] }:$src1) => (MUL_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77661 | /* 219074 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32m), |
| 77662 | /* 219077 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77663 | /* 219079 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77664 | /* 219081 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77665 | /* 219085 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77666 | /* 219088 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77667 | /* 219093 */ GIR_RootConstrainSelectedInstOperands, |
| 77668 | /* 219094 */ // GIR_Coverage, 23258, |
| 77669 | /* 219094 */ GIR_EraseRootFromParent_Done, |
| 77670 | /* 219095 */ // Label 5042: @219095 |
| 77671 | /* 219095 */ GIM_Try, /*On fail goto*//*Label 5043*/ GIMT_Encode4(219157), // Rule ID 23401 // |
| 77672 | /* 219100 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 77673 | /* 219103 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77674 | /* 219107 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77675 | /* 219111 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77676 | /* 219115 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77677 | /* 219118 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77678 | /* 219122 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77679 | /* 219126 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77680 | /* 219130 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77681 | /* 219132 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77682 | /* 219139 */ // (strict_fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (VMULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77683 | /* 219139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 77684 | /* 219142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77685 | /* 219144 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77686 | /* 219146 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77687 | /* 219150 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77688 | /* 219155 */ GIR_RootConstrainSelectedInstOperands, |
| 77689 | /* 219156 */ // GIR_Coverage, 23401, |
| 77690 | /* 219156 */ GIR_EraseRootFromParent_Done, |
| 77691 | /* 219157 */ // Label 5043: @219157 |
| 77692 | /* 219157 */ GIM_Try, /*On fail goto*//*Label 5044*/ GIMT_Encode4(219219), // Rule ID 23405 // |
| 77693 | /* 219162 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 77694 | /* 219165 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77695 | /* 219169 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77696 | /* 219173 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77697 | /* 219177 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77698 | /* 219180 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77699 | /* 219184 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77700 | /* 219188 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77701 | /* 219192 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77702 | /* 219194 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77703 | /* 219201 */ // (strict_fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (MULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77704 | /* 219201 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 77705 | /* 219204 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77706 | /* 219206 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77707 | /* 219208 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77708 | /* 219212 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77709 | /* 219217 */ GIR_RootConstrainSelectedInstOperands, |
| 77710 | /* 219218 */ // GIR_Coverage, 23405, |
| 77711 | /* 219218 */ GIR_EraseRootFromParent_Done, |
| 77712 | /* 219219 */ // Label 5044: @219219 |
| 77713 | /* 219219 */ GIM_Try, /*On fail goto*//*Label 5045*/ GIMT_Encode4(219281), // Rule ID 24251 // |
| 77714 | /* 219224 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77715 | /* 219227 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77716 | /* 219231 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77717 | /* 219235 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77718 | /* 219239 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77719 | /* 219242 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77720 | /* 219246 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77721 | /* 219250 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77722 | /* 219254 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77723 | /* 219256 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77724 | /* 219263 */ // (strict_fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32X:{ *:[f32] }:$src1) => (VMULSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77725 | /* 219263 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 77726 | /* 219266 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77727 | /* 219268 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77728 | /* 219270 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77729 | /* 219274 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77730 | /* 219279 */ GIR_RootConstrainSelectedInstOperands, |
| 77731 | /* 219280 */ // GIR_Coverage, 24251, |
| 77732 | /* 219280 */ GIR_EraseRootFromParent_Done, |
| 77733 | /* 219281 */ // Label 5045: @219281 |
| 77734 | /* 219281 */ GIM_Try, /*On fail goto*//*Label 5046*/ GIMT_Encode4(219346), // Rule ID 986 // |
| 77735 | /* 219286 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77736 | /* 219289 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77737 | /* 219293 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77738 | /* 219297 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77739 | /* 219301 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77740 | /* 219305 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 77741 | /* 219312 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77742 | /* 219316 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77743 | /* 219318 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77744 | /* 219325 */ // (strict_fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77745 | /* 219325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m32), |
| 77746 | /* 219328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77747 | /* 219330 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77748 | /* 219332 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77749 | /* 219336 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77750 | /* 219339 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77751 | /* 219344 */ GIR_RootConstrainSelectedInstOperands, |
| 77752 | /* 219345 */ // GIR_Coverage, 986, |
| 77753 | /* 219345 */ GIR_EraseRootFromParent_Done, |
| 77754 | /* 219346 */ // Label 5046: @219346 |
| 77755 | /* 219346 */ GIM_Try, /*On fail goto*//*Label 5047*/ GIMT_Encode4(219411), // Rule ID 988 // |
| 77756 | /* 219351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77757 | /* 219354 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77758 | /* 219358 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77759 | /* 219362 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77760 | /* 219366 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77761 | /* 219370 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77762 | /* 219377 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77763 | /* 219381 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77764 | /* 219383 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77765 | /* 219390 */ // (strict_fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77766 | /* 219390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m32), |
| 77767 | /* 219393 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77768 | /* 219395 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77769 | /* 219397 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77770 | /* 219401 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77771 | /* 219404 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77772 | /* 219409 */ GIR_RootConstrainSelectedInstOperands, |
| 77773 | /* 219410 */ // GIR_Coverage, 988, |
| 77774 | /* 219410 */ GIR_EraseRootFromParent_Done, |
| 77775 | /* 219411 */ // Label 5047: @219411 |
| 77776 | /* 219411 */ GIM_Try, /*On fail goto*//*Label 5048*/ GIMT_Encode4(219476), // Rule ID 976 // |
| 77777 | /* 219416 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77778 | /* 219419 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77779 | /* 219423 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77780 | /* 219427 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77781 | /* 219431 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77782 | /* 219435 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77783 | /* 219438 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77784 | /* 219442 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77785 | /* 219446 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77786 | /* 219448 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77787 | /* 219455 */ // (strict_fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MUL_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77788 | /* 219455 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32m), |
| 77789 | /* 219458 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77790 | /* 219460 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77791 | /* 219462 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77792 | /* 219466 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77793 | /* 219469 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77794 | /* 219474 */ GIR_RootConstrainSelectedInstOperands, |
| 77795 | /* 219475 */ // GIR_Coverage, 976, |
| 77796 | /* 219475 */ GIR_EraseRootFromParent_Done, |
| 77797 | /* 219476 */ // Label 5048: @219476 |
| 77798 | /* 219476 */ GIM_Try, /*On fail goto*//*Label 5049*/ GIMT_Encode4(219538), // Rule ID 2200 // |
| 77799 | /* 219481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 77800 | /* 219484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77801 | /* 219488 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77802 | /* 219492 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77803 | /* 219496 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77804 | /* 219500 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77805 | /* 219503 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77806 | /* 219507 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77807 | /* 219511 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77808 | /* 219513 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77809 | /* 219520 */ // (strict_fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77810 | /* 219520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 77811 | /* 219523 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77812 | /* 219525 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77813 | /* 219527 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77814 | /* 219531 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77815 | /* 219536 */ GIR_RootConstrainSelectedInstOperands, |
| 77816 | /* 219537 */ // GIR_Coverage, 2200, |
| 77817 | /* 219537 */ GIR_EraseRootFromParent_Done, |
| 77818 | /* 219538 */ // Label 5049: @219538 |
| 77819 | /* 219538 */ GIM_Try, /*On fail goto*//*Label 5050*/ GIMT_Encode4(219600), // Rule ID 2208 // |
| 77820 | /* 219543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 77821 | /* 219546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77822 | /* 219550 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77823 | /* 219554 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77824 | /* 219558 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77825 | /* 219562 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77826 | /* 219565 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77827 | /* 219569 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77828 | /* 219573 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77829 | /* 219575 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77830 | /* 219582 */ // (strict_fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77831 | /* 219582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 77832 | /* 219585 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77833 | /* 219587 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77834 | /* 219589 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77835 | /* 219593 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77836 | /* 219598 */ GIR_RootConstrainSelectedInstOperands, |
| 77837 | /* 219599 */ // GIR_Coverage, 2208, |
| 77838 | /* 219599 */ GIR_EraseRootFromParent_Done, |
| 77839 | /* 219600 */ // Label 5050: @219600 |
| 77840 | /* 219600 */ GIM_Try, /*On fail goto*//*Label 5051*/ GIMT_Encode4(219662), // Rule ID 5973 // |
| 77841 | /* 219605 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77842 | /* 219608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77843 | /* 219612 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77844 | /* 219616 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77845 | /* 219620 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77846 | /* 219624 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77847 | /* 219627 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77848 | /* 219631 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77849 | /* 219635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77850 | /* 219637 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77851 | /* 219644 */ // (strict_fmul:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77852 | /* 219644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 77853 | /* 219647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77854 | /* 219649 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77855 | /* 219651 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77856 | /* 219655 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77857 | /* 219660 */ GIR_RootConstrainSelectedInstOperands, |
| 77858 | /* 219661 */ // GIR_Coverage, 5973, |
| 77859 | /* 219661 */ GIR_EraseRootFromParent_Done, |
| 77860 | /* 219662 */ // Label 5051: @219662 |
| 77861 | /* 219662 */ GIM_Try, /*On fail goto*//*Label 5052*/ GIMT_Encode4(219699), // Rule ID 898 // |
| 77862 | /* 219667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77863 | /* 219670 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77864 | /* 219674 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77865 | /* 219678 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77866 | /* 219682 */ // (strict_fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (MUL_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 77867 | /* 219682 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32), |
| 77868 | /* 219687 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 77869 | /* 219693 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 77870 | /* 219697 */ GIR_RootConstrainSelectedInstOperands, |
| 77871 | /* 219698 */ // GIR_Coverage, 898, |
| 77872 | /* 219698 */ GIR_Done, |
| 77873 | /* 219699 */ // Label 5052: @219699 |
| 77874 | /* 219699 */ GIM_Try, /*On fail goto*//*Label 5053*/ GIMT_Encode4(219730), // Rule ID 2198 // |
| 77875 | /* 219704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 77876 | /* 219707 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77877 | /* 219711 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77878 | /* 219715 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77879 | /* 219719 */ // (strict_fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VMULSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 77880 | /* 219719 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSSrr), |
| 77881 | /* 219724 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77882 | /* 219728 */ GIR_RootConstrainSelectedInstOperands, |
| 77883 | /* 219729 */ // GIR_Coverage, 2198, |
| 77884 | /* 219729 */ GIR_Done, |
| 77885 | /* 219730 */ // Label 5053: @219730 |
| 77886 | /* 219730 */ GIM_Try, /*On fail goto*//*Label 5054*/ GIMT_Encode4(219761), // Rule ID 2206 // |
| 77887 | /* 219735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 77888 | /* 219738 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77889 | /* 219742 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77890 | /* 219746 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77891 | /* 219750 */ // (strict_fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (MULSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 77892 | /* 219750 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULSSrr), |
| 77893 | /* 219755 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77894 | /* 219759 */ GIR_RootConstrainSelectedInstOperands, |
| 77895 | /* 219760 */ // GIR_Coverage, 2206, |
| 77896 | /* 219760 */ GIR_Done, |
| 77897 | /* 219761 */ // Label 5054: @219761 |
| 77898 | /* 219761 */ GIM_Try, /*On fail goto*//*Label 5055*/ GIMT_Encode4(219792), // Rule ID 5971 // |
| 77899 | /* 219766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77900 | /* 219769 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77901 | /* 219773 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77902 | /* 219777 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77903 | /* 219781 */ // (strict_fmul:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VMULSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 77904 | /* 219781 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSSZrr), |
| 77905 | /* 219786 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77906 | /* 219790 */ GIR_RootConstrainSelectedInstOperands, |
| 77907 | /* 219791 */ // GIR_Coverage, 5971, |
| 77908 | /* 219791 */ GIR_Done, |
| 77909 | /* 219792 */ // Label 5055: @219792 |
| 77910 | /* 219792 */ GIM_Reject, |
| 77911 | /* 219793 */ // Label 5039: @219793 |
| 77912 | /* 219793 */ GIM_Reject, |
| 77913 | /* 219794 */ // Label 5023: @219794 |
| 77914 | /* 219794 */ GIM_Try, /*On fail goto*//*Label 5056*/ GIMT_Encode4(220842), |
| 77915 | /* 219799 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 77916 | /* 219802 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 77917 | /* 219805 */ GIM_Try, /*On fail goto*//*Label 5057*/ GIMT_Encode4(219870), // Rule ID 23272 // |
| 77918 | /* 219810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77919 | /* 219813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77920 | /* 219817 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77921 | /* 219821 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77922 | /* 219825 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 77923 | /* 219832 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77924 | /* 219836 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77925 | /* 219840 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77926 | /* 219842 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77927 | /* 219849 */ // (strict_fmul:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (MUL_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77928 | /* 219849 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m64), |
| 77929 | /* 219852 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77930 | /* 219854 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77931 | /* 219856 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77932 | /* 219860 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77933 | /* 219863 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77934 | /* 219868 */ GIR_RootConstrainSelectedInstOperands, |
| 77935 | /* 219869 */ // GIR_Coverage, 23272, |
| 77936 | /* 219869 */ GIR_EraseRootFromParent_Done, |
| 77937 | /* 219870 */ // Label 5057: @219870 |
| 77938 | /* 219870 */ GIM_Try, /*On fail goto*//*Label 5058*/ GIMT_Encode4(219935), // Rule ID 23274 // |
| 77939 | /* 219875 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77940 | /* 219878 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77941 | /* 219882 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77942 | /* 219886 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77943 | /* 219890 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77944 | /* 219897 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77945 | /* 219901 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77946 | /* 219905 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77947 | /* 219907 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77948 | /* 219914 */ // (strict_fmul:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (MUL_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77949 | /* 219914 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m64), |
| 77950 | /* 219917 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77951 | /* 219919 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77952 | /* 219921 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77953 | /* 219925 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77954 | /* 219928 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77955 | /* 219933 */ GIR_RootConstrainSelectedInstOperands, |
| 77956 | /* 219934 */ // GIR_Coverage, 23274, |
| 77957 | /* 219934 */ GIR_EraseRootFromParent_Done, |
| 77958 | /* 219935 */ // Label 5058: @219935 |
| 77959 | /* 219935 */ GIM_Try, /*On fail goto*//*Label 5059*/ GIMT_Encode4(220000), // Rule ID 23260 // |
| 77960 | /* 219940 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77961 | /* 219943 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77962 | /* 219947 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77963 | /* 219951 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77964 | /* 219955 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77965 | /* 219958 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77966 | /* 219962 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77967 | /* 219966 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77968 | /* 219970 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77969 | /* 219972 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77970 | /* 219979 */ // (strict_fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP64:{ *:[f64] }:$src1) => (MUL_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77971 | /* 219979 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m), |
| 77972 | /* 219982 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77973 | /* 219984 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77974 | /* 219986 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77975 | /* 219990 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77976 | /* 219993 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77977 | /* 219998 */ GIR_RootConstrainSelectedInstOperands, |
| 77978 | /* 219999 */ // GIR_Coverage, 23260, |
| 77979 | /* 219999 */ GIR_EraseRootFromParent_Done, |
| 77980 | /* 220000 */ // Label 5059: @220000 |
| 77981 | /* 220000 */ GIM_Try, /*On fail goto*//*Label 5060*/ GIMT_Encode4(220072), // Rule ID 23262 // |
| 77982 | /* 220005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77983 | /* 220008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77984 | /* 220012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77985 | /* 220016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77986 | /* 220020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77987 | /* 220023 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77988 | /* 220027 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77989 | /* 220034 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77990 | /* 220038 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77991 | /* 220042 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77992 | /* 220044 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77993 | /* 220051 */ // (strict_fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP64:{ *:[f64] }:$src1) => (MUL_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77994 | /* 220051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m32), |
| 77995 | /* 220054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77996 | /* 220056 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77997 | /* 220058 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77998 | /* 220062 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77999 | /* 220065 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78000 | /* 220070 */ GIR_RootConstrainSelectedInstOperands, |
| 78001 | /* 220071 */ // GIR_Coverage, 23262, |
| 78002 | /* 220071 */ GIR_EraseRootFromParent_Done, |
| 78003 | /* 220072 */ // Label 5060: @220072 |
| 78004 | /* 220072 */ GIM_Try, /*On fail goto*//*Label 5061*/ GIMT_Encode4(220134), // Rule ID 23403 // |
| 78005 | /* 220077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 78006 | /* 220080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78007 | /* 220084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78008 | /* 220088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78009 | /* 220092 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78010 | /* 220095 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78011 | /* 220099 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78012 | /* 220103 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78013 | /* 220107 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78014 | /* 220109 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78015 | /* 220116 */ // (strict_fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (VMULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78016 | /* 220116 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 78017 | /* 220119 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78018 | /* 220121 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78019 | /* 220123 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78020 | /* 220127 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78021 | /* 220132 */ GIR_RootConstrainSelectedInstOperands, |
| 78022 | /* 220133 */ // GIR_Coverage, 23403, |
| 78023 | /* 220133 */ GIR_EraseRootFromParent_Done, |
| 78024 | /* 220134 */ // Label 5061: @220134 |
| 78025 | /* 220134 */ GIM_Try, /*On fail goto*//*Label 5062*/ GIMT_Encode4(220196), // Rule ID 23407 // |
| 78026 | /* 220139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 78027 | /* 220142 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78028 | /* 220146 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78029 | /* 220150 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78030 | /* 220154 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78031 | /* 220157 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78032 | /* 220161 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78033 | /* 220165 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78034 | /* 220169 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78035 | /* 220171 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78036 | /* 220178 */ // (strict_fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (MULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78037 | /* 220178 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 78038 | /* 220181 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78039 | /* 220183 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78040 | /* 220185 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78041 | /* 220189 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78042 | /* 220194 */ GIR_RootConstrainSelectedInstOperands, |
| 78043 | /* 220195 */ // GIR_Coverage, 23407, |
| 78044 | /* 220195 */ GIR_EraseRootFromParent_Done, |
| 78045 | /* 220196 */ // Label 5062: @220196 |
| 78046 | /* 220196 */ GIM_Try, /*On fail goto*//*Label 5063*/ GIMT_Encode4(220258), // Rule ID 24253 // |
| 78047 | /* 220201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 78048 | /* 220204 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 78049 | /* 220208 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78050 | /* 220212 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78051 | /* 220216 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78052 | /* 220219 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78053 | /* 220223 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78054 | /* 220227 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 78055 | /* 220231 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78056 | /* 220233 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78057 | /* 220240 */ // (strict_fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64X:{ *:[f64] }:$src1) => (VMULSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78058 | /* 220240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 78059 | /* 220243 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78060 | /* 220245 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78061 | /* 220247 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78062 | /* 220251 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78063 | /* 220256 */ GIR_RootConstrainSelectedInstOperands, |
| 78064 | /* 220257 */ // GIR_Coverage, 24253, |
| 78065 | /* 220257 */ GIR_EraseRootFromParent_Done, |
| 78066 | /* 220258 */ // Label 5063: @220258 |
| 78067 | /* 220258 */ GIM_Try, /*On fail goto*//*Label 5064*/ GIMT_Encode4(220323), // Rule ID 990 // |
| 78068 | /* 220263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 78069 | /* 220266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78070 | /* 220270 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78071 | /* 220274 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78072 | /* 220278 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 78073 | /* 220282 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 78074 | /* 220289 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78075 | /* 220293 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78076 | /* 220295 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78077 | /* 220302 */ // (strict_fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78078 | /* 220302 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m64), |
| 78079 | /* 220305 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78080 | /* 220307 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78081 | /* 220309 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78082 | /* 220313 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78083 | /* 220316 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78084 | /* 220321 */ GIR_RootConstrainSelectedInstOperands, |
| 78085 | /* 220322 */ // GIR_Coverage, 990, |
| 78086 | /* 220322 */ GIR_EraseRootFromParent_Done, |
| 78087 | /* 220323 */ // Label 5064: @220323 |
| 78088 | /* 220323 */ GIM_Try, /*On fail goto*//*Label 5065*/ GIMT_Encode4(220388), // Rule ID 992 // |
| 78089 | /* 220328 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 78090 | /* 220331 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78091 | /* 220335 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78092 | /* 220339 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78093 | /* 220343 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 78094 | /* 220347 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 78095 | /* 220354 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78096 | /* 220358 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78097 | /* 220360 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78098 | /* 220367 */ // (strict_fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78099 | /* 220367 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m64), |
| 78100 | /* 220370 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78101 | /* 220372 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78102 | /* 220374 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78103 | /* 220378 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78104 | /* 220381 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78105 | /* 220386 */ GIR_RootConstrainSelectedInstOperands, |
| 78106 | /* 220387 */ // GIR_Coverage, 992, |
| 78107 | /* 220387 */ GIR_EraseRootFromParent_Done, |
| 78108 | /* 220388 */ // Label 5065: @220388 |
| 78109 | /* 220388 */ GIM_Try, /*On fail goto*//*Label 5066*/ GIMT_Encode4(220453), // Rule ID 978 // |
| 78110 | /* 220393 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 78111 | /* 220396 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78112 | /* 220400 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78113 | /* 220404 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78114 | /* 220408 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78115 | /* 220412 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78116 | /* 220415 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78117 | /* 220419 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78118 | /* 220423 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78119 | /* 220425 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78120 | /* 220432 */ // (strict_fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MUL_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78121 | /* 220432 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m), |
| 78122 | /* 220435 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78123 | /* 220437 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78124 | /* 220439 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78125 | /* 220443 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78126 | /* 220446 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78127 | /* 220451 */ GIR_RootConstrainSelectedInstOperands, |
| 78128 | /* 220452 */ // GIR_Coverage, 978, |
| 78129 | /* 220452 */ GIR_EraseRootFromParent_Done, |
| 78130 | /* 220453 */ // Label 5066: @220453 |
| 78131 | /* 220453 */ GIM_Try, /*On fail goto*//*Label 5067*/ GIMT_Encode4(220525), // Rule ID 980 // |
| 78132 | /* 220458 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 78133 | /* 220461 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78134 | /* 220465 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78135 | /* 220469 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78136 | /* 220473 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78137 | /* 220477 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78138 | /* 220480 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78139 | /* 220484 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 78140 | /* 220491 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78141 | /* 220495 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78142 | /* 220497 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78143 | /* 220504 */ // (strict_fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (MUL_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78144 | /* 220504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m32), |
| 78145 | /* 220507 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78146 | /* 220509 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78147 | /* 220511 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78148 | /* 220515 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78149 | /* 220518 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78150 | /* 220523 */ GIR_RootConstrainSelectedInstOperands, |
| 78151 | /* 220524 */ // GIR_Coverage, 980, |
| 78152 | /* 220524 */ GIR_EraseRootFromParent_Done, |
| 78153 | /* 220525 */ // Label 5067: @220525 |
| 78154 | /* 220525 */ GIM_Try, /*On fail goto*//*Label 5068*/ GIMT_Encode4(220587), // Rule ID 2204 // |
| 78155 | /* 220530 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 78156 | /* 220533 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78157 | /* 220537 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78158 | /* 220541 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78159 | /* 220545 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78160 | /* 220549 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78161 | /* 220552 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78162 | /* 220556 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78163 | /* 220560 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78164 | /* 220562 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78165 | /* 220569 */ // (strict_fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78166 | /* 220569 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 78167 | /* 220572 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78168 | /* 220574 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78169 | /* 220576 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78170 | /* 220580 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78171 | /* 220585 */ GIR_RootConstrainSelectedInstOperands, |
| 78172 | /* 220586 */ // GIR_Coverage, 2204, |
| 78173 | /* 220586 */ GIR_EraseRootFromParent_Done, |
| 78174 | /* 220587 */ // Label 5068: @220587 |
| 78175 | /* 220587 */ GIM_Try, /*On fail goto*//*Label 5069*/ GIMT_Encode4(220649), // Rule ID 2212 // |
| 78176 | /* 220592 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 78177 | /* 220595 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78178 | /* 220599 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78179 | /* 220603 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78180 | /* 220607 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78181 | /* 220611 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78182 | /* 220614 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78183 | /* 220618 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78184 | /* 220622 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78185 | /* 220624 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78186 | /* 220631 */ // (strict_fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78187 | /* 220631 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 78188 | /* 220634 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78189 | /* 220636 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78190 | /* 220638 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78191 | /* 220642 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78192 | /* 220647 */ GIR_RootConstrainSelectedInstOperands, |
| 78193 | /* 220648 */ // GIR_Coverage, 2212, |
| 78194 | /* 220648 */ GIR_EraseRootFromParent_Done, |
| 78195 | /* 220649 */ // Label 5069: @220649 |
| 78196 | /* 220649 */ GIM_Try, /*On fail goto*//*Label 5070*/ GIMT_Encode4(220711), // Rule ID 5992 // |
| 78197 | /* 220654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 78198 | /* 220657 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 78199 | /* 220661 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 78200 | /* 220665 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78201 | /* 220669 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78202 | /* 220673 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78203 | /* 220676 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78204 | /* 220680 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78205 | /* 220684 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78206 | /* 220686 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78207 | /* 220693 */ // (strict_fmul:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78208 | /* 220693 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 78209 | /* 220696 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78210 | /* 220698 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78211 | /* 220700 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78212 | /* 220704 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78213 | /* 220709 */ GIR_RootConstrainSelectedInstOperands, |
| 78214 | /* 220710 */ // GIR_Coverage, 5992, |
| 78215 | /* 220710 */ GIR_EraseRootFromParent_Done, |
| 78216 | /* 220711 */ // Label 5070: @220711 |
| 78217 | /* 220711 */ GIM_Try, /*On fail goto*//*Label 5071*/ GIMT_Encode4(220748), // Rule ID 900 // |
| 78218 | /* 220716 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 78219 | /* 220719 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78220 | /* 220723 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78221 | /* 220727 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 78222 | /* 220731 */ // (strict_fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (MUL_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 78223 | /* 220731 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64), |
| 78224 | /* 220736 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 78225 | /* 220742 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 78226 | /* 220746 */ GIR_RootConstrainSelectedInstOperands, |
| 78227 | /* 220747 */ // GIR_Coverage, 900, |
| 78228 | /* 220747 */ GIR_Done, |
| 78229 | /* 220748 */ // Label 5071: @220748 |
| 78230 | /* 220748 */ GIM_Try, /*On fail goto*//*Label 5072*/ GIMT_Encode4(220779), // Rule ID 2202 // |
| 78231 | /* 220753 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 78232 | /* 220756 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78233 | /* 220760 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78234 | /* 220764 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78235 | /* 220768 */ // (strict_fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VMULSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 78236 | /* 220768 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSDrr), |
| 78237 | /* 220773 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78238 | /* 220777 */ GIR_RootConstrainSelectedInstOperands, |
| 78239 | /* 220778 */ // GIR_Coverage, 2202, |
| 78240 | /* 220778 */ GIR_Done, |
| 78241 | /* 220779 */ // Label 5072: @220779 |
| 78242 | /* 220779 */ GIM_Try, /*On fail goto*//*Label 5073*/ GIMT_Encode4(220810), // Rule ID 2210 // |
| 78243 | /* 220784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 78244 | /* 220787 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78245 | /* 220791 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78246 | /* 220795 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 78247 | /* 220799 */ // (strict_fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (MULSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 78248 | /* 220799 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULSDrr), |
| 78249 | /* 220804 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78250 | /* 220808 */ GIR_RootConstrainSelectedInstOperands, |
| 78251 | /* 220809 */ // GIR_Coverage, 2210, |
| 78252 | /* 220809 */ GIR_Done, |
| 78253 | /* 220810 */ // Label 5073: @220810 |
| 78254 | /* 220810 */ GIM_Try, /*On fail goto*//*Label 5074*/ GIMT_Encode4(220841), // Rule ID 5990 // |
| 78255 | /* 220815 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 78256 | /* 220818 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 78257 | /* 220822 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 78258 | /* 220826 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 78259 | /* 220830 */ // (strict_fmul:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VMULSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 78260 | /* 220830 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSDZrr), |
| 78261 | /* 220835 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78262 | /* 220839 */ GIR_RootConstrainSelectedInstOperands, |
| 78263 | /* 220840 */ // GIR_Coverage, 5990, |
| 78264 | /* 220840 */ GIR_Done, |
| 78265 | /* 220841 */ // Label 5074: @220841 |
| 78266 | /* 220841 */ GIM_Reject, |
| 78267 | /* 220842 */ // Label 5056: @220842 |
| 78268 | /* 220842 */ GIM_Reject, |
| 78269 | /* 220843 */ // Label 5024: @220843 |
| 78270 | /* 220843 */ GIM_Try, /*On fail goto*//*Label 5075*/ GIMT_Encode4(221408), |
| 78271 | /* 220848 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 78272 | /* 220851 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 78273 | /* 220854 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78274 | /* 220858 */ GIM_Try, /*On fail goto*//*Label 5076*/ GIMT_Encode4(220919), // Rule ID 23276 // |
| 78275 | /* 220863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 78276 | /* 220866 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78277 | /* 220870 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 78278 | /* 220874 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 78279 | /* 220881 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78280 | /* 220885 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78281 | /* 220889 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78282 | /* 220891 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78283 | /* 220898 */ // (strict_fmul:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (MUL_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78284 | /* 220898 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m80), |
| 78285 | /* 220901 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78286 | /* 220903 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78287 | /* 220905 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78288 | /* 220909 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78289 | /* 220912 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78290 | /* 220917 */ GIR_RootConstrainSelectedInstOperands, |
| 78291 | /* 220918 */ // GIR_Coverage, 23276, |
| 78292 | /* 220918 */ GIR_EraseRootFromParent_Done, |
| 78293 | /* 220919 */ // Label 5076: @220919 |
| 78294 | /* 220919 */ GIM_Try, /*On fail goto*//*Label 5077*/ GIMT_Encode4(220980), // Rule ID 23278 // |
| 78295 | /* 220924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 78296 | /* 220927 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78297 | /* 220931 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 78298 | /* 220935 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 78299 | /* 220942 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78300 | /* 220946 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78301 | /* 220950 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78302 | /* 220952 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78303 | /* 220959 */ // (strict_fmul:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (MUL_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78304 | /* 220959 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m80), |
| 78305 | /* 220962 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78306 | /* 220964 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78307 | /* 220966 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78308 | /* 220970 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78309 | /* 220973 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78310 | /* 220978 */ GIR_RootConstrainSelectedInstOperands, |
| 78311 | /* 220979 */ // GIR_Coverage, 23278, |
| 78312 | /* 220979 */ GIR_EraseRootFromParent_Done, |
| 78313 | /* 220980 */ // Label 5077: @220980 |
| 78314 | /* 220980 */ GIM_Try, /*On fail goto*//*Label 5078*/ GIMT_Encode4(221048), // Rule ID 23264 // |
| 78315 | /* 220985 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 78316 | /* 220988 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78317 | /* 220992 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78318 | /* 220996 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78319 | /* 220999 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78320 | /* 221003 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 78321 | /* 221010 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78322 | /* 221014 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78323 | /* 221018 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78324 | /* 221020 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78325 | /* 221027 */ // (strict_fmul:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP80:{ *:[f80] }:$src1) => (MUL_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78326 | /* 221027 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m32), |
| 78327 | /* 221030 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78328 | /* 221032 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78329 | /* 221034 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78330 | /* 221038 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78331 | /* 221041 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78332 | /* 221046 */ GIR_RootConstrainSelectedInstOperands, |
| 78333 | /* 221047 */ // GIR_Coverage, 23264, |
| 78334 | /* 221047 */ GIR_EraseRootFromParent_Done, |
| 78335 | /* 221048 */ // Label 5078: @221048 |
| 78336 | /* 221048 */ GIM_Try, /*On fail goto*//*Label 5079*/ GIMT_Encode4(221116), // Rule ID 23266 // |
| 78337 | /* 221053 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 78338 | /* 221056 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78339 | /* 221060 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78340 | /* 221064 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78341 | /* 221067 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78342 | /* 221071 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 78343 | /* 221078 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78344 | /* 221082 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78345 | /* 221086 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78346 | /* 221088 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78347 | /* 221095 */ // (strict_fmul:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>, RFP80:{ *:[f80] }:$src1) => (MUL_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78348 | /* 221095 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m64), |
| 78349 | /* 221098 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78350 | /* 221100 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78351 | /* 221102 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78352 | /* 221106 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78353 | /* 221109 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78354 | /* 221114 */ GIR_RootConstrainSelectedInstOperands, |
| 78355 | /* 221115 */ // GIR_Coverage, 23266, |
| 78356 | /* 221115 */ GIR_EraseRootFromParent_Done, |
| 78357 | /* 221116 */ // Label 5079: @221116 |
| 78358 | /* 221116 */ GIM_Try, /*On fail goto*//*Label 5080*/ GIMT_Encode4(221177), // Rule ID 994 // |
| 78359 | /* 221121 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 78360 | /* 221124 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78361 | /* 221128 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78362 | /* 221132 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 78363 | /* 221136 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 78364 | /* 221143 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78365 | /* 221147 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78366 | /* 221149 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78367 | /* 221156 */ // (strict_fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78368 | /* 221156 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m80), |
| 78369 | /* 221159 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78370 | /* 221161 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78371 | /* 221163 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78372 | /* 221167 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78373 | /* 221170 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78374 | /* 221175 */ GIR_RootConstrainSelectedInstOperands, |
| 78375 | /* 221176 */ // GIR_Coverage, 994, |
| 78376 | /* 221176 */ GIR_EraseRootFromParent_Done, |
| 78377 | /* 221177 */ // Label 5080: @221177 |
| 78378 | /* 221177 */ GIM_Try, /*On fail goto*//*Label 5081*/ GIMT_Encode4(221238), // Rule ID 996 // |
| 78379 | /* 221182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 78380 | /* 221185 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78381 | /* 221189 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78382 | /* 221193 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 78383 | /* 221197 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 78384 | /* 221204 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78385 | /* 221208 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78386 | /* 221210 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78387 | /* 221217 */ // (strict_fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78388 | /* 221217 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m80), |
| 78389 | /* 221220 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78390 | /* 221222 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78391 | /* 221224 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78392 | /* 221228 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78393 | /* 221231 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78394 | /* 221236 */ GIR_RootConstrainSelectedInstOperands, |
| 78395 | /* 221237 */ // GIR_Coverage, 996, |
| 78396 | /* 221237 */ GIR_EraseRootFromParent_Done, |
| 78397 | /* 221238 */ // Label 5081: @221238 |
| 78398 | /* 221238 */ GIM_Try, /*On fail goto*//*Label 5082*/ GIMT_Encode4(221306), // Rule ID 982 // |
| 78399 | /* 221243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 78400 | /* 221246 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78401 | /* 221250 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78402 | /* 221254 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78403 | /* 221258 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78404 | /* 221261 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78405 | /* 221265 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 78406 | /* 221272 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78407 | /* 221276 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78408 | /* 221278 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78409 | /* 221285 */ // (strict_fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (MUL_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78410 | /* 221285 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m32), |
| 78411 | /* 221288 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78412 | /* 221290 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78413 | /* 221292 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78414 | /* 221296 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78415 | /* 221299 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78416 | /* 221304 */ GIR_RootConstrainSelectedInstOperands, |
| 78417 | /* 221305 */ // GIR_Coverage, 982, |
| 78418 | /* 221305 */ GIR_EraseRootFromParent_Done, |
| 78419 | /* 221306 */ // Label 5082: @221306 |
| 78420 | /* 221306 */ GIM_Try, /*On fail goto*//*Label 5083*/ GIMT_Encode4(221374), // Rule ID 984 // |
| 78421 | /* 221311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 78422 | /* 221314 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78423 | /* 221318 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78424 | /* 221322 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78425 | /* 221326 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78426 | /* 221329 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78427 | /* 221333 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 78428 | /* 221340 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78429 | /* 221344 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78430 | /* 221346 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78431 | /* 221353 */ // (strict_fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>) => (MUL_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78432 | /* 221353 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m64), |
| 78433 | /* 221356 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78434 | /* 221358 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78435 | /* 221360 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78436 | /* 221364 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78437 | /* 221367 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78438 | /* 221372 */ GIR_RootConstrainSelectedInstOperands, |
| 78439 | /* 221373 */ // GIR_Coverage, 984, |
| 78440 | /* 221373 */ GIR_EraseRootFromParent_Done, |
| 78441 | /* 221374 */ // Label 5083: @221374 |
| 78442 | /* 221374 */ GIM_Try, /*On fail goto*//*Label 5084*/ GIMT_Encode4(221407), // Rule ID 902 // |
| 78443 | /* 221379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 78444 | /* 221382 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78445 | /* 221386 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 78446 | /* 221390 */ // (strict_fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (MUL_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 78447 | /* 221390 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80), |
| 78448 | /* 221395 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 78449 | /* 221401 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 78450 | /* 221405 */ GIR_RootConstrainSelectedInstOperands, |
| 78451 | /* 221406 */ // GIR_Coverage, 902, |
| 78452 | /* 221406 */ GIR_Done, |
| 78453 | /* 221407 */ // Label 5084: @221407 |
| 78454 | /* 221407 */ GIM_Reject, |
| 78455 | /* 221408 */ // Label 5075: @221408 |
| 78456 | /* 221408 */ GIM_Reject, |
| 78457 | /* 221409 */ // Label 5025: @221409 |
| 78458 | /* 221409 */ GIM_Try, /*On fail goto*//*Label 5085*/ GIMT_Encode4(221762), |
| 78459 | /* 221414 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 78460 | /* 221417 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 78461 | /* 221420 */ GIM_Try, /*On fail goto*//*Label 5086*/ GIMT_Encode4(221482), // Rule ID 23391 // |
| 78462 | /* 221425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78463 | /* 221428 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78464 | /* 221432 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78465 | /* 221436 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78466 | /* 221440 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78467 | /* 221443 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78468 | /* 221447 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78469 | /* 221451 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78470 | /* 221455 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78471 | /* 221457 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78472 | /* 221464 */ // (strict_fmul:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1) => (VMULPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78473 | /* 221464 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDrm), |
| 78474 | /* 221467 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78475 | /* 221469 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78476 | /* 221471 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78477 | /* 221475 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78478 | /* 221480 */ GIR_RootConstrainSelectedInstOperands, |
| 78479 | /* 221481 */ // GIR_Coverage, 23391, |
| 78480 | /* 221481 */ GIR_EraseRootFromParent_Done, |
| 78481 | /* 221482 */ // Label 5086: @221482 |
| 78482 | /* 221482 */ GIM_Try, /*On fail goto*//*Label 5087*/ GIMT_Encode4(221544), // Rule ID 24367 // |
| 78483 | /* 221487 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78484 | /* 221490 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78485 | /* 221494 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78486 | /* 221498 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78487 | /* 221502 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78488 | /* 221505 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78489 | /* 221509 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78490 | /* 221513 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78491 | /* 221517 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78492 | /* 221519 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78493 | /* 221526 */ // (strict_fmul:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2f64] }:$src1) => (VMULPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78494 | /* 221526 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rm), |
| 78495 | /* 221529 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78496 | /* 221531 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78497 | /* 221533 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78498 | /* 221537 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78499 | /* 221542 */ GIR_RootConstrainSelectedInstOperands, |
| 78500 | /* 221543 */ // GIR_Coverage, 24367, |
| 78501 | /* 221543 */ GIR_EraseRootFromParent_Done, |
| 78502 | /* 221544 */ // Label 5087: @221544 |
| 78503 | /* 221544 */ GIM_Try, /*On fail goto*//*Label 5088*/ GIMT_Encode4(221606), // Rule ID 2180 // |
| 78504 | /* 221549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78505 | /* 221552 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78506 | /* 221556 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78507 | /* 221560 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78508 | /* 221564 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78509 | /* 221568 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78510 | /* 221571 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78511 | /* 221575 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78512 | /* 221579 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78513 | /* 221581 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78514 | /* 221588 */ // (strict_fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78515 | /* 221588 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDrm), |
| 78516 | /* 221591 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78517 | /* 221593 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78518 | /* 221595 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78519 | /* 221599 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78520 | /* 221604 */ GIR_RootConstrainSelectedInstOperands, |
| 78521 | /* 221605 */ // GIR_Coverage, 2180, |
| 78522 | /* 221605 */ GIR_EraseRootFromParent_Done, |
| 78523 | /* 221606 */ // Label 5088: @221606 |
| 78524 | /* 221606 */ GIM_Try, /*On fail goto*//*Label 5089*/ GIMT_Encode4(221668), // Rule ID 6425 // |
| 78525 | /* 221611 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78526 | /* 221614 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78527 | /* 221618 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78528 | /* 221622 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78529 | /* 221626 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78530 | /* 221630 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78531 | /* 221633 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78532 | /* 221637 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78533 | /* 221641 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78534 | /* 221643 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78535 | /* 221650 */ // (strict_fmul:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78536 | /* 221650 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rm), |
| 78537 | /* 221653 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78538 | /* 221655 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78539 | /* 221657 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78540 | /* 221661 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78541 | /* 221666 */ GIR_RootConstrainSelectedInstOperands, |
| 78542 | /* 221667 */ // GIR_Coverage, 6425, |
| 78543 | /* 221667 */ GIR_EraseRootFromParent_Done, |
| 78544 | /* 221668 */ // Label 5089: @221668 |
| 78545 | /* 221668 */ GIM_Try, /*On fail goto*//*Label 5090*/ GIMT_Encode4(221699), // Rule ID 2178 // |
| 78546 | /* 221673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78547 | /* 221676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78548 | /* 221680 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78549 | /* 221684 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78550 | /* 221688 */ // (strict_fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VMULPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 78551 | /* 221688 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDrr), |
| 78552 | /* 221693 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78553 | /* 221697 */ GIR_RootConstrainSelectedInstOperands, |
| 78554 | /* 221698 */ // GIR_Coverage, 2178, |
| 78555 | /* 221698 */ GIR_Done, |
| 78556 | /* 221699 */ // Label 5090: @221699 |
| 78557 | /* 221699 */ GIM_Try, /*On fail goto*//*Label 5091*/ GIMT_Encode4(221730), // Rule ID 2194 // |
| 78558 | /* 221704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 78559 | /* 221707 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78560 | /* 221711 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78561 | /* 221715 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78562 | /* 221719 */ // (strict_fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (MULPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 78563 | /* 221719 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULPDrr), |
| 78564 | /* 221724 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78565 | /* 221728 */ GIR_RootConstrainSelectedInstOperands, |
| 78566 | /* 221729 */ // GIR_Coverage, 2194, |
| 78567 | /* 221729 */ GIR_Done, |
| 78568 | /* 221730 */ // Label 5091: @221730 |
| 78569 | /* 221730 */ GIM_Try, /*On fail goto*//*Label 5092*/ GIMT_Encode4(221761), // Rule ID 6421 // |
| 78570 | /* 221735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78571 | /* 221738 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78572 | /* 221742 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78573 | /* 221746 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78574 | /* 221750 */ // (strict_fmul:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VMULPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 78575 | /* 221750 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rr), |
| 78576 | /* 221755 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78577 | /* 221759 */ GIR_RootConstrainSelectedInstOperands, |
| 78578 | /* 221760 */ // GIR_Coverage, 6421, |
| 78579 | /* 221760 */ GIR_Done, |
| 78580 | /* 221761 */ // Label 5092: @221761 |
| 78581 | /* 221761 */ GIM_Reject, |
| 78582 | /* 221762 */ // Label 5085: @221762 |
| 78583 | /* 221762 */ GIM_Reject, |
| 78584 | /* 221763 */ // Label 5026: @221763 |
| 78585 | /* 221763 */ GIM_Try, /*On fail goto*//*Label 5093*/ GIMT_Encode4(222116), |
| 78586 | /* 221768 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 78587 | /* 221771 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 78588 | /* 221774 */ GIM_Try, /*On fail goto*//*Label 5094*/ GIMT_Encode4(221836), // Rule ID 23389 // |
| 78589 | /* 221779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78590 | /* 221782 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78591 | /* 221786 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78592 | /* 221790 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78593 | /* 221794 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78594 | /* 221797 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78595 | /* 221801 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78596 | /* 221805 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78597 | /* 221809 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78598 | /* 221811 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78599 | /* 221818 */ // (strict_fmul:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1) => (VMULPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78600 | /* 221818 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSrm), |
| 78601 | /* 221821 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78602 | /* 221823 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78603 | /* 221825 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78604 | /* 221829 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78605 | /* 221834 */ GIR_RootConstrainSelectedInstOperands, |
| 78606 | /* 221835 */ // GIR_Coverage, 23389, |
| 78607 | /* 221835 */ GIR_EraseRootFromParent_Done, |
| 78608 | /* 221836 */ // Label 5094: @221836 |
| 78609 | /* 221836 */ GIM_Try, /*On fail goto*//*Label 5095*/ GIMT_Encode4(221898), // Rule ID 24351 // |
| 78610 | /* 221841 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78611 | /* 221844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78612 | /* 221848 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78613 | /* 221852 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78614 | /* 221856 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78615 | /* 221859 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78616 | /* 221863 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78617 | /* 221867 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78618 | /* 221871 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78619 | /* 221873 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78620 | /* 221880 */ // (strict_fmul:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4f32] }:$src1) => (VMULPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78621 | /* 221880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rm), |
| 78622 | /* 221883 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78623 | /* 221885 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78624 | /* 221887 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78625 | /* 221891 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78626 | /* 221896 */ GIR_RootConstrainSelectedInstOperands, |
| 78627 | /* 221897 */ // GIR_Coverage, 24351, |
| 78628 | /* 221897 */ GIR_EraseRootFromParent_Done, |
| 78629 | /* 221898 */ // Label 5095: @221898 |
| 78630 | /* 221898 */ GIM_Try, /*On fail goto*//*Label 5096*/ GIMT_Encode4(221960), // Rule ID 2176 // |
| 78631 | /* 221903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78632 | /* 221906 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78633 | /* 221910 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78634 | /* 221914 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78635 | /* 221918 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78636 | /* 221922 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78637 | /* 221925 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78638 | /* 221929 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78639 | /* 221933 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78640 | /* 221935 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78641 | /* 221942 */ // (strict_fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78642 | /* 221942 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSrm), |
| 78643 | /* 221945 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78644 | /* 221947 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78645 | /* 221949 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78646 | /* 221953 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78647 | /* 221958 */ GIR_RootConstrainSelectedInstOperands, |
| 78648 | /* 221959 */ // GIR_Coverage, 2176, |
| 78649 | /* 221959 */ GIR_EraseRootFromParent_Done, |
| 78650 | /* 221960 */ // Label 5096: @221960 |
| 78651 | /* 221960 */ GIM_Try, /*On fail goto*//*Label 5097*/ GIMT_Encode4(222022), // Rule ID 6401 // |
| 78652 | /* 221965 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78653 | /* 221968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78654 | /* 221972 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78655 | /* 221976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78656 | /* 221980 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78657 | /* 221984 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78658 | /* 221987 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78659 | /* 221991 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78660 | /* 221995 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78661 | /* 221997 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78662 | /* 222004 */ // (strict_fmul:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78663 | /* 222004 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rm), |
| 78664 | /* 222007 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78665 | /* 222009 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78666 | /* 222011 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78667 | /* 222015 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78668 | /* 222020 */ GIR_RootConstrainSelectedInstOperands, |
| 78669 | /* 222021 */ // GIR_Coverage, 6401, |
| 78670 | /* 222021 */ GIR_EraseRootFromParent_Done, |
| 78671 | /* 222022 */ // Label 5097: @222022 |
| 78672 | /* 222022 */ GIM_Try, /*On fail goto*//*Label 5098*/ GIMT_Encode4(222053), // Rule ID 2174 // |
| 78673 | /* 222027 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78674 | /* 222030 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78675 | /* 222034 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78676 | /* 222038 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78677 | /* 222042 */ // (strict_fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VMULPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 78678 | /* 222042 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSrr), |
| 78679 | /* 222047 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78680 | /* 222051 */ GIR_RootConstrainSelectedInstOperands, |
| 78681 | /* 222052 */ // GIR_Coverage, 2174, |
| 78682 | /* 222052 */ GIR_Done, |
| 78683 | /* 222053 */ // Label 5098: @222053 |
| 78684 | /* 222053 */ GIM_Try, /*On fail goto*//*Label 5099*/ GIMT_Encode4(222084), // Rule ID 2190 // |
| 78685 | /* 222058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 78686 | /* 222061 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78687 | /* 222065 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78688 | /* 222069 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78689 | /* 222073 */ // (strict_fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (MULPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 78690 | /* 222073 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULPSrr), |
| 78691 | /* 222078 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78692 | /* 222082 */ GIR_RootConstrainSelectedInstOperands, |
| 78693 | /* 222083 */ // GIR_Coverage, 2190, |
| 78694 | /* 222083 */ GIR_Done, |
| 78695 | /* 222084 */ // Label 5099: @222084 |
| 78696 | /* 222084 */ GIM_Try, /*On fail goto*//*Label 5100*/ GIMT_Encode4(222115), // Rule ID 6397 // |
| 78697 | /* 222089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78698 | /* 222092 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78699 | /* 222096 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78700 | /* 222100 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78701 | /* 222104 */ // (strict_fmul:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VMULPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 78702 | /* 222104 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rr), |
| 78703 | /* 222109 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78704 | /* 222113 */ GIR_RootConstrainSelectedInstOperands, |
| 78705 | /* 222114 */ // GIR_Coverage, 6397, |
| 78706 | /* 222114 */ GIR_Done, |
| 78707 | /* 222115 */ // Label 5100: @222115 |
| 78708 | /* 222115 */ GIM_Reject, |
| 78709 | /* 222116 */ // Label 5093: @222116 |
| 78710 | /* 222116 */ GIM_Reject, |
| 78711 | /* 222117 */ // Label 5027: @222117 |
| 78712 | /* 222117 */ GIM_Try, /*On fail goto*//*Label 5101*/ GIMT_Encode4(222439), |
| 78713 | /* 222122 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 78714 | /* 222125 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 78715 | /* 222128 */ GIM_Try, /*On fail goto*//*Label 5102*/ GIMT_Encode4(222190), // Rule ID 23395 // |
| 78716 | /* 222133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78717 | /* 222136 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78718 | /* 222140 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78719 | /* 222144 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78720 | /* 222148 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78721 | /* 222151 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78722 | /* 222155 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78723 | /* 222159 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78724 | /* 222163 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78725 | /* 222165 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78726 | /* 222172 */ // (strict_fmul:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1) => (VMULPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78727 | /* 222172 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDYrm), |
| 78728 | /* 222175 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78729 | /* 222177 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78730 | /* 222179 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78731 | /* 222183 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78732 | /* 222188 */ GIR_RootConstrainSelectedInstOperands, |
| 78733 | /* 222189 */ // GIR_Coverage, 23395, |
| 78734 | /* 222189 */ GIR_EraseRootFromParent_Done, |
| 78735 | /* 222190 */ // Label 5102: @222190 |
| 78736 | /* 222190 */ GIM_Try, /*On fail goto*//*Label 5103*/ GIMT_Encode4(222252), // Rule ID 24375 // |
| 78737 | /* 222195 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78738 | /* 222198 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78739 | /* 222202 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78740 | /* 222206 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78741 | /* 222210 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78742 | /* 222213 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78743 | /* 222217 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78744 | /* 222221 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78745 | /* 222225 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78746 | /* 222227 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78747 | /* 222234 */ // (strict_fmul:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4f64] }:$src1) => (VMULPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78748 | /* 222234 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rm), |
| 78749 | /* 222237 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78750 | /* 222239 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78751 | /* 222241 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78752 | /* 222245 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78753 | /* 222250 */ GIR_RootConstrainSelectedInstOperands, |
| 78754 | /* 222251 */ // GIR_Coverage, 24375, |
| 78755 | /* 222251 */ GIR_EraseRootFromParent_Done, |
| 78756 | /* 222252 */ // Label 5103: @222252 |
| 78757 | /* 222252 */ GIM_Try, /*On fail goto*//*Label 5104*/ GIMT_Encode4(222314), // Rule ID 2188 // |
| 78758 | /* 222257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78759 | /* 222260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78760 | /* 222264 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78761 | /* 222268 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78762 | /* 222272 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78763 | /* 222276 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78764 | /* 222279 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78765 | /* 222283 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78766 | /* 222287 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78767 | /* 222289 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78768 | /* 222296 */ // (strict_fmul:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78769 | /* 222296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDYrm), |
| 78770 | /* 222299 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78771 | /* 222301 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78772 | /* 222303 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78773 | /* 222307 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78774 | /* 222312 */ GIR_RootConstrainSelectedInstOperands, |
| 78775 | /* 222313 */ // GIR_Coverage, 2188, |
| 78776 | /* 222313 */ GIR_EraseRootFromParent_Done, |
| 78777 | /* 222314 */ // Label 5104: @222314 |
| 78778 | /* 222314 */ GIM_Try, /*On fail goto*//*Label 5105*/ GIMT_Encode4(222376), // Rule ID 6437 // |
| 78779 | /* 222319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78780 | /* 222322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78781 | /* 222326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78782 | /* 222330 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78783 | /* 222334 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78784 | /* 222338 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78785 | /* 222341 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78786 | /* 222345 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78787 | /* 222349 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78788 | /* 222351 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78789 | /* 222358 */ // (strict_fmul:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78790 | /* 222358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rm), |
| 78791 | /* 222361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78792 | /* 222363 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78793 | /* 222365 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78794 | /* 222369 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78795 | /* 222374 */ GIR_RootConstrainSelectedInstOperands, |
| 78796 | /* 222375 */ // GIR_Coverage, 6437, |
| 78797 | /* 222375 */ GIR_EraseRootFromParent_Done, |
| 78798 | /* 222376 */ // Label 5105: @222376 |
| 78799 | /* 222376 */ GIM_Try, /*On fail goto*//*Label 5106*/ GIMT_Encode4(222407), // Rule ID 2186 // |
| 78800 | /* 222381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78801 | /* 222384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78802 | /* 222388 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78803 | /* 222392 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78804 | /* 222396 */ // (strict_fmul:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VMULPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 78805 | /* 222396 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDYrr), |
| 78806 | /* 222401 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78807 | /* 222405 */ GIR_RootConstrainSelectedInstOperands, |
| 78808 | /* 222406 */ // GIR_Coverage, 2186, |
| 78809 | /* 222406 */ GIR_Done, |
| 78810 | /* 222407 */ // Label 5106: @222407 |
| 78811 | /* 222407 */ GIM_Try, /*On fail goto*//*Label 5107*/ GIMT_Encode4(222438), // Rule ID 6433 // |
| 78812 | /* 222412 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78813 | /* 222415 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78814 | /* 222419 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78815 | /* 222423 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78816 | /* 222427 */ // (strict_fmul:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VMULPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 78817 | /* 222427 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rr), |
| 78818 | /* 222432 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78819 | /* 222436 */ GIR_RootConstrainSelectedInstOperands, |
| 78820 | /* 222437 */ // GIR_Coverage, 6433, |
| 78821 | /* 222437 */ GIR_Done, |
| 78822 | /* 222438 */ // Label 5107: @222438 |
| 78823 | /* 222438 */ GIM_Reject, |
| 78824 | /* 222439 */ // Label 5101: @222439 |
| 78825 | /* 222439 */ GIM_Reject, |
| 78826 | /* 222440 */ // Label 5028: @222440 |
| 78827 | /* 222440 */ GIM_Try, /*On fail goto*//*Label 5108*/ GIMT_Encode4(222599), |
| 78828 | /* 222445 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 78829 | /* 222448 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 78830 | /* 222451 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78831 | /* 222455 */ GIM_Try, /*On fail goto*//*Label 5109*/ GIMT_Encode4(222513), // Rule ID 24391 // |
| 78832 | /* 222460 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 78833 | /* 222463 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78834 | /* 222467 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78835 | /* 222471 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78836 | /* 222474 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78837 | /* 222478 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78838 | /* 222482 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78839 | /* 222486 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78840 | /* 222488 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78841 | /* 222495 */ // (strict_fmul:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src1) => (VMULPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78842 | /* 222495 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rm), |
| 78843 | /* 222498 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78844 | /* 222500 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78845 | /* 222502 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78846 | /* 222506 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78847 | /* 222511 */ GIR_RootConstrainSelectedInstOperands, |
| 78848 | /* 222512 */ // GIR_Coverage, 24391, |
| 78849 | /* 222512 */ GIR_EraseRootFromParent_Done, |
| 78850 | /* 222513 */ // Label 5109: @222513 |
| 78851 | /* 222513 */ GIM_Try, /*On fail goto*//*Label 5110*/ GIMT_Encode4(222571), // Rule ID 6461 // |
| 78852 | /* 222518 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 78853 | /* 222521 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78854 | /* 222525 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78855 | /* 222529 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78856 | /* 222533 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78857 | /* 222536 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78858 | /* 222540 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78859 | /* 222544 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78860 | /* 222546 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78861 | /* 222553 */ // (strict_fmul:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78862 | /* 222553 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rm), |
| 78863 | /* 222556 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78864 | /* 222558 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78865 | /* 222560 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78866 | /* 222564 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78867 | /* 222569 */ GIR_RootConstrainSelectedInstOperands, |
| 78868 | /* 222570 */ // GIR_Coverage, 6461, |
| 78869 | /* 222570 */ GIR_EraseRootFromParent_Done, |
| 78870 | /* 222571 */ // Label 5110: @222571 |
| 78871 | /* 222571 */ GIM_Try, /*On fail goto*//*Label 5111*/ GIMT_Encode4(222598), // Rule ID 6457 // |
| 78872 | /* 222576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 78873 | /* 222579 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78874 | /* 222583 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78875 | /* 222587 */ // (strict_fmul:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VMULPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 78876 | /* 222587 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rr), |
| 78877 | /* 222592 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78878 | /* 222596 */ GIR_RootConstrainSelectedInstOperands, |
| 78879 | /* 222597 */ // GIR_Coverage, 6457, |
| 78880 | /* 222597 */ GIR_Done, |
| 78881 | /* 222598 */ // Label 5111: @222598 |
| 78882 | /* 222598 */ GIM_Reject, |
| 78883 | /* 222599 */ // Label 5108: @222599 |
| 78884 | /* 222599 */ GIM_Reject, |
| 78885 | /* 222600 */ // Label 5029: @222600 |
| 78886 | /* 222600 */ GIM_Try, /*On fail goto*//*Label 5112*/ GIMT_Encode4(222922), |
| 78887 | /* 222605 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 78888 | /* 222608 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 78889 | /* 222611 */ GIM_Try, /*On fail goto*//*Label 5113*/ GIMT_Encode4(222673), // Rule ID 23393 // |
| 78890 | /* 222616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78891 | /* 222619 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78892 | /* 222623 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78893 | /* 222627 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78894 | /* 222631 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78895 | /* 222634 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78896 | /* 222638 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78897 | /* 222642 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78898 | /* 222646 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78899 | /* 222648 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78900 | /* 222655 */ // (strict_fmul:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1) => (VMULPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78901 | /* 222655 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSYrm), |
| 78902 | /* 222658 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78903 | /* 222660 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78904 | /* 222662 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78905 | /* 222666 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78906 | /* 222671 */ GIR_RootConstrainSelectedInstOperands, |
| 78907 | /* 222672 */ // GIR_Coverage, 23393, |
| 78908 | /* 222672 */ GIR_EraseRootFromParent_Done, |
| 78909 | /* 222673 */ // Label 5113: @222673 |
| 78910 | /* 222673 */ GIM_Try, /*On fail goto*//*Label 5114*/ GIMT_Encode4(222735), // Rule ID 24359 // |
| 78911 | /* 222678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78912 | /* 222681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78913 | /* 222685 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78914 | /* 222689 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78915 | /* 222693 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78916 | /* 222696 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78917 | /* 222700 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78918 | /* 222704 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78919 | /* 222708 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78920 | /* 222710 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78921 | /* 222717 */ // (strict_fmul:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8f32] }:$src1) => (VMULPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78922 | /* 222717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rm), |
| 78923 | /* 222720 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78924 | /* 222722 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78925 | /* 222724 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78926 | /* 222728 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78927 | /* 222733 */ GIR_RootConstrainSelectedInstOperands, |
| 78928 | /* 222734 */ // GIR_Coverage, 24359, |
| 78929 | /* 222734 */ GIR_EraseRootFromParent_Done, |
| 78930 | /* 222735 */ // Label 5114: @222735 |
| 78931 | /* 222735 */ GIM_Try, /*On fail goto*//*Label 5115*/ GIMT_Encode4(222797), // Rule ID 2184 // |
| 78932 | /* 222740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78933 | /* 222743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78934 | /* 222747 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78935 | /* 222751 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78936 | /* 222755 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78937 | /* 222759 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78938 | /* 222762 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78939 | /* 222766 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78940 | /* 222770 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78941 | /* 222772 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78942 | /* 222779 */ // (strict_fmul:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78943 | /* 222779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSYrm), |
| 78944 | /* 222782 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78945 | /* 222784 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78946 | /* 222786 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78947 | /* 222790 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78948 | /* 222795 */ GIR_RootConstrainSelectedInstOperands, |
| 78949 | /* 222796 */ // GIR_Coverage, 2184, |
| 78950 | /* 222796 */ GIR_EraseRootFromParent_Done, |
| 78951 | /* 222797 */ // Label 5115: @222797 |
| 78952 | /* 222797 */ GIM_Try, /*On fail goto*//*Label 5116*/ GIMT_Encode4(222859), // Rule ID 6413 // |
| 78953 | /* 222802 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78954 | /* 222805 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78955 | /* 222809 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78956 | /* 222813 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78957 | /* 222817 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78958 | /* 222821 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78959 | /* 222824 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78960 | /* 222828 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78961 | /* 222832 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78962 | /* 222834 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78963 | /* 222841 */ // (strict_fmul:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78964 | /* 222841 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rm), |
| 78965 | /* 222844 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78966 | /* 222846 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78967 | /* 222848 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78968 | /* 222852 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78969 | /* 222857 */ GIR_RootConstrainSelectedInstOperands, |
| 78970 | /* 222858 */ // GIR_Coverage, 6413, |
| 78971 | /* 222858 */ GIR_EraseRootFromParent_Done, |
| 78972 | /* 222859 */ // Label 5116: @222859 |
| 78973 | /* 222859 */ GIM_Try, /*On fail goto*//*Label 5117*/ GIMT_Encode4(222890), // Rule ID 2182 // |
| 78974 | /* 222864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78975 | /* 222867 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78976 | /* 222871 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78977 | /* 222875 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78978 | /* 222879 */ // (strict_fmul:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VMULPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 78979 | /* 222879 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSYrr), |
| 78980 | /* 222884 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78981 | /* 222888 */ GIR_RootConstrainSelectedInstOperands, |
| 78982 | /* 222889 */ // GIR_Coverage, 2182, |
| 78983 | /* 222889 */ GIR_Done, |
| 78984 | /* 222890 */ // Label 5117: @222890 |
| 78985 | /* 222890 */ GIM_Try, /*On fail goto*//*Label 5118*/ GIMT_Encode4(222921), // Rule ID 6409 // |
| 78986 | /* 222895 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78987 | /* 222898 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78988 | /* 222902 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78989 | /* 222906 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78990 | /* 222910 */ // (strict_fmul:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VMULPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 78991 | /* 222910 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rr), |
| 78992 | /* 222915 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78993 | /* 222919 */ GIR_RootConstrainSelectedInstOperands, |
| 78994 | /* 222920 */ // GIR_Coverage, 6409, |
| 78995 | /* 222920 */ GIR_Done, |
| 78996 | /* 222921 */ // Label 5118: @222921 |
| 78997 | /* 222921 */ GIM_Reject, |
| 78998 | /* 222922 */ // Label 5112: @222922 |
| 78999 | /* 222922 */ GIM_Reject, |
| 79000 | /* 222923 */ // Label 5030: @222923 |
| 79001 | /* 222923 */ GIM_Try, /*On fail goto*//*Label 5119*/ GIMT_Encode4(223082), |
| 79002 | /* 222928 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 79003 | /* 222931 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 79004 | /* 222934 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79005 | /* 222938 */ GIM_Try, /*On fail goto*//*Label 5120*/ GIMT_Encode4(222996), // Rule ID 24343 // |
| 79006 | /* 222943 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79007 | /* 222946 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79008 | /* 222950 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79009 | /* 222954 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79010 | /* 222957 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79011 | /* 222961 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79012 | /* 222965 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79013 | /* 222969 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79014 | /* 222971 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79015 | /* 222978 */ // (strict_fmul:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8f64] }:$src1) => (VMULPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79016 | /* 222978 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZrm), |
| 79017 | /* 222981 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79018 | /* 222983 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79019 | /* 222985 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79020 | /* 222989 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79021 | /* 222994 */ GIR_RootConstrainSelectedInstOperands, |
| 79022 | /* 222995 */ // GIR_Coverage, 24343, |
| 79023 | /* 222995 */ GIR_EraseRootFromParent_Done, |
| 79024 | /* 222996 */ // Label 5120: @222996 |
| 79025 | /* 222996 */ GIM_Try, /*On fail goto*//*Label 5121*/ GIMT_Encode4(223054), // Rule ID 6389 // |
| 79026 | /* 223001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79027 | /* 223004 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79028 | /* 223008 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79029 | /* 223012 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79030 | /* 223016 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79031 | /* 223019 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79032 | /* 223023 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79033 | /* 223027 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79034 | /* 223029 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79035 | /* 223036 */ // (strict_fmul:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79036 | /* 223036 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZrm), |
| 79037 | /* 223039 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79038 | /* 223041 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79039 | /* 223043 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79040 | /* 223047 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79041 | /* 223052 */ GIR_RootConstrainSelectedInstOperands, |
| 79042 | /* 223053 */ // GIR_Coverage, 6389, |
| 79043 | /* 223053 */ GIR_EraseRootFromParent_Done, |
| 79044 | /* 223054 */ // Label 5121: @223054 |
| 79045 | /* 223054 */ GIM_Try, /*On fail goto*//*Label 5122*/ GIMT_Encode4(223081), // Rule ID 6385 // |
| 79046 | /* 223059 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79047 | /* 223062 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79048 | /* 223066 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79049 | /* 223070 */ // (strict_fmul:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VMULPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 79050 | /* 223070 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZrr), |
| 79051 | /* 223075 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79052 | /* 223079 */ GIR_RootConstrainSelectedInstOperands, |
| 79053 | /* 223080 */ // GIR_Coverage, 6385, |
| 79054 | /* 223080 */ GIR_Done, |
| 79055 | /* 223081 */ // Label 5122: @223081 |
| 79056 | /* 223081 */ GIM_Reject, |
| 79057 | /* 223082 */ // Label 5119: @223082 |
| 79058 | /* 223082 */ GIM_Reject, |
| 79059 | /* 223083 */ // Label 5031: @223083 |
| 79060 | /* 223083 */ GIM_Try, /*On fail goto*//*Label 5123*/ GIMT_Encode4(223242), |
| 79061 | /* 223088 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 79062 | /* 223091 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 79063 | /* 223094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79064 | /* 223098 */ GIM_Try, /*On fail goto*//*Label 5124*/ GIMT_Encode4(223156), // Rule ID 24399 // |
| 79065 | /* 223103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 79066 | /* 223106 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79067 | /* 223110 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79068 | /* 223114 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79069 | /* 223117 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79070 | /* 223121 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79071 | /* 223125 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79072 | /* 223129 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79073 | /* 223131 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79074 | /* 223138 */ // (strict_fmul:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src1) => (VMULPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79075 | /* 223138 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rm), |
| 79076 | /* 223141 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79077 | /* 223143 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79078 | /* 223145 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79079 | /* 223149 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79080 | /* 223154 */ GIR_RootConstrainSelectedInstOperands, |
| 79081 | /* 223155 */ // GIR_Coverage, 24399, |
| 79082 | /* 223155 */ GIR_EraseRootFromParent_Done, |
| 79083 | /* 223156 */ // Label 5124: @223156 |
| 79084 | /* 223156 */ GIM_Try, /*On fail goto*//*Label 5125*/ GIMT_Encode4(223214), // Rule ID 6473 // |
| 79085 | /* 223161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 79086 | /* 223164 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79087 | /* 223168 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79088 | /* 223172 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79089 | /* 223176 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79090 | /* 223179 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79091 | /* 223183 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79092 | /* 223187 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79093 | /* 223189 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79094 | /* 223196 */ // (strict_fmul:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79095 | /* 223196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rm), |
| 79096 | /* 223199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79097 | /* 223201 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79098 | /* 223203 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79099 | /* 223207 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79100 | /* 223212 */ GIR_RootConstrainSelectedInstOperands, |
| 79101 | /* 223213 */ // GIR_Coverage, 6473, |
| 79102 | /* 223213 */ GIR_EraseRootFromParent_Done, |
| 79103 | /* 223214 */ // Label 5125: @223214 |
| 79104 | /* 223214 */ GIM_Try, /*On fail goto*//*Label 5126*/ GIMT_Encode4(223241), // Rule ID 6469 // |
| 79105 | /* 223219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 79106 | /* 223222 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79107 | /* 223226 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79108 | /* 223230 */ // (strict_fmul:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VMULPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 79109 | /* 223230 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rr), |
| 79110 | /* 223235 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79111 | /* 223239 */ GIR_RootConstrainSelectedInstOperands, |
| 79112 | /* 223240 */ // GIR_Coverage, 6469, |
| 79113 | /* 223240 */ GIR_Done, |
| 79114 | /* 223241 */ // Label 5126: @223241 |
| 79115 | /* 223241 */ GIM_Reject, |
| 79116 | /* 223242 */ // Label 5123: @223242 |
| 79117 | /* 223242 */ GIM_Reject, |
| 79118 | /* 223243 */ // Label 5032: @223243 |
| 79119 | /* 223243 */ GIM_Try, /*On fail goto*//*Label 5127*/ GIMT_Encode4(223402), |
| 79120 | /* 223248 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 79121 | /* 223251 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 79122 | /* 223254 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79123 | /* 223258 */ GIM_Try, /*On fail goto*//*Label 5128*/ GIMT_Encode4(223316), // Rule ID 24335 // |
| 79124 | /* 223263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79125 | /* 223266 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79126 | /* 223270 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79127 | /* 223274 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79128 | /* 223277 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79129 | /* 223281 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79130 | /* 223285 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79131 | /* 223289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79132 | /* 223291 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79133 | /* 223298 */ // (strict_fmul:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16f32] }:$src1) => (VMULPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79134 | /* 223298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZrm), |
| 79135 | /* 223301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79136 | /* 223303 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79137 | /* 223305 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79138 | /* 223309 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79139 | /* 223314 */ GIR_RootConstrainSelectedInstOperands, |
| 79140 | /* 223315 */ // GIR_Coverage, 24335, |
| 79141 | /* 223315 */ GIR_EraseRootFromParent_Done, |
| 79142 | /* 223316 */ // Label 5128: @223316 |
| 79143 | /* 223316 */ GIM_Try, /*On fail goto*//*Label 5129*/ GIMT_Encode4(223374), // Rule ID 6377 // |
| 79144 | /* 223321 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79145 | /* 223324 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79146 | /* 223328 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79147 | /* 223332 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79148 | /* 223336 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79149 | /* 223339 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79150 | /* 223343 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79151 | /* 223347 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79152 | /* 223349 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79153 | /* 223356 */ // (strict_fmul:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79154 | /* 223356 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZrm), |
| 79155 | /* 223359 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79156 | /* 223361 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79157 | /* 223363 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79158 | /* 223367 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79159 | /* 223372 */ GIR_RootConstrainSelectedInstOperands, |
| 79160 | /* 223373 */ // GIR_Coverage, 6377, |
| 79161 | /* 223373 */ GIR_EraseRootFromParent_Done, |
| 79162 | /* 223374 */ // Label 5129: @223374 |
| 79163 | /* 223374 */ GIM_Try, /*On fail goto*//*Label 5130*/ GIMT_Encode4(223401), // Rule ID 6373 // |
| 79164 | /* 223379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79165 | /* 223382 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79166 | /* 223386 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79167 | /* 223390 */ // (strict_fmul:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VMULPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 79168 | /* 223390 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZrr), |
| 79169 | /* 223395 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79170 | /* 223399 */ GIR_RootConstrainSelectedInstOperands, |
| 79171 | /* 223400 */ // GIR_Coverage, 6373, |
| 79172 | /* 223400 */ GIR_Done, |
| 79173 | /* 223401 */ // Label 5130: @223401 |
| 79174 | /* 223401 */ GIM_Reject, |
| 79175 | /* 223402 */ // Label 5127: @223402 |
| 79176 | /* 223402 */ GIM_Reject, |
| 79177 | /* 223403 */ // Label 5033: @223403 |
| 79178 | /* 223403 */ GIM_Try, /*On fail goto*//*Label 5131*/ GIMT_Encode4(223562), |
| 79179 | /* 223408 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 79180 | /* 223411 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 79181 | /* 223414 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79182 | /* 223418 */ GIM_Try, /*On fail goto*//*Label 5132*/ GIMT_Encode4(223476), // Rule ID 24383 // |
| 79183 | /* 223423 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 79184 | /* 223426 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79185 | /* 223430 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79186 | /* 223434 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79187 | /* 223437 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79188 | /* 223441 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79189 | /* 223445 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79190 | /* 223449 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79191 | /* 223451 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79192 | /* 223458 */ // (strict_fmul:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src1) => (VMULPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79193 | /* 223458 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZrm), |
| 79194 | /* 223461 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79195 | /* 223463 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79196 | /* 223465 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79197 | /* 223469 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79198 | /* 223474 */ GIR_RootConstrainSelectedInstOperands, |
| 79199 | /* 223475 */ // GIR_Coverage, 24383, |
| 79200 | /* 223475 */ GIR_EraseRootFromParent_Done, |
| 79201 | /* 223476 */ // Label 5132: @223476 |
| 79202 | /* 223476 */ GIM_Try, /*On fail goto*//*Label 5133*/ GIMT_Encode4(223534), // Rule ID 6449 // |
| 79203 | /* 223481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 79204 | /* 223484 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79205 | /* 223488 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79206 | /* 223492 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79207 | /* 223496 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79208 | /* 223499 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79209 | /* 223503 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79210 | /* 223507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79211 | /* 223509 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79212 | /* 223516 */ // (strict_fmul:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79213 | /* 223516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZrm), |
| 79214 | /* 223519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79215 | /* 223521 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79216 | /* 223523 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79217 | /* 223527 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79218 | /* 223532 */ GIR_RootConstrainSelectedInstOperands, |
| 79219 | /* 223533 */ // GIR_Coverage, 6449, |
| 79220 | /* 223533 */ GIR_EraseRootFromParent_Done, |
| 79221 | /* 223534 */ // Label 5133: @223534 |
| 79222 | /* 223534 */ GIM_Try, /*On fail goto*//*Label 5134*/ GIMT_Encode4(223561), // Rule ID 6445 // |
| 79223 | /* 223539 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 79224 | /* 223542 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79225 | /* 223546 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79226 | /* 223550 */ // (strict_fmul:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VMULPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 79227 | /* 223550 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZrr), |
| 79228 | /* 223555 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79229 | /* 223559 */ GIR_RootConstrainSelectedInstOperands, |
| 79230 | /* 223560 */ // GIR_Coverage, 6445, |
| 79231 | /* 223560 */ GIR_Done, |
| 79232 | /* 223561 */ // Label 5134: @223561 |
| 79233 | /* 223561 */ GIM_Reject, |
| 79234 | /* 223562 */ // Label 5131: @223562 |
| 79235 | /* 223562 */ GIM_Reject, |
| 79236 | /* 223563 */ // Label 5034: @223563 |
| 79237 | /* 223563 */ GIM_Reject, |
| 79238 | /* 223564 */ // Label 71: @223564 |
| 79239 | /* 223564 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 5148*/ GIMT_Encode4(227253), |
| 79240 | /* 223575 */ /*GILLT_s16*//*Label 5135*/ GIMT_Encode4(223659), |
| 79241 | /* 223579 */ /*GILLT_s32*//*Label 5136*/ GIMT_Encode4(223757), |
| 79242 | /* 223583 */ /*GILLT_s64*//*Label 5137*/ GIMT_Encode4(224476), |
| 79243 | /* 223587 */ /*GILLT_s80*//*Label 5138*/ GIMT_Encode4(225339), GIMT_Encode4(0), GIMT_Encode4(0), |
| 79244 | /* 223599 */ /*GILLT_v2s64*//*Label 5139*/ GIMT_Encode4(225905), GIMT_Encode4(0), |
| 79245 | /* 223607 */ /*GILLT_v4s32*//*Label 5140*/ GIMT_Encode4(226135), |
| 79246 | /* 223611 */ /*GILLT_v4s64*//*Label 5141*/ GIMT_Encode4(226365), GIMT_Encode4(0), |
| 79247 | /* 223619 */ /*GILLT_v8s16*//*Label 5142*/ GIMT_Encode4(226564), |
| 79248 | /* 223623 */ /*GILLT_v8s32*//*Label 5143*/ GIMT_Encode4(226662), |
| 79249 | /* 223627 */ /*GILLT_v8s64*//*Label 5144*/ GIMT_Encode4(226861), GIMT_Encode4(0), GIMT_Encode4(0), |
| 79250 | /* 223639 */ /*GILLT_v16s16*//*Label 5145*/ GIMT_Encode4(226959), |
| 79251 | /* 223643 */ /*GILLT_v16s32*//*Label 5146*/ GIMT_Encode4(227057), GIMT_Encode4(0), GIMT_Encode4(0), |
| 79252 | /* 223655 */ /*GILLT_v32s16*//*Label 5147*/ GIMT_Encode4(227155), |
| 79253 | /* 223659 */ // Label 5135: @223659 |
| 79254 | /* 223659 */ GIM_Try, /*On fail goto*//*Label 5149*/ GIMT_Encode4(223756), |
| 79255 | /* 223664 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 79256 | /* 223667 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 79257 | /* 223670 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 79258 | /* 223674 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 79259 | /* 223678 */ GIM_Try, /*On fail goto*//*Label 5150*/ GIMT_Encode4(223732), // Rule ID 6125 // |
| 79260 | /* 223683 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 79261 | /* 223686 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79262 | /* 223690 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79263 | /* 223694 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79264 | /* 223697 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79265 | /* 223701 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79266 | /* 223705 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79267 | /* 223707 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79268 | /* 223714 */ // (strict_fdiv:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79269 | /* 223714 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSHZrm), |
| 79270 | /* 223717 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79271 | /* 223719 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79272 | /* 223721 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79273 | /* 223725 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79274 | /* 223730 */ GIR_RootConstrainSelectedInstOperands, |
| 79275 | /* 223731 */ // GIR_Coverage, 6125, |
| 79276 | /* 223731 */ GIR_EraseRootFromParent_Done, |
| 79277 | /* 223732 */ // Label 5150: @223732 |
| 79278 | /* 223732 */ GIM_Try, /*On fail goto*//*Label 5151*/ GIMT_Encode4(223755), // Rule ID 6123 // |
| 79279 | /* 223737 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 79280 | /* 223740 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 79281 | /* 223744 */ // (strict_fdiv:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VDIVSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 79282 | /* 223744 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSHZrr), |
| 79283 | /* 223749 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79284 | /* 223753 */ GIR_RootConstrainSelectedInstOperands, |
| 79285 | /* 223754 */ // GIR_Coverage, 6123, |
| 79286 | /* 223754 */ GIR_Done, |
| 79287 | /* 223755 */ // Label 5151: @223755 |
| 79288 | /* 223755 */ GIM_Reject, |
| 79289 | /* 223756 */ // Label 5149: @223756 |
| 79290 | /* 223756 */ GIM_Reject, |
| 79291 | /* 223757 */ // Label 5136: @223757 |
| 79292 | /* 223757 */ GIM_Try, /*On fail goto*//*Label 5152*/ GIMT_Encode4(224475), |
| 79293 | /* 223762 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 79294 | /* 223765 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 79295 | /* 223768 */ GIM_Try, /*On fail goto*//*Label 5153*/ GIMT_Encode4(223833), // Rule ID 1030 // |
| 79296 | /* 223773 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 79297 | /* 223776 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79298 | /* 223780 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79299 | /* 223784 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79300 | /* 223788 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 79301 | /* 223795 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79302 | /* 223799 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79303 | /* 223803 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79304 | /* 223805 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79305 | /* 223812 */ // (strict_fdiv:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (DIVR_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79306 | /* 223812 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m32), |
| 79307 | /* 223815 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79308 | /* 223817 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79309 | /* 223819 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79310 | /* 223823 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79311 | /* 223826 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79312 | /* 223831 */ GIR_RootConstrainSelectedInstOperands, |
| 79313 | /* 223832 */ // GIR_Coverage, 1030, |
| 79314 | /* 223832 */ GIR_EraseRootFromParent_Done, |
| 79315 | /* 223833 */ // Label 5153: @223833 |
| 79316 | /* 223833 */ GIM_Try, /*On fail goto*//*Label 5154*/ GIMT_Encode4(223898), // Rule ID 1032 // |
| 79317 | /* 223838 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 79318 | /* 223841 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79319 | /* 223845 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79320 | /* 223849 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79321 | /* 223853 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79322 | /* 223860 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79323 | /* 223864 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79324 | /* 223868 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79325 | /* 223870 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79326 | /* 223877 */ // (strict_fdiv:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (DIVR_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79327 | /* 223877 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m32), |
| 79328 | /* 223880 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79329 | /* 223882 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79330 | /* 223884 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79331 | /* 223888 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79332 | /* 223891 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79333 | /* 223896 */ GIR_RootConstrainSelectedInstOperands, |
| 79334 | /* 223897 */ // GIR_Coverage, 1032, |
| 79335 | /* 223897 */ GIR_EraseRootFromParent_Done, |
| 79336 | /* 223898 */ // Label 5154: @223898 |
| 79337 | /* 223898 */ GIM_Try, /*On fail goto*//*Label 5155*/ GIMT_Encode4(223963), // Rule ID 1020 // |
| 79338 | /* 223903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 79339 | /* 223906 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79340 | /* 223910 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79341 | /* 223914 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79342 | /* 223918 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79343 | /* 223921 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79344 | /* 223925 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79345 | /* 223929 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79346 | /* 223933 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79347 | /* 223935 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79348 | /* 223942 */ // (strict_fdiv:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP32:{ *:[f32] }:$src1) => (DIVR_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79349 | /* 223942 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp32m), |
| 79350 | /* 223945 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79351 | /* 223947 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79352 | /* 223949 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79353 | /* 223953 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79354 | /* 223956 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79355 | /* 223961 */ GIR_RootConstrainSelectedInstOperands, |
| 79356 | /* 223962 */ // GIR_Coverage, 1020, |
| 79357 | /* 223962 */ GIR_EraseRootFromParent_Done, |
| 79358 | /* 223963 */ // Label 5155: @223963 |
| 79359 | /* 223963 */ GIM_Try, /*On fail goto*//*Label 5156*/ GIMT_Encode4(224028), // Rule ID 1008 // |
| 79360 | /* 223968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 79361 | /* 223971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79362 | /* 223975 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79363 | /* 223979 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79364 | /* 223983 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79365 | /* 223987 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 79366 | /* 223994 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79367 | /* 223998 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79368 | /* 224000 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79369 | /* 224007 */ // (strict_fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79370 | /* 224007 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m32), |
| 79371 | /* 224010 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79372 | /* 224012 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79373 | /* 224014 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79374 | /* 224018 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79375 | /* 224021 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79376 | /* 224026 */ GIR_RootConstrainSelectedInstOperands, |
| 79377 | /* 224027 */ // GIR_Coverage, 1008, |
| 79378 | /* 224027 */ GIR_EraseRootFromParent_Done, |
| 79379 | /* 224028 */ // Label 5156: @224028 |
| 79380 | /* 224028 */ GIM_Try, /*On fail goto*//*Label 5157*/ GIMT_Encode4(224093), // Rule ID 1010 // |
| 79381 | /* 224033 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 79382 | /* 224036 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79383 | /* 224040 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79384 | /* 224044 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79385 | /* 224048 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79386 | /* 224052 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79387 | /* 224059 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79388 | /* 224063 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79389 | /* 224065 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79390 | /* 224072 */ // (strict_fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79391 | /* 224072 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m32), |
| 79392 | /* 224075 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79393 | /* 224077 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79394 | /* 224079 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79395 | /* 224083 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79396 | /* 224086 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79397 | /* 224091 */ GIR_RootConstrainSelectedInstOperands, |
| 79398 | /* 224092 */ // GIR_Coverage, 1010, |
| 79399 | /* 224092 */ GIR_EraseRootFromParent_Done, |
| 79400 | /* 224093 */ // Label 5157: @224093 |
| 79401 | /* 224093 */ GIM_Try, /*On fail goto*//*Label 5158*/ GIMT_Encode4(224158), // Rule ID 998 // |
| 79402 | /* 224098 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 79403 | /* 224101 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79404 | /* 224105 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79405 | /* 224109 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79406 | /* 224113 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79407 | /* 224117 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79408 | /* 224120 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79409 | /* 224124 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79410 | /* 224128 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79411 | /* 224130 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79412 | /* 224137 */ // (strict_fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (DIV_Fp32m:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79413 | /* 224137 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp32m), |
| 79414 | /* 224140 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79415 | /* 224142 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79416 | /* 224144 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79417 | /* 224148 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79418 | /* 224151 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79419 | /* 224156 */ GIR_RootConstrainSelectedInstOperands, |
| 79420 | /* 224157 */ // GIR_Coverage, 998, |
| 79421 | /* 224157 */ GIR_EraseRootFromParent_Done, |
| 79422 | /* 224158 */ // Label 5158: @224158 |
| 79423 | /* 224158 */ GIM_Try, /*On fail goto*//*Label 5159*/ GIMT_Encode4(224220), // Rule ID 2280 // |
| 79424 | /* 224163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 79425 | /* 224166 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79426 | /* 224170 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79427 | /* 224174 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79428 | /* 224178 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79429 | /* 224182 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79430 | /* 224185 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79431 | /* 224189 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79432 | /* 224193 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79433 | /* 224195 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79434 | /* 224202 */ // (strict_fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79435 | /* 224202 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSrm), |
| 79436 | /* 224205 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79437 | /* 224207 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79438 | /* 224209 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79439 | /* 224213 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79440 | /* 224218 */ GIR_RootConstrainSelectedInstOperands, |
| 79441 | /* 224219 */ // GIR_Coverage, 2280, |
| 79442 | /* 224219 */ GIR_EraseRootFromParent_Done, |
| 79443 | /* 224220 */ // Label 5159: @224220 |
| 79444 | /* 224220 */ GIM_Try, /*On fail goto*//*Label 5160*/ GIMT_Encode4(224282), // Rule ID 2288 // |
| 79445 | /* 224225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 79446 | /* 224228 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79447 | /* 224232 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79448 | /* 224236 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79449 | /* 224240 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79450 | /* 224244 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79451 | /* 224247 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79452 | /* 224251 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79453 | /* 224255 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79454 | /* 224257 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79455 | /* 224264 */ // (strict_fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (DIVSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79456 | /* 224264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSSrm), |
| 79457 | /* 224267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79458 | /* 224269 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79459 | /* 224271 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79460 | /* 224275 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79461 | /* 224280 */ GIR_RootConstrainSelectedInstOperands, |
| 79462 | /* 224281 */ // GIR_Coverage, 2288, |
| 79463 | /* 224281 */ GIR_EraseRootFromParent_Done, |
| 79464 | /* 224282 */ // Label 5160: @224282 |
| 79465 | /* 224282 */ GIM_Try, /*On fail goto*//*Label 5161*/ GIMT_Encode4(224344), // Rule ID 6087 // |
| 79466 | /* 224287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79467 | /* 224290 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 79468 | /* 224294 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 79469 | /* 224298 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79470 | /* 224302 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79471 | /* 224306 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79472 | /* 224309 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79473 | /* 224313 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79474 | /* 224317 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79475 | /* 224319 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79476 | /* 224326 */ // (strict_fdiv:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79477 | /* 224326 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSZrm), |
| 79478 | /* 224329 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79479 | /* 224331 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79480 | /* 224333 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79481 | /* 224337 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79482 | /* 224342 */ GIR_RootConstrainSelectedInstOperands, |
| 79483 | /* 224343 */ // GIR_Coverage, 6087, |
| 79484 | /* 224343 */ GIR_EraseRootFromParent_Done, |
| 79485 | /* 224344 */ // Label 5161: @224344 |
| 79486 | /* 224344 */ GIM_Try, /*On fail goto*//*Label 5162*/ GIMT_Encode4(224381), // Rule ID 904 // |
| 79487 | /* 224349 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 79488 | /* 224352 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79489 | /* 224356 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79490 | /* 224360 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79491 | /* 224364 */ // (strict_fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (DIV_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 79492 | /* 224364 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp32), |
| 79493 | /* 224369 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 79494 | /* 224375 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 79495 | /* 224379 */ GIR_RootConstrainSelectedInstOperands, |
| 79496 | /* 224380 */ // GIR_Coverage, 904, |
| 79497 | /* 224380 */ GIR_Done, |
| 79498 | /* 224381 */ // Label 5162: @224381 |
| 79499 | /* 224381 */ GIM_Try, /*On fail goto*//*Label 5163*/ GIMT_Encode4(224412), // Rule ID 2278 // |
| 79500 | /* 224386 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 79501 | /* 224389 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79502 | /* 224393 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79503 | /* 224397 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79504 | /* 224401 */ // (strict_fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VDIVSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 79505 | /* 224401 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSSrr), |
| 79506 | /* 224406 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79507 | /* 224410 */ GIR_RootConstrainSelectedInstOperands, |
| 79508 | /* 224411 */ // GIR_Coverage, 2278, |
| 79509 | /* 224411 */ GIR_Done, |
| 79510 | /* 224412 */ // Label 5163: @224412 |
| 79511 | /* 224412 */ GIM_Try, /*On fail goto*//*Label 5164*/ GIMT_Encode4(224443), // Rule ID 2286 // |
| 79512 | /* 224417 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 79513 | /* 224420 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79514 | /* 224424 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79515 | /* 224428 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79516 | /* 224432 */ // (strict_fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (DIVSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 79517 | /* 224432 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVSSrr), |
| 79518 | /* 224437 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79519 | /* 224441 */ GIR_RootConstrainSelectedInstOperands, |
| 79520 | /* 224442 */ // GIR_Coverage, 2286, |
| 79521 | /* 224442 */ GIR_Done, |
| 79522 | /* 224443 */ // Label 5164: @224443 |
| 79523 | /* 224443 */ GIM_Try, /*On fail goto*//*Label 5165*/ GIMT_Encode4(224474), // Rule ID 6085 // |
| 79524 | /* 224448 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79525 | /* 224451 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 79526 | /* 224455 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 79527 | /* 224459 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 79528 | /* 224463 */ // (strict_fdiv:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VDIVSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 79529 | /* 224463 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSSZrr), |
| 79530 | /* 224468 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79531 | /* 224472 */ GIR_RootConstrainSelectedInstOperands, |
| 79532 | /* 224473 */ // GIR_Coverage, 6085, |
| 79533 | /* 224473 */ GIR_Done, |
| 79534 | /* 224474 */ // Label 5165: @224474 |
| 79535 | /* 224474 */ GIM_Reject, |
| 79536 | /* 224475 */ // Label 5152: @224475 |
| 79537 | /* 224475 */ GIM_Reject, |
| 79538 | /* 224476 */ // Label 5137: @224476 |
| 79539 | /* 224476 */ GIM_Try, /*On fail goto*//*Label 5166*/ GIMT_Encode4(225338), |
| 79540 | /* 224481 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 79541 | /* 224484 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 79542 | /* 224487 */ GIM_Try, /*On fail goto*//*Label 5167*/ GIMT_Encode4(224552), // Rule ID 1034 // |
| 79543 | /* 224492 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79544 | /* 224495 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79545 | /* 224499 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79546 | /* 224503 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79547 | /* 224507 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 79548 | /* 224514 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79549 | /* 224518 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79550 | /* 224522 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79551 | /* 224524 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79552 | /* 224531 */ // (strict_fdiv:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (DIVR_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79553 | /* 224531 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m64), |
| 79554 | /* 224534 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79555 | /* 224536 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79556 | /* 224538 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79557 | /* 224542 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79558 | /* 224545 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79559 | /* 224550 */ GIR_RootConstrainSelectedInstOperands, |
| 79560 | /* 224551 */ // GIR_Coverage, 1034, |
| 79561 | /* 224551 */ GIR_EraseRootFromParent_Done, |
| 79562 | /* 224552 */ // Label 5167: @224552 |
| 79563 | /* 224552 */ GIM_Try, /*On fail goto*//*Label 5168*/ GIMT_Encode4(224617), // Rule ID 1036 // |
| 79564 | /* 224557 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79565 | /* 224560 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79566 | /* 224564 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79567 | /* 224568 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79568 | /* 224572 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79569 | /* 224579 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79570 | /* 224583 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79571 | /* 224587 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79572 | /* 224589 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79573 | /* 224596 */ // (strict_fdiv:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (DIVR_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79574 | /* 224596 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m64), |
| 79575 | /* 224599 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79576 | /* 224601 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79577 | /* 224603 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79578 | /* 224607 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79579 | /* 224610 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79580 | /* 224615 */ GIR_RootConstrainSelectedInstOperands, |
| 79581 | /* 224616 */ // GIR_Coverage, 1036, |
| 79582 | /* 224616 */ GIR_EraseRootFromParent_Done, |
| 79583 | /* 224617 */ // Label 5168: @224617 |
| 79584 | /* 224617 */ GIM_Try, /*On fail goto*//*Label 5169*/ GIMT_Encode4(224682), // Rule ID 1022 // |
| 79585 | /* 224622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79586 | /* 224625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79587 | /* 224629 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79588 | /* 224633 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79589 | /* 224637 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79590 | /* 224640 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79591 | /* 224644 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79592 | /* 224648 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79593 | /* 224652 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79594 | /* 224654 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79595 | /* 224661 */ // (strict_fdiv:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, RFP64:{ *:[f64] }:$src1) => (DIVR_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79596 | /* 224661 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp64m), |
| 79597 | /* 224664 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79598 | /* 224666 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79599 | /* 224668 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79600 | /* 224672 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79601 | /* 224675 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79602 | /* 224680 */ GIR_RootConstrainSelectedInstOperands, |
| 79603 | /* 224681 */ // GIR_Coverage, 1022, |
| 79604 | /* 224681 */ GIR_EraseRootFromParent_Done, |
| 79605 | /* 224682 */ // Label 5169: @224682 |
| 79606 | /* 224682 */ GIM_Try, /*On fail goto*//*Label 5170*/ GIMT_Encode4(224754), // Rule ID 1024 // |
| 79607 | /* 224687 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79608 | /* 224690 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79609 | /* 224694 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79610 | /* 224698 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79611 | /* 224702 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79612 | /* 224705 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79613 | /* 224709 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79614 | /* 224716 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79615 | /* 224720 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79616 | /* 224724 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79617 | /* 224726 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79618 | /* 224733 */ // (strict_fdiv:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP64:{ *:[f64] }:$src1) => (DIVR_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79619 | /* 224733 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp64m32), |
| 79620 | /* 224736 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79621 | /* 224738 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79622 | /* 224740 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79623 | /* 224744 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79624 | /* 224747 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79625 | /* 224752 */ GIR_RootConstrainSelectedInstOperands, |
| 79626 | /* 224753 */ // GIR_Coverage, 1024, |
| 79627 | /* 224753 */ GIR_EraseRootFromParent_Done, |
| 79628 | /* 224754 */ // Label 5170: @224754 |
| 79629 | /* 224754 */ GIM_Try, /*On fail goto*//*Label 5171*/ GIMT_Encode4(224819), // Rule ID 1012 // |
| 79630 | /* 224759 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79631 | /* 224762 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79632 | /* 224766 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79633 | /* 224770 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79634 | /* 224774 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79635 | /* 224778 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 79636 | /* 224785 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79637 | /* 224789 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79638 | /* 224791 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79639 | /* 224798 */ // (strict_fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79640 | /* 224798 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m64), |
| 79641 | /* 224801 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79642 | /* 224803 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79643 | /* 224805 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79644 | /* 224809 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79645 | /* 224812 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79646 | /* 224817 */ GIR_RootConstrainSelectedInstOperands, |
| 79647 | /* 224818 */ // GIR_Coverage, 1012, |
| 79648 | /* 224818 */ GIR_EraseRootFromParent_Done, |
| 79649 | /* 224819 */ // Label 5171: @224819 |
| 79650 | /* 224819 */ GIM_Try, /*On fail goto*//*Label 5172*/ GIMT_Encode4(224884), // Rule ID 1014 // |
| 79651 | /* 224824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79652 | /* 224827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79653 | /* 224831 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79654 | /* 224835 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79655 | /* 224839 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79656 | /* 224843 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79657 | /* 224850 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79658 | /* 224854 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79659 | /* 224856 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79660 | /* 224863 */ // (strict_fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79661 | /* 224863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m64), |
| 79662 | /* 224866 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79663 | /* 224868 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79664 | /* 224870 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79665 | /* 224874 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79666 | /* 224877 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79667 | /* 224882 */ GIR_RootConstrainSelectedInstOperands, |
| 79668 | /* 224883 */ // GIR_Coverage, 1014, |
| 79669 | /* 224883 */ GIR_EraseRootFromParent_Done, |
| 79670 | /* 224884 */ // Label 5172: @224884 |
| 79671 | /* 224884 */ GIM_Try, /*On fail goto*//*Label 5173*/ GIMT_Encode4(224949), // Rule ID 1000 // |
| 79672 | /* 224889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79673 | /* 224892 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79674 | /* 224896 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79675 | /* 224900 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79676 | /* 224904 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79677 | /* 224908 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79678 | /* 224911 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79679 | /* 224915 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79680 | /* 224919 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79681 | /* 224921 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79682 | /* 224928 */ // (strict_fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (DIV_Fp64m:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79683 | /* 224928 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64m), |
| 79684 | /* 224931 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79685 | /* 224933 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79686 | /* 224935 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79687 | /* 224939 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79688 | /* 224942 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79689 | /* 224947 */ GIR_RootConstrainSelectedInstOperands, |
| 79690 | /* 224948 */ // GIR_Coverage, 1000, |
| 79691 | /* 224948 */ GIR_EraseRootFromParent_Done, |
| 79692 | /* 224949 */ // Label 5173: @224949 |
| 79693 | /* 224949 */ GIM_Try, /*On fail goto*//*Label 5174*/ GIMT_Encode4(225021), // Rule ID 1002 // |
| 79694 | /* 224954 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79695 | /* 224957 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79696 | /* 224961 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79697 | /* 224965 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79698 | /* 224969 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79699 | /* 224973 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79700 | /* 224976 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79701 | /* 224980 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79702 | /* 224987 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79703 | /* 224991 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79704 | /* 224993 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79705 | /* 225000 */ // (strict_fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (DIV_Fp64m32:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79706 | /* 225000 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64m32), |
| 79707 | /* 225003 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79708 | /* 225005 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79709 | /* 225007 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79710 | /* 225011 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79711 | /* 225014 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79712 | /* 225019 */ GIR_RootConstrainSelectedInstOperands, |
| 79713 | /* 225020 */ // GIR_Coverage, 1002, |
| 79714 | /* 225020 */ GIR_EraseRootFromParent_Done, |
| 79715 | /* 225021 */ // Label 5174: @225021 |
| 79716 | /* 225021 */ GIM_Try, /*On fail goto*//*Label 5175*/ GIMT_Encode4(225083), // Rule ID 2284 // |
| 79717 | /* 225026 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 79718 | /* 225029 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79719 | /* 225033 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79720 | /* 225037 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79721 | /* 225041 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79722 | /* 225045 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79723 | /* 225048 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79724 | /* 225052 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79725 | /* 225056 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79726 | /* 225058 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79727 | /* 225065 */ // (strict_fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79728 | /* 225065 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDrm), |
| 79729 | /* 225068 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79730 | /* 225070 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79731 | /* 225072 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79732 | /* 225076 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79733 | /* 225081 */ GIR_RootConstrainSelectedInstOperands, |
| 79734 | /* 225082 */ // GIR_Coverage, 2284, |
| 79735 | /* 225082 */ GIR_EraseRootFromParent_Done, |
| 79736 | /* 225083 */ // Label 5175: @225083 |
| 79737 | /* 225083 */ GIM_Try, /*On fail goto*//*Label 5176*/ GIMT_Encode4(225145), // Rule ID 2292 // |
| 79738 | /* 225088 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 79739 | /* 225091 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79740 | /* 225095 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79741 | /* 225099 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79742 | /* 225103 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79743 | /* 225107 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79744 | /* 225110 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79745 | /* 225114 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79746 | /* 225118 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79747 | /* 225120 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79748 | /* 225127 */ // (strict_fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (DIVSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79749 | /* 225127 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSDrm), |
| 79750 | /* 225130 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79751 | /* 225132 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79752 | /* 225134 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79753 | /* 225138 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79754 | /* 225143 */ GIR_RootConstrainSelectedInstOperands, |
| 79755 | /* 225144 */ // GIR_Coverage, 2292, |
| 79756 | /* 225144 */ GIR_EraseRootFromParent_Done, |
| 79757 | /* 225145 */ // Label 5176: @225145 |
| 79758 | /* 225145 */ GIM_Try, /*On fail goto*//*Label 5177*/ GIMT_Encode4(225207), // Rule ID 6106 // |
| 79759 | /* 225150 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79760 | /* 225153 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 79761 | /* 225157 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 79762 | /* 225161 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79763 | /* 225165 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79764 | /* 225169 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79765 | /* 225172 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79766 | /* 225176 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79767 | /* 225180 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79768 | /* 225182 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79769 | /* 225189 */ // (strict_fdiv:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79770 | /* 225189 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDZrm), |
| 79771 | /* 225192 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79772 | /* 225194 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79773 | /* 225196 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79774 | /* 225200 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79775 | /* 225205 */ GIR_RootConstrainSelectedInstOperands, |
| 79776 | /* 225206 */ // GIR_Coverage, 6106, |
| 79777 | /* 225206 */ GIR_EraseRootFromParent_Done, |
| 79778 | /* 225207 */ // Label 5177: @225207 |
| 79779 | /* 225207 */ GIM_Try, /*On fail goto*//*Label 5178*/ GIMT_Encode4(225244), // Rule ID 906 // |
| 79780 | /* 225212 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79781 | /* 225215 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79782 | /* 225219 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79783 | /* 225223 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79784 | /* 225227 */ // (strict_fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (DIV_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 79785 | /* 225227 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64), |
| 79786 | /* 225232 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 79787 | /* 225238 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 79788 | /* 225242 */ GIR_RootConstrainSelectedInstOperands, |
| 79789 | /* 225243 */ // GIR_Coverage, 906, |
| 79790 | /* 225243 */ GIR_Done, |
| 79791 | /* 225244 */ // Label 5178: @225244 |
| 79792 | /* 225244 */ GIM_Try, /*On fail goto*//*Label 5179*/ GIMT_Encode4(225275), // Rule ID 2282 // |
| 79793 | /* 225249 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 79794 | /* 225252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79795 | /* 225256 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79796 | /* 225260 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79797 | /* 225264 */ // (strict_fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VDIVSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 79798 | /* 225264 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSDrr), |
| 79799 | /* 225269 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79800 | /* 225273 */ GIR_RootConstrainSelectedInstOperands, |
| 79801 | /* 225274 */ // GIR_Coverage, 2282, |
| 79802 | /* 225274 */ GIR_Done, |
| 79803 | /* 225275 */ // Label 5179: @225275 |
| 79804 | /* 225275 */ GIM_Try, /*On fail goto*//*Label 5180*/ GIMT_Encode4(225306), // Rule ID 2290 // |
| 79805 | /* 225280 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 79806 | /* 225283 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79807 | /* 225287 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79808 | /* 225291 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79809 | /* 225295 */ // (strict_fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (DIVSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 79810 | /* 225295 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVSDrr), |
| 79811 | /* 225300 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79812 | /* 225304 */ GIR_RootConstrainSelectedInstOperands, |
| 79813 | /* 225305 */ // GIR_Coverage, 2290, |
| 79814 | /* 225305 */ GIR_Done, |
| 79815 | /* 225306 */ // Label 5180: @225306 |
| 79816 | /* 225306 */ GIM_Try, /*On fail goto*//*Label 5181*/ GIMT_Encode4(225337), // Rule ID 6104 // |
| 79817 | /* 225311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79818 | /* 225314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 79819 | /* 225318 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 79820 | /* 225322 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 79821 | /* 225326 */ // (strict_fdiv:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VDIVSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 79822 | /* 225326 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSDZrr), |
| 79823 | /* 225331 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79824 | /* 225335 */ GIR_RootConstrainSelectedInstOperands, |
| 79825 | /* 225336 */ // GIR_Coverage, 6104, |
| 79826 | /* 225336 */ GIR_Done, |
| 79827 | /* 225337 */ // Label 5181: @225337 |
| 79828 | /* 225337 */ GIM_Reject, |
| 79829 | /* 225338 */ // Label 5166: @225338 |
| 79830 | /* 225338 */ GIM_Reject, |
| 79831 | /* 225339 */ // Label 5138: @225339 |
| 79832 | /* 225339 */ GIM_Try, /*On fail goto*//*Label 5182*/ GIMT_Encode4(225904), |
| 79833 | /* 225344 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 79834 | /* 225347 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 79835 | /* 225350 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79836 | /* 225354 */ GIM_Try, /*On fail goto*//*Label 5183*/ GIMT_Encode4(225415), // Rule ID 1038 // |
| 79837 | /* 225359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79838 | /* 225362 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79839 | /* 225366 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79840 | /* 225370 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 79841 | /* 225377 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79842 | /* 225381 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79843 | /* 225385 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79844 | /* 225387 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79845 | /* 225394 */ // (strict_fdiv:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (DIVR_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79846 | /* 225394 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m80), |
| 79847 | /* 225397 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79848 | /* 225399 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79849 | /* 225401 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79850 | /* 225405 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79851 | /* 225408 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79852 | /* 225413 */ GIR_RootConstrainSelectedInstOperands, |
| 79853 | /* 225414 */ // GIR_Coverage, 1038, |
| 79854 | /* 225414 */ GIR_EraseRootFromParent_Done, |
| 79855 | /* 225415 */ // Label 5183: @225415 |
| 79856 | /* 225415 */ GIM_Try, /*On fail goto*//*Label 5184*/ GIMT_Encode4(225476), // Rule ID 1040 // |
| 79857 | /* 225420 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79858 | /* 225423 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79859 | /* 225427 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79860 | /* 225431 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79861 | /* 225438 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79862 | /* 225442 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79863 | /* 225446 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79864 | /* 225448 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79865 | /* 225455 */ // (strict_fdiv:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (DIVR_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79866 | /* 225455 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m80), |
| 79867 | /* 225458 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79868 | /* 225460 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79869 | /* 225462 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79870 | /* 225466 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79871 | /* 225469 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79872 | /* 225474 */ GIR_RootConstrainSelectedInstOperands, |
| 79873 | /* 225475 */ // GIR_Coverage, 1040, |
| 79874 | /* 225475 */ GIR_EraseRootFromParent_Done, |
| 79875 | /* 225476 */ // Label 5184: @225476 |
| 79876 | /* 225476 */ GIM_Try, /*On fail goto*//*Label 5185*/ GIMT_Encode4(225544), // Rule ID 1026 // |
| 79877 | /* 225481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79878 | /* 225484 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79879 | /* 225488 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79880 | /* 225492 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79881 | /* 225495 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79882 | /* 225499 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79883 | /* 225506 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79884 | /* 225510 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79885 | /* 225514 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79886 | /* 225516 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79887 | /* 225523 */ // (strict_fdiv:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>, RFP80:{ *:[f80] }:$src1) => (DIVR_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79888 | /* 225523 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp80m32), |
| 79889 | /* 225526 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79890 | /* 225528 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79891 | /* 225530 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79892 | /* 225534 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79893 | /* 225537 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79894 | /* 225542 */ GIR_RootConstrainSelectedInstOperands, |
| 79895 | /* 225543 */ // GIR_Coverage, 1026, |
| 79896 | /* 225543 */ GIR_EraseRootFromParent_Done, |
| 79897 | /* 225544 */ // Label 5185: @225544 |
| 79898 | /* 225544 */ GIM_Try, /*On fail goto*//*Label 5186*/ GIMT_Encode4(225612), // Rule ID 1028 // |
| 79899 | /* 225549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79900 | /* 225552 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79901 | /* 225556 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79902 | /* 225560 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79903 | /* 225563 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79904 | /* 225567 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 79905 | /* 225574 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79906 | /* 225578 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79907 | /* 225582 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79908 | /* 225584 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79909 | /* 225591 */ // (strict_fdiv:{ *:[f80] } (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>, RFP80:{ *:[f80] }:$src1) => (DIVR_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79910 | /* 225591 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp80m64), |
| 79911 | /* 225594 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79912 | /* 225596 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79913 | /* 225598 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79914 | /* 225602 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79915 | /* 225605 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79916 | /* 225610 */ GIR_RootConstrainSelectedInstOperands, |
| 79917 | /* 225611 */ // GIR_Coverage, 1028, |
| 79918 | /* 225611 */ GIR_EraseRootFromParent_Done, |
| 79919 | /* 225612 */ // Label 5186: @225612 |
| 79920 | /* 225612 */ GIM_Try, /*On fail goto*//*Label 5187*/ GIMT_Encode4(225673), // Rule ID 1016 // |
| 79921 | /* 225617 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79922 | /* 225620 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79923 | /* 225624 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79924 | /* 225628 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79925 | /* 225632 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 79926 | /* 225639 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79927 | /* 225643 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79928 | /* 225645 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79929 | /* 225652 */ // (strict_fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79930 | /* 225652 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m80), |
| 79931 | /* 225655 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79932 | /* 225657 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79933 | /* 225659 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79934 | /* 225663 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79935 | /* 225666 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79936 | /* 225671 */ GIR_RootConstrainSelectedInstOperands, |
| 79937 | /* 225672 */ // GIR_Coverage, 1016, |
| 79938 | /* 225672 */ GIR_EraseRootFromParent_Done, |
| 79939 | /* 225673 */ // Label 5187: @225673 |
| 79940 | /* 225673 */ GIM_Try, /*On fail goto*//*Label 5188*/ GIMT_Encode4(225734), // Rule ID 1018 // |
| 79941 | /* 225678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79942 | /* 225681 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79943 | /* 225685 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79944 | /* 225689 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79945 | /* 225693 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79946 | /* 225700 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79947 | /* 225704 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79948 | /* 225706 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79949 | /* 225713 */ // (strict_fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79950 | /* 225713 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m80), |
| 79951 | /* 225716 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79952 | /* 225718 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79953 | /* 225720 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79954 | /* 225724 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79955 | /* 225727 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79956 | /* 225732 */ GIR_RootConstrainSelectedInstOperands, |
| 79957 | /* 225733 */ // GIR_Coverage, 1018, |
| 79958 | /* 225733 */ GIR_EraseRootFromParent_Done, |
| 79959 | /* 225734 */ // Label 5188: @225734 |
| 79960 | /* 225734 */ GIM_Try, /*On fail goto*//*Label 5189*/ GIMT_Encode4(225802), // Rule ID 1004 // |
| 79961 | /* 225739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79962 | /* 225742 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79963 | /* 225746 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79964 | /* 225750 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79965 | /* 225754 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79966 | /* 225757 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79967 | /* 225761 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79968 | /* 225768 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79969 | /* 225772 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79970 | /* 225774 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79971 | /* 225781 */ // (strict_fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>>) => (DIV_Fp80m32:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79972 | /* 225781 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80m32), |
| 79973 | /* 225784 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79974 | /* 225786 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79975 | /* 225788 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79976 | /* 225792 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79977 | /* 225795 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79978 | /* 225800 */ GIR_RootConstrainSelectedInstOperands, |
| 79979 | /* 225801 */ // GIR_Coverage, 1004, |
| 79980 | /* 225801 */ GIR_EraseRootFromParent_Done, |
| 79981 | /* 225802 */ // Label 5189: @225802 |
| 79982 | /* 225802 */ GIM_Try, /*On fail goto*//*Label 5190*/ GIMT_Encode4(225870), // Rule ID 1006 // |
| 79983 | /* 225807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79984 | /* 225810 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79985 | /* 225814 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79986 | /* 225818 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79987 | /* 225822 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79988 | /* 225825 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79989 | /* 225829 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 79990 | /* 225836 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79991 | /* 225840 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79992 | /* 225842 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79993 | /* 225849 */ // (strict_fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>>) => (DIV_Fp80m64:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79994 | /* 225849 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80m64), |
| 79995 | /* 225852 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79996 | /* 225854 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79997 | /* 225856 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79998 | /* 225860 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79999 | /* 225863 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80000 | /* 225868 */ GIR_RootConstrainSelectedInstOperands, |
| 80001 | /* 225869 */ // GIR_Coverage, 1006, |
| 80002 | /* 225869 */ GIR_EraseRootFromParent_Done, |
| 80003 | /* 225870 */ // Label 5190: @225870 |
| 80004 | /* 225870 */ GIM_Try, /*On fail goto*//*Label 5191*/ GIMT_Encode4(225903), // Rule ID 908 // |
| 80005 | /* 225875 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 80006 | /* 225878 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 80007 | /* 225882 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 80008 | /* 225886 */ // (strict_fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (DIV_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 80009 | /* 225886 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80), |
| 80010 | /* 225891 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 80011 | /* 225897 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 80012 | /* 225901 */ GIR_RootConstrainSelectedInstOperands, |
| 80013 | /* 225902 */ // GIR_Coverage, 908, |
| 80014 | /* 225902 */ GIR_Done, |
| 80015 | /* 225903 */ // Label 5191: @225903 |
| 80016 | /* 225903 */ GIM_Reject, |
| 80017 | /* 225904 */ // Label 5182: @225904 |
| 80018 | /* 225904 */ GIM_Reject, |
| 80019 | /* 225905 */ // Label 5139: @225905 |
| 80020 | /* 225905 */ GIM_Try, /*On fail goto*//*Label 5192*/ GIMT_Encode4(226134), |
| 80021 | /* 225910 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 80022 | /* 225913 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 80023 | /* 225916 */ GIM_Try, /*On fail goto*//*Label 5193*/ GIMT_Encode4(225978), // Rule ID 2260 // |
| 80024 | /* 225921 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 80025 | /* 225924 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80026 | /* 225928 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80027 | /* 225932 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80028 | /* 225936 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80029 | /* 225940 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80030 | /* 225943 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80031 | /* 225947 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80032 | /* 225951 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80033 | /* 225953 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80034 | /* 225960 */ // (strict_fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80035 | /* 225960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDrm), |
| 80036 | /* 225963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80037 | /* 225965 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80038 | /* 225967 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80039 | /* 225971 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80040 | /* 225976 */ GIR_RootConstrainSelectedInstOperands, |
| 80041 | /* 225977 */ // GIR_Coverage, 2260, |
| 80042 | /* 225977 */ GIR_EraseRootFromParent_Done, |
| 80043 | /* 225978 */ // Label 5193: @225978 |
| 80044 | /* 225978 */ GIM_Try, /*On fail goto*//*Label 5194*/ GIMT_Encode4(226040), // Rule ID 6659 // |
| 80045 | /* 225983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80046 | /* 225986 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80047 | /* 225990 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80048 | /* 225994 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80049 | /* 225998 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80050 | /* 226002 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80051 | /* 226005 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80052 | /* 226009 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80053 | /* 226013 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80054 | /* 226015 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80055 | /* 226022 */ // (strict_fdiv:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80056 | /* 226022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ128rm), |
| 80057 | /* 226025 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80058 | /* 226027 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80059 | /* 226029 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80060 | /* 226033 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80061 | /* 226038 */ GIR_RootConstrainSelectedInstOperands, |
| 80062 | /* 226039 */ // GIR_Coverage, 6659, |
| 80063 | /* 226039 */ GIR_EraseRootFromParent_Done, |
| 80064 | /* 226040 */ // Label 5194: @226040 |
| 80065 | /* 226040 */ GIM_Try, /*On fail goto*//*Label 5195*/ GIMT_Encode4(226071), // Rule ID 2258 // |
| 80066 | /* 226045 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 80067 | /* 226048 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80068 | /* 226052 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80069 | /* 226056 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80070 | /* 226060 */ // (strict_fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VDIVPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 80071 | /* 226060 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDrr), |
| 80072 | /* 226065 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80073 | /* 226069 */ GIR_RootConstrainSelectedInstOperands, |
| 80074 | /* 226070 */ // GIR_Coverage, 2258, |
| 80075 | /* 226070 */ GIR_Done, |
| 80076 | /* 226071 */ // Label 5195: @226071 |
| 80077 | /* 226071 */ GIM_Try, /*On fail goto*//*Label 5196*/ GIMT_Encode4(226102), // Rule ID 2274 // |
| 80078 | /* 226076 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 80079 | /* 226079 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80080 | /* 226083 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80081 | /* 226087 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80082 | /* 226091 */ // (strict_fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (DIVPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 80083 | /* 226091 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVPDrr), |
| 80084 | /* 226096 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80085 | /* 226100 */ GIR_RootConstrainSelectedInstOperands, |
| 80086 | /* 226101 */ // GIR_Coverage, 2274, |
| 80087 | /* 226101 */ GIR_Done, |
| 80088 | /* 226102 */ // Label 5196: @226102 |
| 80089 | /* 226102 */ GIM_Try, /*On fail goto*//*Label 5197*/ GIMT_Encode4(226133), // Rule ID 6655 // |
| 80090 | /* 226107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80091 | /* 226110 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80092 | /* 226114 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80093 | /* 226118 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80094 | /* 226122 */ // (strict_fdiv:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VDIVPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 80095 | /* 226122 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ128rr), |
| 80096 | /* 226127 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80097 | /* 226131 */ GIR_RootConstrainSelectedInstOperands, |
| 80098 | /* 226132 */ // GIR_Coverage, 6655, |
| 80099 | /* 226132 */ GIR_Done, |
| 80100 | /* 226133 */ // Label 5197: @226133 |
| 80101 | /* 226133 */ GIM_Reject, |
| 80102 | /* 226134 */ // Label 5192: @226134 |
| 80103 | /* 226134 */ GIM_Reject, |
| 80104 | /* 226135 */ // Label 5140: @226135 |
| 80105 | /* 226135 */ GIM_Try, /*On fail goto*//*Label 5198*/ GIMT_Encode4(226364), |
| 80106 | /* 226140 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 80107 | /* 226143 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 80108 | /* 226146 */ GIM_Try, /*On fail goto*//*Label 5199*/ GIMT_Encode4(226208), // Rule ID 2256 // |
| 80109 | /* 226151 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 80110 | /* 226154 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80111 | /* 226158 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80112 | /* 226162 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80113 | /* 226166 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80114 | /* 226170 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80115 | /* 226173 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80116 | /* 226177 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80117 | /* 226181 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80118 | /* 226183 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80119 | /* 226190 */ // (strict_fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80120 | /* 226190 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSrm), |
| 80121 | /* 226193 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80122 | /* 226195 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80123 | /* 226197 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80124 | /* 226201 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80125 | /* 226206 */ GIR_RootConstrainSelectedInstOperands, |
| 80126 | /* 226207 */ // GIR_Coverage, 2256, |
| 80127 | /* 226207 */ GIR_EraseRootFromParent_Done, |
| 80128 | /* 226208 */ // Label 5199: @226208 |
| 80129 | /* 226208 */ GIM_Try, /*On fail goto*//*Label 5200*/ GIMT_Encode4(226270), // Rule ID 6635 // |
| 80130 | /* 226213 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80131 | /* 226216 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80132 | /* 226220 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80133 | /* 226224 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80134 | /* 226228 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80135 | /* 226232 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80136 | /* 226235 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80137 | /* 226239 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80138 | /* 226243 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80139 | /* 226245 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80140 | /* 226252 */ // (strict_fdiv:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80141 | /* 226252 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ128rm), |
| 80142 | /* 226255 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80143 | /* 226257 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80144 | /* 226259 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80145 | /* 226263 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80146 | /* 226268 */ GIR_RootConstrainSelectedInstOperands, |
| 80147 | /* 226269 */ // GIR_Coverage, 6635, |
| 80148 | /* 226269 */ GIR_EraseRootFromParent_Done, |
| 80149 | /* 226270 */ // Label 5200: @226270 |
| 80150 | /* 226270 */ GIM_Try, /*On fail goto*//*Label 5201*/ GIMT_Encode4(226301), // Rule ID 2254 // |
| 80151 | /* 226275 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 80152 | /* 226278 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80153 | /* 226282 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80154 | /* 226286 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80155 | /* 226290 */ // (strict_fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VDIVPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 80156 | /* 226290 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSrr), |
| 80157 | /* 226295 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80158 | /* 226299 */ GIR_RootConstrainSelectedInstOperands, |
| 80159 | /* 226300 */ // GIR_Coverage, 2254, |
| 80160 | /* 226300 */ GIR_Done, |
| 80161 | /* 226301 */ // Label 5201: @226301 |
| 80162 | /* 226301 */ GIM_Try, /*On fail goto*//*Label 5202*/ GIMT_Encode4(226332), // Rule ID 2270 // |
| 80163 | /* 226306 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 80164 | /* 226309 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80165 | /* 226313 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80166 | /* 226317 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80167 | /* 226321 */ // (strict_fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (DIVPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 80168 | /* 226321 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVPSrr), |
| 80169 | /* 226326 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80170 | /* 226330 */ GIR_RootConstrainSelectedInstOperands, |
| 80171 | /* 226331 */ // GIR_Coverage, 2270, |
| 80172 | /* 226331 */ GIR_Done, |
| 80173 | /* 226332 */ // Label 5202: @226332 |
| 80174 | /* 226332 */ GIM_Try, /*On fail goto*//*Label 5203*/ GIMT_Encode4(226363), // Rule ID 6631 // |
| 80175 | /* 226337 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80176 | /* 226340 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80177 | /* 226344 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80178 | /* 226348 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80179 | /* 226352 */ // (strict_fdiv:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VDIVPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 80180 | /* 226352 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ128rr), |
| 80181 | /* 226357 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80182 | /* 226361 */ GIR_RootConstrainSelectedInstOperands, |
| 80183 | /* 226362 */ // GIR_Coverage, 6631, |
| 80184 | /* 226362 */ GIR_Done, |
| 80185 | /* 226363 */ // Label 5203: @226363 |
| 80186 | /* 226363 */ GIM_Reject, |
| 80187 | /* 226364 */ // Label 5198: @226364 |
| 80188 | /* 226364 */ GIM_Reject, |
| 80189 | /* 226365 */ // Label 5141: @226365 |
| 80190 | /* 226365 */ GIM_Try, /*On fail goto*//*Label 5204*/ GIMT_Encode4(226563), |
| 80191 | /* 226370 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 80192 | /* 226373 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 80193 | /* 226376 */ GIM_Try, /*On fail goto*//*Label 5205*/ GIMT_Encode4(226438), // Rule ID 2268 // |
| 80194 | /* 226381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 80195 | /* 226384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 80196 | /* 226388 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 80197 | /* 226392 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80198 | /* 226396 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80199 | /* 226400 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80200 | /* 226403 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80201 | /* 226407 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80202 | /* 226411 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80203 | /* 226413 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80204 | /* 226420 */ // (strict_fdiv:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80205 | /* 226420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDYrm), |
| 80206 | /* 226423 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80207 | /* 226425 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80208 | /* 226427 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80209 | /* 226431 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80210 | /* 226436 */ GIR_RootConstrainSelectedInstOperands, |
| 80211 | /* 226437 */ // GIR_Coverage, 2268, |
| 80212 | /* 226437 */ GIR_EraseRootFromParent_Done, |
| 80213 | /* 226438 */ // Label 5205: @226438 |
| 80214 | /* 226438 */ GIM_Try, /*On fail goto*//*Label 5206*/ GIMT_Encode4(226500), // Rule ID 6671 // |
| 80215 | /* 226443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80216 | /* 226446 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80217 | /* 226450 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80218 | /* 226454 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80219 | /* 226458 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80220 | /* 226462 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80221 | /* 226465 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80222 | /* 226469 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80223 | /* 226473 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80224 | /* 226475 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80225 | /* 226482 */ // (strict_fdiv:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80226 | /* 226482 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ256rm), |
| 80227 | /* 226485 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80228 | /* 226487 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80229 | /* 226489 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80230 | /* 226493 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80231 | /* 226498 */ GIR_RootConstrainSelectedInstOperands, |
| 80232 | /* 226499 */ // GIR_Coverage, 6671, |
| 80233 | /* 226499 */ GIR_EraseRootFromParent_Done, |
| 80234 | /* 226500 */ // Label 5206: @226500 |
| 80235 | /* 226500 */ GIM_Try, /*On fail goto*//*Label 5207*/ GIMT_Encode4(226531), // Rule ID 2266 // |
| 80236 | /* 226505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 80237 | /* 226508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 80238 | /* 226512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 80239 | /* 226516 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 80240 | /* 226520 */ // (strict_fdiv:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VDIVPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 80241 | /* 226520 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDYrr), |
| 80242 | /* 226525 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80243 | /* 226529 */ GIR_RootConstrainSelectedInstOperands, |
| 80244 | /* 226530 */ // GIR_Coverage, 2266, |
| 80245 | /* 226530 */ GIR_Done, |
| 80246 | /* 226531 */ // Label 5207: @226531 |
| 80247 | /* 226531 */ GIM_Try, /*On fail goto*//*Label 5208*/ GIMT_Encode4(226562), // Rule ID 6667 // |
| 80248 | /* 226536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80249 | /* 226539 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80250 | /* 226543 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80251 | /* 226547 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80252 | /* 226551 */ // (strict_fdiv:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VDIVPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 80253 | /* 226551 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ256rr), |
| 80254 | /* 226556 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80255 | /* 226560 */ GIR_RootConstrainSelectedInstOperands, |
| 80256 | /* 226561 */ // GIR_Coverage, 6667, |
| 80257 | /* 226561 */ GIR_Done, |
| 80258 | /* 226562 */ // Label 5208: @226562 |
| 80259 | /* 226562 */ GIM_Reject, |
| 80260 | /* 226563 */ // Label 5204: @226563 |
| 80261 | /* 226563 */ GIM_Reject, |
| 80262 | /* 226564 */ // Label 5142: @226564 |
| 80263 | /* 226564 */ GIM_Try, /*On fail goto*//*Label 5209*/ GIMT_Encode4(226661), |
| 80264 | /* 226569 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 80265 | /* 226572 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 80266 | /* 226575 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80267 | /* 226579 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80268 | /* 226583 */ GIM_Try, /*On fail goto*//*Label 5210*/ GIMT_Encode4(226637), // Rule ID 6695 // |
| 80269 | /* 226588 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 80270 | /* 226591 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80271 | /* 226595 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80272 | /* 226599 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80273 | /* 226602 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80274 | /* 226606 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80275 | /* 226610 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80276 | /* 226612 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80277 | /* 226619 */ // (strict_fdiv:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80278 | /* 226619 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ128rm), |
| 80279 | /* 226622 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80280 | /* 226624 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80281 | /* 226626 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80282 | /* 226630 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80283 | /* 226635 */ GIR_RootConstrainSelectedInstOperands, |
| 80284 | /* 226636 */ // GIR_Coverage, 6695, |
| 80285 | /* 226636 */ GIR_EraseRootFromParent_Done, |
| 80286 | /* 226637 */ // Label 5210: @226637 |
| 80287 | /* 226637 */ GIM_Try, /*On fail goto*//*Label 5211*/ GIMT_Encode4(226660), // Rule ID 6691 // |
| 80288 | /* 226642 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 80289 | /* 226645 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80290 | /* 226649 */ // (strict_fdiv:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VDIVPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 80291 | /* 226649 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ128rr), |
| 80292 | /* 226654 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80293 | /* 226658 */ GIR_RootConstrainSelectedInstOperands, |
| 80294 | /* 226659 */ // GIR_Coverage, 6691, |
| 80295 | /* 226659 */ GIR_Done, |
| 80296 | /* 226660 */ // Label 5211: @226660 |
| 80297 | /* 226660 */ GIM_Reject, |
| 80298 | /* 226661 */ // Label 5209: @226661 |
| 80299 | /* 226661 */ GIM_Reject, |
| 80300 | /* 226662 */ // Label 5143: @226662 |
| 80301 | /* 226662 */ GIM_Try, /*On fail goto*//*Label 5212*/ GIMT_Encode4(226860), |
| 80302 | /* 226667 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 80303 | /* 226670 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 80304 | /* 226673 */ GIM_Try, /*On fail goto*//*Label 5213*/ GIMT_Encode4(226735), // Rule ID 2264 // |
| 80305 | /* 226678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 80306 | /* 226681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 80307 | /* 226685 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 80308 | /* 226689 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80309 | /* 226693 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80310 | /* 226697 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80311 | /* 226700 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80312 | /* 226704 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80313 | /* 226708 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80314 | /* 226710 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80315 | /* 226717 */ // (strict_fdiv:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80316 | /* 226717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSYrm), |
| 80317 | /* 226720 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80318 | /* 226722 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80319 | /* 226724 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80320 | /* 226728 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80321 | /* 226733 */ GIR_RootConstrainSelectedInstOperands, |
| 80322 | /* 226734 */ // GIR_Coverage, 2264, |
| 80323 | /* 226734 */ GIR_EraseRootFromParent_Done, |
| 80324 | /* 226735 */ // Label 5213: @226735 |
| 80325 | /* 226735 */ GIM_Try, /*On fail goto*//*Label 5214*/ GIMT_Encode4(226797), // Rule ID 6647 // |
| 80326 | /* 226740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80327 | /* 226743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80328 | /* 226747 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80329 | /* 226751 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80330 | /* 226755 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80331 | /* 226759 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80332 | /* 226762 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80333 | /* 226766 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80334 | /* 226770 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80335 | /* 226772 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80336 | /* 226779 */ // (strict_fdiv:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80337 | /* 226779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ256rm), |
| 80338 | /* 226782 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80339 | /* 226784 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80340 | /* 226786 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80341 | /* 226790 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80342 | /* 226795 */ GIR_RootConstrainSelectedInstOperands, |
| 80343 | /* 226796 */ // GIR_Coverage, 6647, |
| 80344 | /* 226796 */ GIR_EraseRootFromParent_Done, |
| 80345 | /* 226797 */ // Label 5214: @226797 |
| 80346 | /* 226797 */ GIM_Try, /*On fail goto*//*Label 5215*/ GIMT_Encode4(226828), // Rule ID 2262 // |
| 80347 | /* 226802 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 80348 | /* 226805 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 80349 | /* 226809 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 80350 | /* 226813 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 80351 | /* 226817 */ // (strict_fdiv:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VDIVPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 80352 | /* 226817 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSYrr), |
| 80353 | /* 226822 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80354 | /* 226826 */ GIR_RootConstrainSelectedInstOperands, |
| 80355 | /* 226827 */ // GIR_Coverage, 2262, |
| 80356 | /* 226827 */ GIR_Done, |
| 80357 | /* 226828 */ // Label 5215: @226828 |
| 80358 | /* 226828 */ GIM_Try, /*On fail goto*//*Label 5216*/ GIMT_Encode4(226859), // Rule ID 6643 // |
| 80359 | /* 226833 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80360 | /* 226836 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80361 | /* 226840 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80362 | /* 226844 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80363 | /* 226848 */ // (strict_fdiv:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VDIVPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 80364 | /* 226848 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ256rr), |
| 80365 | /* 226853 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80366 | /* 226857 */ GIR_RootConstrainSelectedInstOperands, |
| 80367 | /* 226858 */ // GIR_Coverage, 6643, |
| 80368 | /* 226858 */ GIR_Done, |
| 80369 | /* 226859 */ // Label 5216: @226859 |
| 80370 | /* 226859 */ GIM_Reject, |
| 80371 | /* 226860 */ // Label 5212: @226860 |
| 80372 | /* 226860 */ GIM_Reject, |
| 80373 | /* 226861 */ // Label 5144: @226861 |
| 80374 | /* 226861 */ GIM_Try, /*On fail goto*//*Label 5217*/ GIMT_Encode4(226958), |
| 80375 | /* 226866 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 80376 | /* 226869 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 80377 | /* 226872 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80378 | /* 226876 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80379 | /* 226880 */ GIM_Try, /*On fail goto*//*Label 5218*/ GIMT_Encode4(226934), // Rule ID 6623 // |
| 80380 | /* 226885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80381 | /* 226888 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80382 | /* 226892 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80383 | /* 226896 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80384 | /* 226899 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80385 | /* 226903 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80386 | /* 226907 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80387 | /* 226909 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80388 | /* 226916 */ // (strict_fdiv:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80389 | /* 226916 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZrm), |
| 80390 | /* 226919 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80391 | /* 226921 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80392 | /* 226923 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80393 | /* 226927 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80394 | /* 226932 */ GIR_RootConstrainSelectedInstOperands, |
| 80395 | /* 226933 */ // GIR_Coverage, 6623, |
| 80396 | /* 226933 */ GIR_EraseRootFromParent_Done, |
| 80397 | /* 226934 */ // Label 5218: @226934 |
| 80398 | /* 226934 */ GIM_Try, /*On fail goto*//*Label 5219*/ GIMT_Encode4(226957), // Rule ID 6619 // |
| 80399 | /* 226939 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80400 | /* 226942 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80401 | /* 226946 */ // (strict_fdiv:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VDIVPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 80402 | /* 226946 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZrr), |
| 80403 | /* 226951 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80404 | /* 226955 */ GIR_RootConstrainSelectedInstOperands, |
| 80405 | /* 226956 */ // GIR_Coverage, 6619, |
| 80406 | /* 226956 */ GIR_Done, |
| 80407 | /* 226957 */ // Label 5219: @226957 |
| 80408 | /* 226957 */ GIM_Reject, |
| 80409 | /* 226958 */ // Label 5217: @226958 |
| 80410 | /* 226958 */ GIM_Reject, |
| 80411 | /* 226959 */ // Label 5145: @226959 |
| 80412 | /* 226959 */ GIM_Try, /*On fail goto*//*Label 5220*/ GIMT_Encode4(227056), |
| 80413 | /* 226964 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 80414 | /* 226967 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 80415 | /* 226970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80416 | /* 226974 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80417 | /* 226978 */ GIM_Try, /*On fail goto*//*Label 5221*/ GIMT_Encode4(227032), // Rule ID 6707 // |
| 80418 | /* 226983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 80419 | /* 226986 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80420 | /* 226990 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80421 | /* 226994 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80422 | /* 226997 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80423 | /* 227001 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80424 | /* 227005 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80425 | /* 227007 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80426 | /* 227014 */ // (strict_fdiv:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80427 | /* 227014 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ256rm), |
| 80428 | /* 227017 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80429 | /* 227019 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80430 | /* 227021 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80431 | /* 227025 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80432 | /* 227030 */ GIR_RootConstrainSelectedInstOperands, |
| 80433 | /* 227031 */ // GIR_Coverage, 6707, |
| 80434 | /* 227031 */ GIR_EraseRootFromParent_Done, |
| 80435 | /* 227032 */ // Label 5221: @227032 |
| 80436 | /* 227032 */ GIM_Try, /*On fail goto*//*Label 5222*/ GIMT_Encode4(227055), // Rule ID 6703 // |
| 80437 | /* 227037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 80438 | /* 227040 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 80439 | /* 227044 */ // (strict_fdiv:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VDIVPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 80440 | /* 227044 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ256rr), |
| 80441 | /* 227049 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80442 | /* 227053 */ GIR_RootConstrainSelectedInstOperands, |
| 80443 | /* 227054 */ // GIR_Coverage, 6703, |
| 80444 | /* 227054 */ GIR_Done, |
| 80445 | /* 227055 */ // Label 5222: @227055 |
| 80446 | /* 227055 */ GIM_Reject, |
| 80447 | /* 227056 */ // Label 5220: @227056 |
| 80448 | /* 227056 */ GIM_Reject, |
| 80449 | /* 227057 */ // Label 5146: @227057 |
| 80450 | /* 227057 */ GIM_Try, /*On fail goto*//*Label 5223*/ GIMT_Encode4(227154), |
| 80451 | /* 227062 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 80452 | /* 227065 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 80453 | /* 227068 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80454 | /* 227072 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80455 | /* 227076 */ GIM_Try, /*On fail goto*//*Label 5224*/ GIMT_Encode4(227130), // Rule ID 6611 // |
| 80456 | /* 227081 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80457 | /* 227084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80458 | /* 227088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80459 | /* 227092 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80460 | /* 227095 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80461 | /* 227099 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80462 | /* 227103 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80463 | /* 227105 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80464 | /* 227112 */ // (strict_fdiv:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80465 | /* 227112 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZrm), |
| 80466 | /* 227115 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80467 | /* 227117 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80468 | /* 227119 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80469 | /* 227123 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80470 | /* 227128 */ GIR_RootConstrainSelectedInstOperands, |
| 80471 | /* 227129 */ // GIR_Coverage, 6611, |
| 80472 | /* 227129 */ GIR_EraseRootFromParent_Done, |
| 80473 | /* 227130 */ // Label 5224: @227130 |
| 80474 | /* 227130 */ GIM_Try, /*On fail goto*//*Label 5225*/ GIMT_Encode4(227153), // Rule ID 6607 // |
| 80475 | /* 227135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80476 | /* 227138 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80477 | /* 227142 */ // (strict_fdiv:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VDIVPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 80478 | /* 227142 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZrr), |
| 80479 | /* 227147 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80480 | /* 227151 */ GIR_RootConstrainSelectedInstOperands, |
| 80481 | /* 227152 */ // GIR_Coverage, 6607, |
| 80482 | /* 227152 */ GIR_Done, |
| 80483 | /* 227153 */ // Label 5225: @227153 |
| 80484 | /* 227153 */ GIM_Reject, |
| 80485 | /* 227154 */ // Label 5223: @227154 |
| 80486 | /* 227154 */ GIM_Reject, |
| 80487 | /* 227155 */ // Label 5147: @227155 |
| 80488 | /* 227155 */ GIM_Try, /*On fail goto*//*Label 5226*/ GIMT_Encode4(227252), |
| 80489 | /* 227160 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 80490 | /* 227163 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 80491 | /* 227166 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80492 | /* 227170 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80493 | /* 227174 */ GIM_Try, /*On fail goto*//*Label 5227*/ GIMT_Encode4(227228), // Rule ID 6683 // |
| 80494 | /* 227179 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80495 | /* 227182 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80496 | /* 227186 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80497 | /* 227190 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80498 | /* 227193 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80499 | /* 227197 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80500 | /* 227201 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80501 | /* 227203 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80502 | /* 227210 */ // (strict_fdiv:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 80503 | /* 227210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZrm), |
| 80504 | /* 227213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80505 | /* 227215 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80506 | /* 227217 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80507 | /* 227221 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80508 | /* 227226 */ GIR_RootConstrainSelectedInstOperands, |
| 80509 | /* 227227 */ // GIR_Coverage, 6683, |
| 80510 | /* 227227 */ GIR_EraseRootFromParent_Done, |
| 80511 | /* 227228 */ // Label 5227: @227228 |
| 80512 | /* 227228 */ GIM_Try, /*On fail goto*//*Label 5228*/ GIMT_Encode4(227251), // Rule ID 6679 // |
| 80513 | /* 227233 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80514 | /* 227236 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80515 | /* 227240 */ // (strict_fdiv:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VDIVPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 80516 | /* 227240 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZrr), |
| 80517 | /* 227245 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80518 | /* 227249 */ GIR_RootConstrainSelectedInstOperands, |
| 80519 | /* 227250 */ // GIR_Coverage, 6679, |
| 80520 | /* 227250 */ GIR_Done, |
| 80521 | /* 227251 */ // Label 5228: @227251 |
| 80522 | /* 227251 */ GIM_Reject, |
| 80523 | /* 227252 */ // Label 5226: @227252 |
| 80524 | /* 227252 */ GIM_Reject, |
| 80525 | /* 227253 */ // Label 5148: @227253 |
| 80526 | /* 227253 */ GIM_Reject, |
| 80527 | /* 227254 */ // Label 72: @227254 |
| 80528 | /* 227254 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 5241*/ GIMT_Encode4(233241), |
| 80529 | /* 227265 */ /*GILLT_s16*//*Label 5229*/ GIMT_Encode4(227349), |
| 80530 | /* 227269 */ /*GILLT_s32*//*Label 5230*/ GIMT_Encode4(227594), |
| 80531 | /* 227273 */ /*GILLT_s64*//*Label 5231*/ GIMT_Encode4(228331), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 80532 | /* 227289 */ /*GILLT_v2s64*//*Label 5232*/ GIMT_Encode4(229068), GIMT_Encode4(0), |
| 80533 | /* 227297 */ /*GILLT_v4s32*//*Label 5233*/ GIMT_Encode4(229805), |
| 80534 | /* 227301 */ /*GILLT_v4s64*//*Label 5234*/ GIMT_Encode4(230542), GIMT_Encode4(0), |
| 80535 | /* 227309 */ /*GILLT_v8s16*//*Label 5235*/ GIMT_Encode4(231279), |
| 80536 | /* 227313 */ /*GILLT_v8s32*//*Label 5236*/ GIMT_Encode4(231524), |
| 80537 | /* 227317 */ /*GILLT_v8s64*//*Label 5237*/ GIMT_Encode4(232261), GIMT_Encode4(0), GIMT_Encode4(0), |
| 80538 | /* 227329 */ /*GILLT_v16s16*//*Label 5238*/ GIMT_Encode4(232506), |
| 80539 | /* 227333 */ /*GILLT_v16s32*//*Label 5239*/ GIMT_Encode4(232751), GIMT_Encode4(0), GIMT_Encode4(0), |
| 80540 | /* 227345 */ /*GILLT_v32s16*//*Label 5240*/ GIMT_Encode4(232996), |
| 80541 | /* 227349 */ // Label 5229: @227349 |
| 80542 | /* 227349 */ GIM_Try, /*On fail goto*//*Label 5242*/ GIMT_Encode4(227593), |
| 80543 | /* 227354 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 80544 | /* 227357 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 80545 | /* 227360 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 80546 | /* 227363 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80547 | /* 227367 */ GIM_Try, /*On fail goto*//*Label 5243*/ GIMT_Encode4(227431), // Rule ID 10157 // |
| 80548 | /* 227372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80549 | /* 227375 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80550 | /* 227379 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80551 | /* 227383 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80552 | /* 227386 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80553 | /* 227390 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80554 | /* 227394 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80555 | /* 227398 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80556 | /* 227402 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80557 | /* 227404 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80558 | /* 227411 */ // (strict_fma:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VFMADD132SHZm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80559 | /* 227411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SHZm), |
| 80560 | /* 227414 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80561 | /* 227416 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80562 | /* 227418 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80563 | /* 227420 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80564 | /* 227424 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80565 | /* 227429 */ GIR_RootConstrainSelectedInstOperands, |
| 80566 | /* 227430 */ // GIR_Coverage, 10157, |
| 80567 | /* 227430 */ GIR_EraseRootFromParent_Done, |
| 80568 | /* 227431 */ // Label 5243: @227431 |
| 80569 | /* 227431 */ GIM_Try, /*On fail goto*//*Label 5244*/ GIMT_Encode4(227495), // Rule ID 10155 // |
| 80570 | /* 227436 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80571 | /* 227439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80572 | /* 227443 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80573 | /* 227447 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80574 | /* 227451 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80575 | /* 227454 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80576 | /* 227458 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80577 | /* 227462 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80578 | /* 227466 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80579 | /* 227468 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80580 | /* 227475 */ // (strict_fma:{ *:[f16] } FR16X:{ *:[f16] }:$src2, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR16X:{ *:[f16] }:$src1) => (VFMADD231SHZm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80581 | /* 227475 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SHZm), |
| 80582 | /* 227478 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80583 | /* 227480 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80584 | /* 227482 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80585 | /* 227484 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80586 | /* 227488 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80587 | /* 227493 */ GIR_RootConstrainSelectedInstOperands, |
| 80588 | /* 227494 */ // GIR_Coverage, 10155, |
| 80589 | /* 227494 */ GIR_EraseRootFromParent_Done, |
| 80590 | /* 227495 */ // Label 5244: @227495 |
| 80591 | /* 227495 */ GIM_Try, /*On fail goto*//*Label 5245*/ GIMT_Encode4(227559), // Rule ID 10152 // |
| 80592 | /* 227500 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80593 | /* 227503 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80594 | /* 227507 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80595 | /* 227511 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80596 | /* 227515 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80597 | /* 227519 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80598 | /* 227522 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80599 | /* 227526 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80600 | /* 227530 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80601 | /* 227532 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80602 | /* 227539 */ // (strict_fma:{ *:[f16] } FR16X:{ *:[f16] }:$src2, FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213SHZm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80603 | /* 227539 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SHZm), |
| 80604 | /* 227542 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80605 | /* 227544 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80606 | /* 227546 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80607 | /* 227548 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80608 | /* 227552 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80609 | /* 227557 */ GIR_RootConstrainSelectedInstOperands, |
| 80610 | /* 227558 */ // GIR_Coverage, 10152, |
| 80611 | /* 227558 */ GIR_EraseRootFromParent_Done, |
| 80612 | /* 227559 */ // Label 5245: @227559 |
| 80613 | /* 227559 */ GIM_Try, /*On fail goto*//*Label 5246*/ GIMT_Encode4(227592), // Rule ID 10150 // |
| 80614 | /* 227564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80615 | /* 227567 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80616 | /* 227571 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80617 | /* 227575 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80618 | /* 227579 */ // (strict_fma:{ *:[f16] } FR16X:{ *:[f16] }:$src2, FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src3) => (VFMADD213SHZr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2, FR16X:{ *:[f16] }:$src3) |
| 80619 | /* 227579 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SHZr), |
| 80620 | /* 227582 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80621 | /* 227584 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80622 | /* 227586 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80623 | /* 227588 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80624 | /* 227590 */ GIR_RootConstrainSelectedInstOperands, |
| 80625 | /* 227591 */ // GIR_Coverage, 10150, |
| 80626 | /* 227591 */ GIR_EraseRootFromParent_Done, |
| 80627 | /* 227592 */ // Label 5246: @227592 |
| 80628 | /* 227592 */ GIM_Reject, |
| 80629 | /* 227593 */ // Label 5242: @227593 |
| 80630 | /* 227593 */ GIM_Reject, |
| 80631 | /* 227594 */ // Label 5230: @227594 |
| 80632 | /* 227594 */ GIM_Try, /*On fail goto*//*Label 5247*/ GIMT_Encode4(228330), |
| 80633 | /* 227599 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 80634 | /* 227602 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 80635 | /* 227605 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 80636 | /* 227608 */ GIM_Try, /*On fail goto*//*Label 5248*/ GIMT_Encode4(227676), // Rule ID 1303 // |
| 80637 | /* 227613 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80638 | /* 227616 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80639 | /* 227620 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80640 | /* 227624 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80641 | /* 227628 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80642 | /* 227631 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80643 | /* 227635 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80644 | /* 227639 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80645 | /* 227643 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80646 | /* 227647 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80647 | /* 227649 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80648 | /* 227656 */ // (strict_fma:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VFMADD132SSm:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80649 | /* 227656 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SSm), |
| 80650 | /* 227659 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80651 | /* 227661 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80652 | /* 227663 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80653 | /* 227665 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80654 | /* 227669 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80655 | /* 227674 */ GIR_RootConstrainSelectedInstOperands, |
| 80656 | /* 227675 */ // GIR_Coverage, 1303, |
| 80657 | /* 227675 */ GIR_EraseRootFromParent_Done, |
| 80658 | /* 227676 */ // Label 5248: @227676 |
| 80659 | /* 227676 */ GIM_Try, /*On fail goto*//*Label 5249*/ GIMT_Encode4(227744), // Rule ID 10139 // |
| 80660 | /* 227681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80661 | /* 227684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80662 | /* 227688 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80663 | /* 227692 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80664 | /* 227696 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80665 | /* 227699 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80666 | /* 227703 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80667 | /* 227707 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80668 | /* 227711 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80669 | /* 227715 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80670 | /* 227717 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80671 | /* 227724 */ // (strict_fma:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VFMADD132SSZm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80672 | /* 227724 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SSZm), |
| 80673 | /* 227727 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80674 | /* 227729 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80675 | /* 227731 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80676 | /* 227733 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80677 | /* 227737 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80678 | /* 227742 */ GIR_RootConstrainSelectedInstOperands, |
| 80679 | /* 227743 */ // GIR_Coverage, 10139, |
| 80680 | /* 227743 */ GIR_EraseRootFromParent_Done, |
| 80681 | /* 227744 */ // Label 5249: @227744 |
| 80682 | /* 227744 */ GIM_Try, /*On fail goto*//*Label 5250*/ GIMT_Encode4(227812), // Rule ID 23280 // |
| 80683 | /* 227749 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80684 | /* 227752 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80685 | /* 227756 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80686 | /* 227760 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80687 | /* 227764 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80688 | /* 227767 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80689 | /* 227771 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80690 | /* 227775 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80691 | /* 227779 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80692 | /* 227783 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80693 | /* 227785 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80694 | /* 227792 */ // (strict_fma:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src3) => (VFMADDSS4mr:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2, FR32:{ *:[f32] }:$src3) |
| 80695 | /* 227792 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4mr), |
| 80696 | /* 227795 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80697 | /* 227797 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80698 | /* 227799 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80699 | /* 227803 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80700 | /* 227805 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80701 | /* 227810 */ GIR_RootConstrainSelectedInstOperands, |
| 80702 | /* 227811 */ // GIR_Coverage, 23280, |
| 80703 | /* 227811 */ GIR_EraseRootFromParent_Done, |
| 80704 | /* 227812 */ // Label 5250: @227812 |
| 80705 | /* 227812 */ GIM_Try, /*On fail goto*//*Label 5251*/ GIMT_Encode4(227880), // Rule ID 1301 // |
| 80706 | /* 227817 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80707 | /* 227820 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80708 | /* 227824 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80709 | /* 227828 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80710 | /* 227832 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80711 | /* 227836 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80712 | /* 227839 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80713 | /* 227843 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80714 | /* 227847 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80715 | /* 227851 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80716 | /* 227853 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80717 | /* 227860 */ // (strict_fma:{ *:[f32] } FR32:{ *:[f32] }:$src2, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (VFMADD231SSm:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80718 | /* 227860 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SSm), |
| 80719 | /* 227863 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80720 | /* 227865 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80721 | /* 227867 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80722 | /* 227869 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80723 | /* 227873 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80724 | /* 227878 */ GIR_RootConstrainSelectedInstOperands, |
| 80725 | /* 227879 */ // GIR_Coverage, 1301, |
| 80726 | /* 227879 */ GIR_EraseRootFromParent_Done, |
| 80727 | /* 227880 */ // Label 5251: @227880 |
| 80728 | /* 227880 */ GIM_Try, /*On fail goto*//*Label 5252*/ GIMT_Encode4(227948), // Rule ID 1365 // |
| 80729 | /* 227885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80730 | /* 227888 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80731 | /* 227892 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80732 | /* 227896 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80733 | /* 227900 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80734 | /* 227904 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80735 | /* 227907 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80736 | /* 227911 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80737 | /* 227915 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80738 | /* 227919 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80739 | /* 227921 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80740 | /* 227928 */ // (strict_fma:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src3) => (VFMADDSS4mr:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2, FR32:{ *:[f32] }:$src3) |
| 80741 | /* 227928 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4mr), |
| 80742 | /* 227931 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80743 | /* 227933 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80744 | /* 227935 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80745 | /* 227939 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80746 | /* 227941 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80747 | /* 227946 */ GIR_RootConstrainSelectedInstOperands, |
| 80748 | /* 227947 */ // GIR_Coverage, 1365, |
| 80749 | /* 227947 */ GIR_EraseRootFromParent_Done, |
| 80750 | /* 227948 */ // Label 5252: @227948 |
| 80751 | /* 227948 */ GIM_Try, /*On fail goto*//*Label 5253*/ GIMT_Encode4(228016), // Rule ID 10137 // |
| 80752 | /* 227953 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80753 | /* 227956 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80754 | /* 227960 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80755 | /* 227964 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80756 | /* 227968 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80757 | /* 227972 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80758 | /* 227975 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80759 | /* 227979 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80760 | /* 227983 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80761 | /* 227987 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80762 | /* 227989 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80763 | /* 227996 */ // (strict_fma:{ *:[f32] } FR32X:{ *:[f32] }:$src2, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32X:{ *:[f32] }:$src1) => (VFMADD231SSZm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80764 | /* 227996 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SSZm), |
| 80765 | /* 227999 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80766 | /* 228001 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80767 | /* 228003 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80768 | /* 228005 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80769 | /* 228009 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80770 | /* 228014 */ GIR_RootConstrainSelectedInstOperands, |
| 80771 | /* 228015 */ // GIR_Coverage, 10137, |
| 80772 | /* 228015 */ GIR_EraseRootFromParent_Done, |
| 80773 | /* 228016 */ // Label 5253: @228016 |
| 80774 | /* 228016 */ GIM_Try, /*On fail goto*//*Label 5254*/ GIMT_Encode4(228084), // Rule ID 1299 // |
| 80775 | /* 228021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80776 | /* 228024 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80777 | /* 228028 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80778 | /* 228032 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80779 | /* 228036 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80780 | /* 228040 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80781 | /* 228044 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80782 | /* 228047 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80783 | /* 228051 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80784 | /* 228055 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80785 | /* 228057 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80786 | /* 228064 */ // (strict_fma:{ *:[f32] } FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213SSm:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80787 | /* 228064 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSm), |
| 80788 | /* 228067 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80789 | /* 228069 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80790 | /* 228071 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80791 | /* 228073 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80792 | /* 228077 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80793 | /* 228082 */ GIR_RootConstrainSelectedInstOperands, |
| 80794 | /* 228083 */ // GIR_Coverage, 1299, |
| 80795 | /* 228083 */ GIR_EraseRootFromParent_Done, |
| 80796 | /* 228084 */ // Label 5254: @228084 |
| 80797 | /* 228084 */ GIM_Try, /*On fail goto*//*Label 5255*/ GIMT_Encode4(228152), // Rule ID 1363 // |
| 80798 | /* 228089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80799 | /* 228092 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80800 | /* 228096 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80801 | /* 228100 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80802 | /* 228104 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80803 | /* 228108 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80804 | /* 228112 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80805 | /* 228115 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80806 | /* 228119 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80807 | /* 228123 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80808 | /* 228125 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80809 | /* 228132 */ // (strict_fma:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDSS4rm:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80810 | /* 228132 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4rm), |
| 80811 | /* 228135 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80812 | /* 228137 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80813 | /* 228139 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 80814 | /* 228141 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80815 | /* 228145 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80816 | /* 228150 */ GIR_RootConstrainSelectedInstOperands, |
| 80817 | /* 228151 */ // GIR_Coverage, 1363, |
| 80818 | /* 228151 */ GIR_EraseRootFromParent_Done, |
| 80819 | /* 228152 */ // Label 5255: @228152 |
| 80820 | /* 228152 */ GIM_Try, /*On fail goto*//*Label 5256*/ GIMT_Encode4(228220), // Rule ID 10134 // |
| 80821 | /* 228157 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80822 | /* 228160 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80823 | /* 228164 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80824 | /* 228168 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80825 | /* 228172 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80826 | /* 228176 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80827 | /* 228180 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80828 | /* 228183 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80829 | /* 228187 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80830 | /* 228191 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80831 | /* 228193 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80832 | /* 228200 */ // (strict_fma:{ *:[f32] } FR32X:{ *:[f32] }:$src2, FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213SSZm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80833 | /* 228200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSZm), |
| 80834 | /* 228203 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80835 | /* 228205 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80836 | /* 228207 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80837 | /* 228209 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80838 | /* 228213 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80839 | /* 228218 */ GIR_RootConstrainSelectedInstOperands, |
| 80840 | /* 228219 */ // GIR_Coverage, 10134, |
| 80841 | /* 228219 */ GIR_EraseRootFromParent_Done, |
| 80842 | /* 228220 */ // Label 5256: @228220 |
| 80843 | /* 228220 */ GIM_Try, /*On fail goto*//*Label 5257*/ GIMT_Encode4(228257), // Rule ID 1297 // |
| 80844 | /* 228225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80845 | /* 228228 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80846 | /* 228232 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80847 | /* 228236 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80848 | /* 228240 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80849 | /* 228244 */ // (strict_fma:{ *:[f32] } FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src3) => (VFMADD213SSr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) |
| 80850 | /* 228244 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSr), |
| 80851 | /* 228247 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80852 | /* 228249 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80853 | /* 228251 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80854 | /* 228253 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80855 | /* 228255 */ GIR_RootConstrainSelectedInstOperands, |
| 80856 | /* 228256 */ // GIR_Coverage, 1297, |
| 80857 | /* 228256 */ GIR_EraseRootFromParent_Done, |
| 80858 | /* 228257 */ // Label 5257: @228257 |
| 80859 | /* 228257 */ GIM_Try, /*On fail goto*//*Label 5258*/ GIMT_Encode4(228292), // Rule ID 1361 // |
| 80860 | /* 228262 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80861 | /* 228265 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80862 | /* 228269 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80863 | /* 228273 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80864 | /* 228277 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80865 | /* 228281 */ // (strict_fma:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) => (VFMADDSS4rr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) |
| 80866 | /* 228281 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4rr), |
| 80867 | /* 228286 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80868 | /* 228290 */ GIR_RootConstrainSelectedInstOperands, |
| 80869 | /* 228291 */ // GIR_Coverage, 1361, |
| 80870 | /* 228291 */ GIR_Done, |
| 80871 | /* 228292 */ // Label 5258: @228292 |
| 80872 | /* 228292 */ GIM_Try, /*On fail goto*//*Label 5259*/ GIMT_Encode4(228329), // Rule ID 10132 // |
| 80873 | /* 228297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80874 | /* 228300 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80875 | /* 228304 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80876 | /* 228308 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80877 | /* 228312 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80878 | /* 228316 */ // (strict_fma:{ *:[f32] } FR32X:{ *:[f32] }:$src2, FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src3) => (VFMADD213SSZr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2, FR32X:{ *:[f32] }:$src3) |
| 80879 | /* 228316 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSZr), |
| 80880 | /* 228319 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80881 | /* 228321 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80882 | /* 228323 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80883 | /* 228325 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80884 | /* 228327 */ GIR_RootConstrainSelectedInstOperands, |
| 80885 | /* 228328 */ // GIR_Coverage, 10132, |
| 80886 | /* 228328 */ GIR_EraseRootFromParent_Done, |
| 80887 | /* 228329 */ // Label 5259: @228329 |
| 80888 | /* 228329 */ GIM_Reject, |
| 80889 | /* 228330 */ // Label 5247: @228330 |
| 80890 | /* 228330 */ GIM_Reject, |
| 80891 | /* 228331 */ // Label 5231: @228331 |
| 80892 | /* 228331 */ GIM_Try, /*On fail goto*//*Label 5260*/ GIMT_Encode4(229067), |
| 80893 | /* 228336 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 80894 | /* 228339 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 80895 | /* 228342 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 80896 | /* 228345 */ GIM_Try, /*On fail goto*//*Label 5261*/ GIMT_Encode4(228413), // Rule ID 1311 // |
| 80897 | /* 228350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80898 | /* 228353 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80899 | /* 228357 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80900 | /* 228361 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80901 | /* 228365 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80902 | /* 228368 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80903 | /* 228372 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80904 | /* 228376 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80905 | /* 228380 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80906 | /* 228384 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80907 | /* 228386 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80908 | /* 228393 */ // (strict_fma:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VFMADD132SDm:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80909 | /* 228393 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SDm), |
| 80910 | /* 228396 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80911 | /* 228398 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80912 | /* 228400 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80913 | /* 228402 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80914 | /* 228406 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80915 | /* 228411 */ GIR_RootConstrainSelectedInstOperands, |
| 80916 | /* 228412 */ // GIR_Coverage, 1311, |
| 80917 | /* 228412 */ GIR_EraseRootFromParent_Done, |
| 80918 | /* 228413 */ // Label 5261: @228413 |
| 80919 | /* 228413 */ GIM_Try, /*On fail goto*//*Label 5262*/ GIMT_Encode4(228481), // Rule ID 10148 // |
| 80920 | /* 228418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80921 | /* 228421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80922 | /* 228425 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80923 | /* 228429 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80924 | /* 228433 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80925 | /* 228436 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80926 | /* 228440 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80927 | /* 228444 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80928 | /* 228448 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80929 | /* 228452 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80930 | /* 228454 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80931 | /* 228461 */ // (strict_fma:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VFMADD132SDZm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80932 | /* 228461 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SDZm), |
| 80933 | /* 228464 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80934 | /* 228466 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80935 | /* 228468 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80936 | /* 228470 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80937 | /* 228474 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80938 | /* 228479 */ GIR_RootConstrainSelectedInstOperands, |
| 80939 | /* 228480 */ // GIR_Coverage, 10148, |
| 80940 | /* 228480 */ GIR_EraseRootFromParent_Done, |
| 80941 | /* 228481 */ // Label 5262: @228481 |
| 80942 | /* 228481 */ GIM_Try, /*On fail goto*//*Label 5263*/ GIMT_Encode4(228549), // Rule ID 23308 // |
| 80943 | /* 228486 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80944 | /* 228489 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80945 | /* 228493 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80946 | /* 228497 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80947 | /* 228501 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80948 | /* 228504 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80949 | /* 228508 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80950 | /* 228512 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80951 | /* 228516 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80952 | /* 228520 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80953 | /* 228522 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80954 | /* 228529 */ // (strict_fma:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src3) => (VFMADDSD4mr:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2, FR64:{ *:[f64] }:$src3) |
| 80955 | /* 228529 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4mr), |
| 80956 | /* 228532 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80957 | /* 228534 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80958 | /* 228536 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80959 | /* 228540 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80960 | /* 228542 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80961 | /* 228547 */ GIR_RootConstrainSelectedInstOperands, |
| 80962 | /* 228548 */ // GIR_Coverage, 23308, |
| 80963 | /* 228548 */ GIR_EraseRootFromParent_Done, |
| 80964 | /* 228549 */ // Label 5263: @228549 |
| 80965 | /* 228549 */ GIM_Try, /*On fail goto*//*Label 5264*/ GIMT_Encode4(228617), // Rule ID 1309 // |
| 80966 | /* 228554 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80967 | /* 228557 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80968 | /* 228561 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80969 | /* 228565 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80970 | /* 228569 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80971 | /* 228573 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80972 | /* 228576 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80973 | /* 228580 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80974 | /* 228584 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80975 | /* 228588 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80976 | /* 228590 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80977 | /* 228597 */ // (strict_fma:{ *:[f64] } FR64:{ *:[f64] }:$src2, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (VFMADD231SDm:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 80978 | /* 228597 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SDm), |
| 80979 | /* 228600 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80980 | /* 228602 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80981 | /* 228604 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80982 | /* 228606 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80983 | /* 228610 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80984 | /* 228615 */ GIR_RootConstrainSelectedInstOperands, |
| 80985 | /* 228616 */ // GIR_Coverage, 1309, |
| 80986 | /* 228616 */ GIR_EraseRootFromParent_Done, |
| 80987 | /* 228617 */ // Label 5264: @228617 |
| 80988 | /* 228617 */ GIM_Try, /*On fail goto*//*Label 5265*/ GIMT_Encode4(228685), // Rule ID 1449 // |
| 80989 | /* 228622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80990 | /* 228625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80991 | /* 228629 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80992 | /* 228633 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80993 | /* 228637 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80994 | /* 228641 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80995 | /* 228644 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80996 | /* 228648 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80997 | /* 228652 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80998 | /* 228656 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80999 | /* 228658 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81000 | /* 228665 */ // (strict_fma:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src3) => (VFMADDSD4mr:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2, FR64:{ *:[f64] }:$src3) |
| 81001 | /* 228665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4mr), |
| 81002 | /* 228668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81003 | /* 228670 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81004 | /* 228672 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81005 | /* 228676 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81006 | /* 228678 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81007 | /* 228683 */ GIR_RootConstrainSelectedInstOperands, |
| 81008 | /* 228684 */ // GIR_Coverage, 1449, |
| 81009 | /* 228684 */ GIR_EraseRootFromParent_Done, |
| 81010 | /* 228685 */ // Label 5265: @228685 |
| 81011 | /* 228685 */ GIM_Try, /*On fail goto*//*Label 5266*/ GIMT_Encode4(228753), // Rule ID 10146 // |
| 81012 | /* 228690 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 81013 | /* 228693 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 81014 | /* 228697 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 81015 | /* 228701 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81016 | /* 228705 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81017 | /* 228709 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81018 | /* 228712 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81019 | /* 228716 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81020 | /* 228720 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 81021 | /* 228724 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81022 | /* 228726 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81023 | /* 228733 */ // (strict_fma:{ *:[f64] } FR64X:{ *:[f64] }:$src2, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64X:{ *:[f64] }:$src1) => (VFMADD231SDZm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81024 | /* 228733 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SDZm), |
| 81025 | /* 228736 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81026 | /* 228738 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81027 | /* 228740 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81028 | /* 228742 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81029 | /* 228746 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81030 | /* 228751 */ GIR_RootConstrainSelectedInstOperands, |
| 81031 | /* 228752 */ // GIR_Coverage, 10146, |
| 81032 | /* 228752 */ GIR_EraseRootFromParent_Done, |
| 81033 | /* 228753 */ // Label 5266: @228753 |
| 81034 | /* 228753 */ GIM_Try, /*On fail goto*//*Label 5267*/ GIMT_Encode4(228821), // Rule ID 1307 // |
| 81035 | /* 228758 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 81036 | /* 228761 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81037 | /* 228765 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81038 | /* 228769 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81039 | /* 228773 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81040 | /* 228777 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81041 | /* 228781 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81042 | /* 228784 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81043 | /* 228788 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81044 | /* 228792 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81045 | /* 228794 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81046 | /* 228801 */ // (strict_fma:{ *:[f64] } FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213SDm:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81047 | /* 228801 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDm), |
| 81048 | /* 228804 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81049 | /* 228806 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81050 | /* 228808 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81051 | /* 228810 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81052 | /* 228814 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81053 | /* 228819 */ GIR_RootConstrainSelectedInstOperands, |
| 81054 | /* 228820 */ // GIR_Coverage, 1307, |
| 81055 | /* 228820 */ GIR_EraseRootFromParent_Done, |
| 81056 | /* 228821 */ // Label 5267: @228821 |
| 81057 | /* 228821 */ GIM_Try, /*On fail goto*//*Label 5268*/ GIMT_Encode4(228889), // Rule ID 1447 // |
| 81058 | /* 228826 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 81059 | /* 228829 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81060 | /* 228833 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81061 | /* 228837 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81062 | /* 228841 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81063 | /* 228845 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81064 | /* 228849 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81065 | /* 228852 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81066 | /* 228856 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81067 | /* 228860 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81068 | /* 228862 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81069 | /* 228869 */ // (strict_fma:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDSD4rm:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81070 | /* 228869 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4rm), |
| 81071 | /* 228872 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81072 | /* 228874 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81073 | /* 228876 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 81074 | /* 228878 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81075 | /* 228882 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81076 | /* 228887 */ GIR_RootConstrainSelectedInstOperands, |
| 81077 | /* 228888 */ // GIR_Coverage, 1447, |
| 81078 | /* 228888 */ GIR_EraseRootFromParent_Done, |
| 81079 | /* 228889 */ // Label 5268: @228889 |
| 81080 | /* 228889 */ GIM_Try, /*On fail goto*//*Label 5269*/ GIMT_Encode4(228957), // Rule ID 10143 // |
| 81081 | /* 228894 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 81082 | /* 228897 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 81083 | /* 228901 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 81084 | /* 228905 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 81085 | /* 228909 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81086 | /* 228913 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81087 | /* 228917 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81088 | /* 228920 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81089 | /* 228924 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81090 | /* 228928 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81091 | /* 228930 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81092 | /* 228937 */ // (strict_fma:{ *:[f64] } FR64X:{ *:[f64] }:$src2, FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213SDZm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81093 | /* 228937 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDZm), |
| 81094 | /* 228940 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81095 | /* 228942 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81096 | /* 228944 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81097 | /* 228946 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81098 | /* 228950 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81099 | /* 228955 */ GIR_RootConstrainSelectedInstOperands, |
| 81100 | /* 228956 */ // GIR_Coverage, 10143, |
| 81101 | /* 228956 */ GIR_EraseRootFromParent_Done, |
| 81102 | /* 228957 */ // Label 5269: @228957 |
| 81103 | /* 228957 */ GIM_Try, /*On fail goto*//*Label 5270*/ GIMT_Encode4(228994), // Rule ID 1305 // |
| 81104 | /* 228962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 81105 | /* 228965 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81106 | /* 228969 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81107 | /* 228973 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81108 | /* 228977 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81109 | /* 228981 */ // (strict_fma:{ *:[f64] } FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src3) => (VFMADD213SDr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) |
| 81110 | /* 228981 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDr), |
| 81111 | /* 228984 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81112 | /* 228986 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81113 | /* 228988 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81114 | /* 228990 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81115 | /* 228992 */ GIR_RootConstrainSelectedInstOperands, |
| 81116 | /* 228993 */ // GIR_Coverage, 1305, |
| 81117 | /* 228993 */ GIR_EraseRootFromParent_Done, |
| 81118 | /* 228994 */ // Label 5270: @228994 |
| 81119 | /* 228994 */ GIM_Try, /*On fail goto*//*Label 5271*/ GIMT_Encode4(229029), // Rule ID 1445 // |
| 81120 | /* 228999 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 81121 | /* 229002 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81122 | /* 229006 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81123 | /* 229010 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81124 | /* 229014 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 81125 | /* 229018 */ // (strict_fma:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) => (VFMADDSD4rr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) |
| 81126 | /* 229018 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4rr), |
| 81127 | /* 229023 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 81128 | /* 229027 */ GIR_RootConstrainSelectedInstOperands, |
| 81129 | /* 229028 */ // GIR_Coverage, 1445, |
| 81130 | /* 229028 */ GIR_Done, |
| 81131 | /* 229029 */ // Label 5271: @229029 |
| 81132 | /* 229029 */ GIM_Try, /*On fail goto*//*Label 5272*/ GIMT_Encode4(229066), // Rule ID 10141 // |
| 81133 | /* 229034 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 81134 | /* 229037 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 81135 | /* 229041 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 81136 | /* 229045 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 81137 | /* 229049 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 81138 | /* 229053 */ // (strict_fma:{ *:[f64] } FR64X:{ *:[f64] }:$src2, FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src3) => (VFMADD213SDZr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2, FR64X:{ *:[f64] }:$src3) |
| 81139 | /* 229053 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDZr), |
| 81140 | /* 229056 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81141 | /* 229058 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81142 | /* 229060 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81143 | /* 229062 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81144 | /* 229064 */ GIR_RootConstrainSelectedInstOperands, |
| 81145 | /* 229065 */ // GIR_Coverage, 10141, |
| 81146 | /* 229065 */ GIR_EraseRootFromParent_Done, |
| 81147 | /* 229066 */ // Label 5272: @229066 |
| 81148 | /* 229066 */ GIM_Reject, |
| 81149 | /* 229067 */ // Label 5260: @229067 |
| 81150 | /* 229067 */ GIM_Reject, |
| 81151 | /* 229068 */ // Label 5232: @229068 |
| 81152 | /* 229068 */ GIM_Try, /*On fail goto*//*Label 5273*/ GIMT_Encode4(229804), |
| 81153 | /* 229073 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 81154 | /* 229076 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 81155 | /* 229079 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 81156 | /* 229082 */ GIM_Try, /*On fail goto*//*Label 5274*/ GIMT_Encode4(229150), // Rule ID 1191 // |
| 81157 | /* 229087 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81158 | /* 229090 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81159 | /* 229094 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81160 | /* 229098 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81161 | /* 229102 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81162 | /* 229105 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81163 | /* 229109 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81164 | /* 229113 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81165 | /* 229117 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81166 | /* 229121 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81167 | /* 229123 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81168 | /* 229130 */ // (strict_fma:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VFMADD132PDm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81169 | /* 229130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDm), |
| 81170 | /* 229133 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81171 | /* 229135 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81172 | /* 229137 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81173 | /* 229139 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81174 | /* 229143 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81175 | /* 229148 */ GIR_RootConstrainSelectedInstOperands, |
| 81176 | /* 229149 */ // GIR_Coverage, 1191, |
| 81177 | /* 229149 */ GIR_EraseRootFromParent_Done, |
| 81178 | /* 229150 */ // Label 5274: @229150 |
| 81179 | /* 229150 */ GIM_Try, /*On fail goto*//*Label 5275*/ GIMT_Encode4(229218), // Rule ID 9680 // |
| 81180 | /* 229155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81181 | /* 229158 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81182 | /* 229162 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81183 | /* 229166 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81184 | /* 229170 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81185 | /* 229173 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81186 | /* 229177 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81187 | /* 229181 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81188 | /* 229185 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81189 | /* 229189 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81190 | /* 229191 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81191 | /* 229198 */ // (strict_fma:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VFMADD132PDZ128m:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81192 | /* 229198 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZ128m), |
| 81193 | /* 229201 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81194 | /* 229203 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81195 | /* 229205 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81196 | /* 229207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81197 | /* 229211 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81198 | /* 229216 */ GIR_RootConstrainSelectedInstOperands, |
| 81199 | /* 229217 */ // GIR_Coverage, 9680, |
| 81200 | /* 229217 */ GIR_EraseRootFromParent_Done, |
| 81201 | /* 229218 */ // Label 5275: @229218 |
| 81202 | /* 229218 */ GIM_Try, /*On fail goto*//*Label 5276*/ GIMT_Encode4(229286), // Rule ID 23316 // |
| 81203 | /* 229223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81204 | /* 229226 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81205 | /* 229230 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81206 | /* 229234 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81207 | /* 229238 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81208 | /* 229241 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81209 | /* 229245 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81210 | /* 229249 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81211 | /* 229253 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81212 | /* 229257 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81213 | /* 229259 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81214 | /* 229266 */ // (strict_fma:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src3) => (VFMADDPD4mr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 81215 | /* 229266 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4mr), |
| 81216 | /* 229269 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81217 | /* 229271 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81218 | /* 229273 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81219 | /* 229277 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81220 | /* 229279 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81221 | /* 229284 */ GIR_RootConstrainSelectedInstOperands, |
| 81222 | /* 229285 */ // GIR_Coverage, 23316, |
| 81223 | /* 229285 */ GIR_EraseRootFromParent_Done, |
| 81224 | /* 229286 */ // Label 5276: @229286 |
| 81225 | /* 229286 */ GIM_Try, /*On fail goto*//*Label 5277*/ GIMT_Encode4(229354), // Rule ID 1189 // |
| 81226 | /* 229291 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81227 | /* 229294 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81228 | /* 229298 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81229 | /* 229302 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81230 | /* 229306 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81231 | /* 229310 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81232 | /* 229313 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81233 | /* 229317 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81234 | /* 229321 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81235 | /* 229325 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81236 | /* 229327 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81237 | /* 229334 */ // (strict_fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src2, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1) => (VFMADD231PDm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81238 | /* 229334 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDm), |
| 81239 | /* 229337 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81240 | /* 229339 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81241 | /* 229341 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81242 | /* 229343 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81243 | /* 229347 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81244 | /* 229352 */ GIR_RootConstrainSelectedInstOperands, |
| 81245 | /* 229353 */ // GIR_Coverage, 1189, |
| 81246 | /* 229353 */ GIR_EraseRootFromParent_Done, |
| 81247 | /* 229354 */ // Label 5277: @229354 |
| 81248 | /* 229354 */ GIM_Try, /*On fail goto*//*Label 5278*/ GIMT_Encode4(229422), // Rule ID 1473 // |
| 81249 | /* 229359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81250 | /* 229362 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81251 | /* 229366 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81252 | /* 229370 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81253 | /* 229374 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81254 | /* 229378 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81255 | /* 229381 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81256 | /* 229385 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81257 | /* 229389 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81258 | /* 229393 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81259 | /* 229395 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81260 | /* 229402 */ // (strict_fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src3) => (VFMADDPD4mr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 81261 | /* 229402 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4mr), |
| 81262 | /* 229405 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81263 | /* 229407 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81264 | /* 229409 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81265 | /* 229413 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81266 | /* 229415 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81267 | /* 229420 */ GIR_RootConstrainSelectedInstOperands, |
| 81268 | /* 229421 */ // GIR_Coverage, 1473, |
| 81269 | /* 229421 */ GIR_EraseRootFromParent_Done, |
| 81270 | /* 229422 */ // Label 5278: @229422 |
| 81271 | /* 229422 */ GIM_Try, /*On fail goto*//*Label 5279*/ GIMT_Encode4(229490), // Rule ID 9140 // |
| 81272 | /* 229427 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81273 | /* 229430 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81274 | /* 229434 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81275 | /* 229438 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81276 | /* 229442 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81277 | /* 229446 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81278 | /* 229449 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81279 | /* 229453 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81280 | /* 229457 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81281 | /* 229461 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81282 | /* 229463 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81283 | /* 229470 */ // (strict_fma:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src2, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2f64] }:$src1) => (VFMADD231PDZ128m:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81284 | /* 229470 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZ128m), |
| 81285 | /* 229473 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81286 | /* 229475 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81287 | /* 229477 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81288 | /* 229479 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81289 | /* 229483 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81290 | /* 229488 */ GIR_RootConstrainSelectedInstOperands, |
| 81291 | /* 229489 */ // GIR_Coverage, 9140, |
| 81292 | /* 229489 */ GIR_EraseRootFromParent_Done, |
| 81293 | /* 229490 */ // Label 5279: @229490 |
| 81294 | /* 229490 */ GIM_Try, /*On fail goto*//*Label 5280*/ GIMT_Encode4(229558), // Rule ID 1187 // |
| 81295 | /* 229495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81296 | /* 229498 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81297 | /* 229502 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81298 | /* 229506 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81299 | /* 229510 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81300 | /* 229514 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81301 | /* 229518 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81302 | /* 229521 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81303 | /* 229525 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81304 | /* 229529 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81305 | /* 229531 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81306 | /* 229538 */ // (strict_fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PDm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81307 | /* 229538 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDm), |
| 81308 | /* 229541 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81309 | /* 229543 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81310 | /* 229545 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81311 | /* 229547 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81312 | /* 229551 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81313 | /* 229556 */ GIR_RootConstrainSelectedInstOperands, |
| 81314 | /* 229557 */ // GIR_Coverage, 1187, |
| 81315 | /* 229557 */ GIR_EraseRootFromParent_Done, |
| 81316 | /* 229558 */ // Label 5280: @229558 |
| 81317 | /* 229558 */ GIM_Try, /*On fail goto*//*Label 5281*/ GIMT_Encode4(229626), // Rule ID 1471 // |
| 81318 | /* 229563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81319 | /* 229566 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81320 | /* 229570 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81321 | /* 229574 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81322 | /* 229578 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81323 | /* 229582 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81324 | /* 229586 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81325 | /* 229589 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81326 | /* 229593 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81327 | /* 229597 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81328 | /* 229599 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81329 | /* 229606 */ // (strict_fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDPD4rm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81330 | /* 229606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4rm), |
| 81331 | /* 229609 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81332 | /* 229611 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81333 | /* 229613 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 81334 | /* 229615 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81335 | /* 229619 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81336 | /* 229624 */ GIR_RootConstrainSelectedInstOperands, |
| 81337 | /* 229625 */ // GIR_Coverage, 1471, |
| 81338 | /* 229625 */ GIR_EraseRootFromParent_Done, |
| 81339 | /* 229626 */ // Label 5281: @229626 |
| 81340 | /* 229626 */ GIM_Try, /*On fail goto*//*Label 5282*/ GIMT_Encode4(229694), // Rule ID 8513 // |
| 81341 | /* 229631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81342 | /* 229634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81343 | /* 229638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81344 | /* 229642 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81345 | /* 229646 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81346 | /* 229650 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81347 | /* 229654 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81348 | /* 229657 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81349 | /* 229661 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81350 | /* 229665 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81351 | /* 229667 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81352 | /* 229674 */ // (strict_fma:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src2, VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PDZ128m:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81353 | /* 229674 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ128m), |
| 81354 | /* 229677 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81355 | /* 229679 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81356 | /* 229681 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81357 | /* 229683 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81358 | /* 229687 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81359 | /* 229692 */ GIR_RootConstrainSelectedInstOperands, |
| 81360 | /* 229693 */ // GIR_Coverage, 8513, |
| 81361 | /* 229693 */ GIR_EraseRootFromParent_Done, |
| 81362 | /* 229694 */ // Label 5282: @229694 |
| 81363 | /* 229694 */ GIM_Try, /*On fail goto*//*Label 5283*/ GIMT_Encode4(229731), // Rule ID 1185 // |
| 81364 | /* 229699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81365 | /* 229702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81366 | /* 229706 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81367 | /* 229710 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81368 | /* 229714 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81369 | /* 229718 */ // (strict_fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src3) => (VFMADD213PDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 81370 | /* 229718 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDr), |
| 81371 | /* 229721 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81372 | /* 229723 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81373 | /* 229725 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81374 | /* 229727 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81375 | /* 229729 */ GIR_RootConstrainSelectedInstOperands, |
| 81376 | /* 229730 */ // GIR_Coverage, 1185, |
| 81377 | /* 229730 */ GIR_EraseRootFromParent_Done, |
| 81378 | /* 229731 */ // Label 5283: @229731 |
| 81379 | /* 229731 */ GIM_Try, /*On fail goto*//*Label 5284*/ GIMT_Encode4(229766), // Rule ID 1469 // |
| 81380 | /* 229736 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81381 | /* 229739 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81382 | /* 229743 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81383 | /* 229747 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81384 | /* 229751 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81385 | /* 229755 */ // (strict_fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) => (VFMADDPD4rr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 81386 | /* 229755 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4rr), |
| 81387 | /* 229760 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 81388 | /* 229764 */ GIR_RootConstrainSelectedInstOperands, |
| 81389 | /* 229765 */ // GIR_Coverage, 1469, |
| 81390 | /* 229765 */ GIR_Done, |
| 81391 | /* 229766 */ // Label 5284: @229766 |
| 81392 | /* 229766 */ GIM_Try, /*On fail goto*//*Label 5285*/ GIMT_Encode4(229803), // Rule ID 8509 // |
| 81393 | /* 229771 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81394 | /* 229774 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81395 | /* 229778 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81396 | /* 229782 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81397 | /* 229786 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81398 | /* 229790 */ // (strict_fma:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src2, VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src3) => (VFMADD213PDZ128r:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2, VR128X:{ *:[v2f64] }:$src3) |
| 81399 | /* 229790 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ128r), |
| 81400 | /* 229793 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81401 | /* 229795 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81402 | /* 229797 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81403 | /* 229799 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81404 | /* 229801 */ GIR_RootConstrainSelectedInstOperands, |
| 81405 | /* 229802 */ // GIR_Coverage, 8509, |
| 81406 | /* 229802 */ GIR_EraseRootFromParent_Done, |
| 81407 | /* 229803 */ // Label 5285: @229803 |
| 81408 | /* 229803 */ GIM_Reject, |
| 81409 | /* 229804 */ // Label 5273: @229804 |
| 81410 | /* 229804 */ GIM_Reject, |
| 81411 | /* 229805 */ // Label 5233: @229805 |
| 81412 | /* 229805 */ GIM_Try, /*On fail goto*//*Label 5286*/ GIMT_Encode4(230541), |
| 81413 | /* 229810 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 81414 | /* 229813 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 81415 | /* 229816 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 81416 | /* 229819 */ GIM_Try, /*On fail goto*//*Label 5287*/ GIMT_Encode4(229887), // Rule ID 1143 // |
| 81417 | /* 229824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81418 | /* 229827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81419 | /* 229831 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81420 | /* 229835 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81421 | /* 229839 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81422 | /* 229842 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81423 | /* 229846 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81424 | /* 229850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81425 | /* 229854 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81426 | /* 229858 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81427 | /* 229860 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81428 | /* 229867 */ // (strict_fma:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VFMADD132PSm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81429 | /* 229867 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSm), |
| 81430 | /* 229870 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81431 | /* 229872 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81432 | /* 229874 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81433 | /* 229876 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81434 | /* 229880 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81435 | /* 229885 */ GIR_RootConstrainSelectedInstOperands, |
| 81436 | /* 229886 */ // GIR_Coverage, 1143, |
| 81437 | /* 229886 */ GIR_EraseRootFromParent_Done, |
| 81438 | /* 229887 */ // Label 5287: @229887 |
| 81439 | /* 229887 */ GIM_Try, /*On fail goto*//*Label 5288*/ GIMT_Encode4(229955), // Rule ID 9648 // |
| 81440 | /* 229892 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81441 | /* 229895 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81442 | /* 229899 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81443 | /* 229903 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81444 | /* 229907 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81445 | /* 229910 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81446 | /* 229914 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81447 | /* 229918 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81448 | /* 229922 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81449 | /* 229926 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81450 | /* 229928 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81451 | /* 229935 */ // (strict_fma:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VFMADD132PSZ128m:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81452 | /* 229935 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZ128m), |
| 81453 | /* 229938 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81454 | /* 229940 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81455 | /* 229942 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81456 | /* 229944 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81457 | /* 229948 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81458 | /* 229953 */ GIR_RootConstrainSelectedInstOperands, |
| 81459 | /* 229954 */ // GIR_Coverage, 9648, |
| 81460 | /* 229954 */ GIR_EraseRootFromParent_Done, |
| 81461 | /* 229955 */ // Label 5288: @229955 |
| 81462 | /* 229955 */ GIM_Try, /*On fail goto*//*Label 5289*/ GIMT_Encode4(230023), // Rule ID 23288 // |
| 81463 | /* 229960 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81464 | /* 229963 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81465 | /* 229967 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81466 | /* 229971 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81467 | /* 229975 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81468 | /* 229978 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81469 | /* 229982 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81470 | /* 229986 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81471 | /* 229990 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81472 | /* 229994 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81473 | /* 229996 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81474 | /* 230003 */ // (strict_fma:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src3) => (VFMADDPS4mr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 81475 | /* 230003 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4mr), |
| 81476 | /* 230006 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81477 | /* 230008 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81478 | /* 230010 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81479 | /* 230014 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81480 | /* 230016 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81481 | /* 230021 */ GIR_RootConstrainSelectedInstOperands, |
| 81482 | /* 230022 */ // GIR_Coverage, 23288, |
| 81483 | /* 230022 */ GIR_EraseRootFromParent_Done, |
| 81484 | /* 230023 */ // Label 5289: @230023 |
| 81485 | /* 230023 */ GIM_Try, /*On fail goto*//*Label 5290*/ GIMT_Encode4(230091), // Rule ID 1141 // |
| 81486 | /* 230028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81487 | /* 230031 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81488 | /* 230035 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81489 | /* 230039 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81490 | /* 230043 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81491 | /* 230047 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81492 | /* 230050 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81493 | /* 230054 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81494 | /* 230058 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81495 | /* 230062 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81496 | /* 230064 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81497 | /* 230071 */ // (strict_fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src2, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1) => (VFMADD231PSm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81498 | /* 230071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSm), |
| 81499 | /* 230074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81500 | /* 230076 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81501 | /* 230078 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81502 | /* 230080 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81503 | /* 230084 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81504 | /* 230089 */ GIR_RootConstrainSelectedInstOperands, |
| 81505 | /* 230090 */ // GIR_Coverage, 1141, |
| 81506 | /* 230090 */ GIR_EraseRootFromParent_Done, |
| 81507 | /* 230091 */ // Label 5290: @230091 |
| 81508 | /* 230091 */ GIM_Try, /*On fail goto*//*Label 5291*/ GIMT_Encode4(230159), // Rule ID 1389 // |
| 81509 | /* 230096 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81510 | /* 230099 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81511 | /* 230103 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81512 | /* 230107 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81513 | /* 230111 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81514 | /* 230115 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81515 | /* 230118 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81516 | /* 230122 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81517 | /* 230126 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81518 | /* 230130 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81519 | /* 230132 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81520 | /* 230139 */ // (strict_fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src3) => (VFMADDPS4mr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 81521 | /* 230139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4mr), |
| 81522 | /* 230142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81523 | /* 230144 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81524 | /* 230146 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81525 | /* 230150 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81526 | /* 230152 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81527 | /* 230157 */ GIR_RootConstrainSelectedInstOperands, |
| 81528 | /* 230158 */ // GIR_Coverage, 1389, |
| 81529 | /* 230158 */ GIR_EraseRootFromParent_Done, |
| 81530 | /* 230159 */ // Label 5291: @230159 |
| 81531 | /* 230159 */ GIM_Try, /*On fail goto*//*Label 5292*/ GIMT_Encode4(230227), // Rule ID 9108 // |
| 81532 | /* 230164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81533 | /* 230167 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81534 | /* 230171 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81535 | /* 230175 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81536 | /* 230179 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81537 | /* 230183 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81538 | /* 230186 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81539 | /* 230190 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81540 | /* 230194 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81541 | /* 230198 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81542 | /* 230200 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81543 | /* 230207 */ // (strict_fma:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src2, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4f32] }:$src1) => (VFMADD231PSZ128m:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81544 | /* 230207 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZ128m), |
| 81545 | /* 230210 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81546 | /* 230212 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81547 | /* 230214 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81548 | /* 230216 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81549 | /* 230220 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81550 | /* 230225 */ GIR_RootConstrainSelectedInstOperands, |
| 81551 | /* 230226 */ // GIR_Coverage, 9108, |
| 81552 | /* 230226 */ GIR_EraseRootFromParent_Done, |
| 81553 | /* 230227 */ // Label 5292: @230227 |
| 81554 | /* 230227 */ GIM_Try, /*On fail goto*//*Label 5293*/ GIMT_Encode4(230295), // Rule ID 1139 // |
| 81555 | /* 230232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81556 | /* 230235 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81557 | /* 230239 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81558 | /* 230243 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81559 | /* 230247 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81560 | /* 230251 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81561 | /* 230255 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81562 | /* 230258 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81563 | /* 230262 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81564 | /* 230266 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81565 | /* 230268 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81566 | /* 230275 */ // (strict_fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PSm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81567 | /* 230275 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSm), |
| 81568 | /* 230278 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81569 | /* 230280 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81570 | /* 230282 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81571 | /* 230284 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81572 | /* 230288 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81573 | /* 230293 */ GIR_RootConstrainSelectedInstOperands, |
| 81574 | /* 230294 */ // GIR_Coverage, 1139, |
| 81575 | /* 230294 */ GIR_EraseRootFromParent_Done, |
| 81576 | /* 230295 */ // Label 5293: @230295 |
| 81577 | /* 230295 */ GIM_Try, /*On fail goto*//*Label 5294*/ GIMT_Encode4(230363), // Rule ID 1387 // |
| 81578 | /* 230300 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81579 | /* 230303 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81580 | /* 230307 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81581 | /* 230311 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81582 | /* 230315 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81583 | /* 230319 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81584 | /* 230323 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81585 | /* 230326 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81586 | /* 230330 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81587 | /* 230334 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81588 | /* 230336 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81589 | /* 230343 */ // (strict_fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDPS4rm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81590 | /* 230343 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4rm), |
| 81591 | /* 230346 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81592 | /* 230348 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81593 | /* 230350 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 81594 | /* 230352 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81595 | /* 230356 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81596 | /* 230361 */ GIR_RootConstrainSelectedInstOperands, |
| 81597 | /* 230362 */ // GIR_Coverage, 1387, |
| 81598 | /* 230362 */ GIR_EraseRootFromParent_Done, |
| 81599 | /* 230363 */ // Label 5294: @230363 |
| 81600 | /* 230363 */ GIM_Try, /*On fail goto*//*Label 5295*/ GIMT_Encode4(230431), // Rule ID 8474 // |
| 81601 | /* 230368 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81602 | /* 230371 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81603 | /* 230375 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81604 | /* 230379 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81605 | /* 230383 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81606 | /* 230387 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81607 | /* 230391 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81608 | /* 230394 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81609 | /* 230398 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81610 | /* 230402 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81611 | /* 230404 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81612 | /* 230411 */ // (strict_fma:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src2, VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PSZ128m:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81613 | /* 230411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ128m), |
| 81614 | /* 230414 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81615 | /* 230416 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81616 | /* 230418 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81617 | /* 230420 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81618 | /* 230424 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81619 | /* 230429 */ GIR_RootConstrainSelectedInstOperands, |
| 81620 | /* 230430 */ // GIR_Coverage, 8474, |
| 81621 | /* 230430 */ GIR_EraseRootFromParent_Done, |
| 81622 | /* 230431 */ // Label 5295: @230431 |
| 81623 | /* 230431 */ GIM_Try, /*On fail goto*//*Label 5296*/ GIMT_Encode4(230468), // Rule ID 1137 // |
| 81624 | /* 230436 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81625 | /* 230439 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81626 | /* 230443 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81627 | /* 230447 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81628 | /* 230451 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81629 | /* 230455 */ // (strict_fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src3) => (VFMADD213PSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 81630 | /* 230455 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSr), |
| 81631 | /* 230458 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81632 | /* 230460 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81633 | /* 230462 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81634 | /* 230464 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81635 | /* 230466 */ GIR_RootConstrainSelectedInstOperands, |
| 81636 | /* 230467 */ // GIR_Coverage, 1137, |
| 81637 | /* 230467 */ GIR_EraseRootFromParent_Done, |
| 81638 | /* 230468 */ // Label 5296: @230468 |
| 81639 | /* 230468 */ GIM_Try, /*On fail goto*//*Label 5297*/ GIMT_Encode4(230503), // Rule ID 1385 // |
| 81640 | /* 230473 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81641 | /* 230476 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81642 | /* 230480 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81643 | /* 230484 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81644 | /* 230488 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81645 | /* 230492 */ // (strict_fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) => (VFMADDPS4rr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 81646 | /* 230492 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4rr), |
| 81647 | /* 230497 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 81648 | /* 230501 */ GIR_RootConstrainSelectedInstOperands, |
| 81649 | /* 230502 */ // GIR_Coverage, 1385, |
| 81650 | /* 230502 */ GIR_Done, |
| 81651 | /* 230503 */ // Label 5297: @230503 |
| 81652 | /* 230503 */ GIM_Try, /*On fail goto*//*Label 5298*/ GIMT_Encode4(230540), // Rule ID 8470 // |
| 81653 | /* 230508 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81654 | /* 230511 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81655 | /* 230515 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81656 | /* 230519 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81657 | /* 230523 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81658 | /* 230527 */ // (strict_fma:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src2, VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src3) => (VFMADD213PSZ128r:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2, VR128X:{ *:[v4f32] }:$src3) |
| 81659 | /* 230527 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ128r), |
| 81660 | /* 230530 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81661 | /* 230532 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81662 | /* 230534 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81663 | /* 230536 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81664 | /* 230538 */ GIR_RootConstrainSelectedInstOperands, |
| 81665 | /* 230539 */ // GIR_Coverage, 8470, |
| 81666 | /* 230539 */ GIR_EraseRootFromParent_Done, |
| 81667 | /* 230540 */ // Label 5298: @230540 |
| 81668 | /* 230540 */ GIM_Reject, |
| 81669 | /* 230541 */ // Label 5286: @230541 |
| 81670 | /* 230541 */ GIM_Reject, |
| 81671 | /* 230542 */ // Label 5234: @230542 |
| 81672 | /* 230542 */ GIM_Try, /*On fail goto*//*Label 5299*/ GIMT_Encode4(231278), |
| 81673 | /* 230547 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 81674 | /* 230550 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 81675 | /* 230553 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 81676 | /* 230556 */ GIM_Try, /*On fail goto*//*Label 5300*/ GIMT_Encode4(230624), // Rule ID 1199 // |
| 81677 | /* 230561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81678 | /* 230564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81679 | /* 230568 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81680 | /* 230572 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81681 | /* 230576 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81682 | /* 230579 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81683 | /* 230583 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81684 | /* 230587 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81685 | /* 230591 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81686 | /* 230595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81687 | /* 230597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81688 | /* 230604 */ // (strict_fma:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VFMADD132PDYm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81689 | /* 230604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDYm), |
| 81690 | /* 230607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81691 | /* 230609 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81692 | /* 230611 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81693 | /* 230613 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81694 | /* 230617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81695 | /* 230622 */ GIR_RootConstrainSelectedInstOperands, |
| 81696 | /* 230623 */ // GIR_Coverage, 1199, |
| 81697 | /* 230623 */ GIR_EraseRootFromParent_Done, |
| 81698 | /* 230624 */ // Label 5300: @230624 |
| 81699 | /* 230624 */ GIM_Try, /*On fail goto*//*Label 5301*/ GIMT_Encode4(230692), // Rule ID 9670 // |
| 81700 | /* 230629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81701 | /* 230632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81702 | /* 230636 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81703 | /* 230640 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81704 | /* 230644 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81705 | /* 230647 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81706 | /* 230651 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81707 | /* 230655 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81708 | /* 230659 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81709 | /* 230663 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81710 | /* 230665 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81711 | /* 230672 */ // (strict_fma:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VFMADD132PDZ256m:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81712 | /* 230672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZ256m), |
| 81713 | /* 230675 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81714 | /* 230677 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81715 | /* 230679 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81716 | /* 230681 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81717 | /* 230685 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81718 | /* 230690 */ GIR_RootConstrainSelectedInstOperands, |
| 81719 | /* 230691 */ // GIR_Coverage, 9670, |
| 81720 | /* 230691 */ GIR_EraseRootFromParent_Done, |
| 81721 | /* 230692 */ // Label 5301: @230692 |
| 81722 | /* 230692 */ GIM_Try, /*On fail goto*//*Label 5302*/ GIMT_Encode4(230760), // Rule ID 23318 // |
| 81723 | /* 230697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81724 | /* 230700 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81725 | /* 230704 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81726 | /* 230708 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81727 | /* 230712 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81728 | /* 230715 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81729 | /* 230719 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81730 | /* 230723 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81731 | /* 230727 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81732 | /* 230731 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81733 | /* 230733 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81734 | /* 230740 */ // (strict_fma:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src3) => (VFMADDPD4Ymr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 81735 | /* 230740 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Ymr), |
| 81736 | /* 230743 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81737 | /* 230745 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81738 | /* 230747 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81739 | /* 230751 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81740 | /* 230753 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81741 | /* 230758 */ GIR_RootConstrainSelectedInstOperands, |
| 81742 | /* 230759 */ // GIR_Coverage, 23318, |
| 81743 | /* 230759 */ GIR_EraseRootFromParent_Done, |
| 81744 | /* 230760 */ // Label 5302: @230760 |
| 81745 | /* 230760 */ GIM_Try, /*On fail goto*//*Label 5303*/ GIMT_Encode4(230828), // Rule ID 1197 // |
| 81746 | /* 230765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81747 | /* 230768 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81748 | /* 230772 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81749 | /* 230776 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81750 | /* 230780 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81751 | /* 230784 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81752 | /* 230787 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81753 | /* 230791 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81754 | /* 230795 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81755 | /* 230799 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81756 | /* 230801 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81757 | /* 230808 */ // (strict_fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src2, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1) => (VFMADD231PDYm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81758 | /* 230808 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDYm), |
| 81759 | /* 230811 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81760 | /* 230813 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81761 | /* 230815 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81762 | /* 230817 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81763 | /* 230821 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81764 | /* 230826 */ GIR_RootConstrainSelectedInstOperands, |
| 81765 | /* 230827 */ // GIR_Coverage, 1197, |
| 81766 | /* 230827 */ GIR_EraseRootFromParent_Done, |
| 81767 | /* 230828 */ // Label 5303: @230828 |
| 81768 | /* 230828 */ GIM_Try, /*On fail goto*//*Label 5304*/ GIMT_Encode4(230896), // Rule ID 1479 // |
| 81769 | /* 230833 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81770 | /* 230836 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81771 | /* 230840 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81772 | /* 230844 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81773 | /* 230848 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81774 | /* 230852 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81775 | /* 230855 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81776 | /* 230859 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81777 | /* 230863 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81778 | /* 230867 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81779 | /* 230869 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81780 | /* 230876 */ // (strict_fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src3) => (VFMADDPD4Ymr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 81781 | /* 230876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Ymr), |
| 81782 | /* 230879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81783 | /* 230881 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81784 | /* 230883 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81785 | /* 230887 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81786 | /* 230889 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81787 | /* 230894 */ GIR_RootConstrainSelectedInstOperands, |
| 81788 | /* 230895 */ // GIR_Coverage, 1479, |
| 81789 | /* 230895 */ GIR_EraseRootFromParent_Done, |
| 81790 | /* 230896 */ // Label 5304: @230896 |
| 81791 | /* 230896 */ GIM_Try, /*On fail goto*//*Label 5305*/ GIMT_Encode4(230964), // Rule ID 9130 // |
| 81792 | /* 230901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81793 | /* 230904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81794 | /* 230908 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81795 | /* 230912 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81796 | /* 230916 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81797 | /* 230920 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81798 | /* 230923 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81799 | /* 230927 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81800 | /* 230931 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81801 | /* 230935 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81802 | /* 230937 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81803 | /* 230944 */ // (strict_fma:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src2, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4f64] }:$src1) => (VFMADD231PDZ256m:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81804 | /* 230944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZ256m), |
| 81805 | /* 230947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81806 | /* 230949 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81807 | /* 230951 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81808 | /* 230953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81809 | /* 230957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81810 | /* 230962 */ GIR_RootConstrainSelectedInstOperands, |
| 81811 | /* 230963 */ // GIR_Coverage, 9130, |
| 81812 | /* 230963 */ GIR_EraseRootFromParent_Done, |
| 81813 | /* 230964 */ // Label 5305: @230964 |
| 81814 | /* 230964 */ GIM_Try, /*On fail goto*//*Label 5306*/ GIMT_Encode4(231032), // Rule ID 1195 // |
| 81815 | /* 230969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81816 | /* 230972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81817 | /* 230976 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81818 | /* 230980 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81819 | /* 230984 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81820 | /* 230988 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81821 | /* 230992 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81822 | /* 230995 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81823 | /* 230999 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81824 | /* 231003 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81825 | /* 231005 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81826 | /* 231012 */ // (strict_fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PDYm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81827 | /* 231012 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDYm), |
| 81828 | /* 231015 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81829 | /* 231017 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81830 | /* 231019 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81831 | /* 231021 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81832 | /* 231025 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81833 | /* 231030 */ GIR_RootConstrainSelectedInstOperands, |
| 81834 | /* 231031 */ // GIR_Coverage, 1195, |
| 81835 | /* 231031 */ GIR_EraseRootFromParent_Done, |
| 81836 | /* 231032 */ // Label 5306: @231032 |
| 81837 | /* 231032 */ GIM_Try, /*On fail goto*//*Label 5307*/ GIMT_Encode4(231100), // Rule ID 1477 // |
| 81838 | /* 231037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81839 | /* 231040 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81840 | /* 231044 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81841 | /* 231048 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81842 | /* 231052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81843 | /* 231056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81844 | /* 231060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81845 | /* 231063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81846 | /* 231067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81847 | /* 231071 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81848 | /* 231073 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81849 | /* 231080 */ // (strict_fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDPD4Yrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81850 | /* 231080 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Yrm), |
| 81851 | /* 231083 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81852 | /* 231085 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81853 | /* 231087 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 81854 | /* 231089 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81855 | /* 231093 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81856 | /* 231098 */ GIR_RootConstrainSelectedInstOperands, |
| 81857 | /* 231099 */ // GIR_Coverage, 1477, |
| 81858 | /* 231099 */ GIR_EraseRootFromParent_Done, |
| 81859 | /* 231100 */ // Label 5307: @231100 |
| 81860 | /* 231100 */ GIM_Try, /*On fail goto*//*Label 5308*/ GIMT_Encode4(231168), // Rule ID 8501 // |
| 81861 | /* 231105 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81862 | /* 231108 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81863 | /* 231112 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81864 | /* 231116 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81865 | /* 231120 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81866 | /* 231124 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81867 | /* 231128 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81868 | /* 231131 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81869 | /* 231135 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81870 | /* 231139 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81871 | /* 231141 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81872 | /* 231148 */ // (strict_fma:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src2, VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PDZ256m:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81873 | /* 231148 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ256m), |
| 81874 | /* 231151 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81875 | /* 231153 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81876 | /* 231155 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81877 | /* 231157 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81878 | /* 231161 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81879 | /* 231166 */ GIR_RootConstrainSelectedInstOperands, |
| 81880 | /* 231167 */ // GIR_Coverage, 8501, |
| 81881 | /* 231167 */ GIR_EraseRootFromParent_Done, |
| 81882 | /* 231168 */ // Label 5308: @231168 |
| 81883 | /* 231168 */ GIM_Try, /*On fail goto*//*Label 5309*/ GIMT_Encode4(231205), // Rule ID 1193 // |
| 81884 | /* 231173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81885 | /* 231176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81886 | /* 231180 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81887 | /* 231184 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81888 | /* 231188 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81889 | /* 231192 */ // (strict_fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src3) => (VFMADD213PDYr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 81890 | /* 231192 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDYr), |
| 81891 | /* 231195 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81892 | /* 231197 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81893 | /* 231199 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81894 | /* 231201 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81895 | /* 231203 */ GIR_RootConstrainSelectedInstOperands, |
| 81896 | /* 231204 */ // GIR_Coverage, 1193, |
| 81897 | /* 231204 */ GIR_EraseRootFromParent_Done, |
| 81898 | /* 231205 */ // Label 5309: @231205 |
| 81899 | /* 231205 */ GIM_Try, /*On fail goto*//*Label 5310*/ GIMT_Encode4(231240), // Rule ID 1475 // |
| 81900 | /* 231210 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81901 | /* 231213 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81902 | /* 231217 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81903 | /* 231221 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81904 | /* 231225 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81905 | /* 231229 */ // (strict_fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) => (VFMADDPD4Yrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 81906 | /* 231229 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Yrr), |
| 81907 | /* 231234 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 81908 | /* 231238 */ GIR_RootConstrainSelectedInstOperands, |
| 81909 | /* 231239 */ // GIR_Coverage, 1475, |
| 81910 | /* 231239 */ GIR_Done, |
| 81911 | /* 231240 */ // Label 5310: @231240 |
| 81912 | /* 231240 */ GIM_Try, /*On fail goto*//*Label 5311*/ GIMT_Encode4(231277), // Rule ID 8497 // |
| 81913 | /* 231245 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81914 | /* 231248 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81915 | /* 231252 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81916 | /* 231256 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81917 | /* 231260 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81918 | /* 231264 */ // (strict_fma:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src2, VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src3) => (VFMADD213PDZ256r:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2, VR256X:{ *:[v4f64] }:$src3) |
| 81919 | /* 231264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ256r), |
| 81920 | /* 231267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81921 | /* 231269 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81922 | /* 231271 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81923 | /* 231273 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81924 | /* 231275 */ GIR_RootConstrainSelectedInstOperands, |
| 81925 | /* 231276 */ // GIR_Coverage, 8497, |
| 81926 | /* 231276 */ GIR_EraseRootFromParent_Done, |
| 81927 | /* 231277 */ // Label 5311: @231277 |
| 81928 | /* 231277 */ GIM_Reject, |
| 81929 | /* 231278 */ // Label 5299: @231278 |
| 81930 | /* 231278 */ GIM_Reject, |
| 81931 | /* 231279 */ // Label 5235: @231279 |
| 81932 | /* 231279 */ GIM_Try, /*On fail goto*//*Label 5312*/ GIMT_Encode4(231523), |
| 81933 | /* 231284 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 81934 | /* 231287 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 81935 | /* 231290 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 81936 | /* 231293 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81937 | /* 231297 */ GIM_Try, /*On fail goto*//*Label 5313*/ GIMT_Encode4(231361), // Rule ID 9616 // |
| 81938 | /* 231302 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81939 | /* 231305 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81940 | /* 231309 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81941 | /* 231313 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81942 | /* 231316 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81943 | /* 231320 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81944 | /* 231324 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81945 | /* 231328 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81946 | /* 231332 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81947 | /* 231334 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81948 | /* 231341 */ // (strict_fma:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VFMADD132PHZ128m:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81949 | /* 231341 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZ128m), |
| 81950 | /* 231344 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81951 | /* 231346 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81952 | /* 231348 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81953 | /* 231350 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81954 | /* 231354 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81955 | /* 231359 */ GIR_RootConstrainSelectedInstOperands, |
| 81956 | /* 231360 */ // GIR_Coverage, 9616, |
| 81957 | /* 231360 */ GIR_EraseRootFromParent_Done, |
| 81958 | /* 231361 */ // Label 5313: @231361 |
| 81959 | /* 231361 */ GIM_Try, /*On fail goto*//*Label 5314*/ GIMT_Encode4(231425), // Rule ID 9076 // |
| 81960 | /* 231366 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81961 | /* 231369 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81962 | /* 231373 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81963 | /* 231377 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81964 | /* 231381 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81965 | /* 231384 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81966 | /* 231388 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81967 | /* 231392 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81968 | /* 231396 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81969 | /* 231398 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81970 | /* 231405 */ // (strict_fma:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src2, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src1) => (VFMADD231PHZ128m:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81971 | /* 231405 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZ128m), |
| 81972 | /* 231408 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81973 | /* 231410 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81974 | /* 231412 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81975 | /* 231414 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81976 | /* 231418 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81977 | /* 231423 */ GIR_RootConstrainSelectedInstOperands, |
| 81978 | /* 231424 */ // GIR_Coverage, 9076, |
| 81979 | /* 231424 */ GIR_EraseRootFromParent_Done, |
| 81980 | /* 231425 */ // Label 5314: @231425 |
| 81981 | /* 231425 */ GIM_Try, /*On fail goto*//*Label 5315*/ GIMT_Encode4(231489), // Rule ID 8435 // |
| 81982 | /* 231430 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81983 | /* 231433 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81984 | /* 231437 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81985 | /* 231441 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81986 | /* 231445 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81987 | /* 231449 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81988 | /* 231452 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81989 | /* 231456 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81990 | /* 231460 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81991 | /* 231462 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81992 | /* 231469 */ // (strict_fma:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src2, VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PHZ128m:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 81993 | /* 231469 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ128m), |
| 81994 | /* 231472 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81995 | /* 231474 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81996 | /* 231476 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81997 | /* 231478 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81998 | /* 231482 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81999 | /* 231487 */ GIR_RootConstrainSelectedInstOperands, |
| 82000 | /* 231488 */ // GIR_Coverage, 8435, |
| 82001 | /* 231488 */ GIR_EraseRootFromParent_Done, |
| 82002 | /* 231489 */ // Label 5315: @231489 |
| 82003 | /* 231489 */ GIM_Try, /*On fail goto*//*Label 5316*/ GIMT_Encode4(231522), // Rule ID 8431 // |
| 82004 | /* 231494 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 82005 | /* 231497 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82006 | /* 231501 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82007 | /* 231505 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82008 | /* 231509 */ // (strict_fma:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src2, VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src3) => (VFMADD213PHZ128r:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2, VR128X:{ *:[v8f16] }:$src3) |
| 82009 | /* 231509 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ128r), |
| 82010 | /* 231512 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82011 | /* 231514 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82012 | /* 231516 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82013 | /* 231518 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82014 | /* 231520 */ GIR_RootConstrainSelectedInstOperands, |
| 82015 | /* 231521 */ // GIR_Coverage, 8431, |
| 82016 | /* 231521 */ GIR_EraseRootFromParent_Done, |
| 82017 | /* 231522 */ // Label 5316: @231522 |
| 82018 | /* 231522 */ GIM_Reject, |
| 82019 | /* 231523 */ // Label 5312: @231523 |
| 82020 | /* 231523 */ GIM_Reject, |
| 82021 | /* 231524 */ // Label 5236: @231524 |
| 82022 | /* 231524 */ GIM_Try, /*On fail goto*//*Label 5317*/ GIMT_Encode4(232260), |
| 82023 | /* 231529 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 82024 | /* 231532 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 82025 | /* 231535 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 82026 | /* 231538 */ GIM_Try, /*On fail goto*//*Label 5318*/ GIMT_Encode4(231606), // Rule ID 1151 // |
| 82027 | /* 231543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 82028 | /* 231546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82029 | /* 231550 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82030 | /* 231554 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82031 | /* 231558 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82032 | /* 231561 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82033 | /* 231565 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82034 | /* 231569 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82035 | /* 231573 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82036 | /* 231577 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82037 | /* 231579 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82038 | /* 231586 */ // (strict_fma:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VFMADD132PSYm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82039 | /* 231586 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSYm), |
| 82040 | /* 231589 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82041 | /* 231591 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82042 | /* 231593 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 82043 | /* 231595 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82044 | /* 231599 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82045 | /* 231604 */ GIR_RootConstrainSelectedInstOperands, |
| 82046 | /* 231605 */ // GIR_Coverage, 1151, |
| 82047 | /* 231605 */ GIR_EraseRootFromParent_Done, |
| 82048 | /* 231606 */ // Label 5318: @231606 |
| 82049 | /* 231606 */ GIM_Try, /*On fail goto*//*Label 5319*/ GIMT_Encode4(231674), // Rule ID 9638 // |
| 82050 | /* 231611 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 82051 | /* 231614 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82052 | /* 231618 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82053 | /* 231622 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82054 | /* 231626 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82055 | /* 231629 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82056 | /* 231633 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82057 | /* 231637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82058 | /* 231641 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82059 | /* 231645 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82060 | /* 231647 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82061 | /* 231654 */ // (strict_fma:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VFMADD132PSZ256m:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82062 | /* 231654 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZ256m), |
| 82063 | /* 231657 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82064 | /* 231659 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82065 | /* 231661 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 82066 | /* 231663 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82067 | /* 231667 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82068 | /* 231672 */ GIR_RootConstrainSelectedInstOperands, |
| 82069 | /* 231673 */ // GIR_Coverage, 9638, |
| 82070 | /* 231673 */ GIR_EraseRootFromParent_Done, |
| 82071 | /* 231674 */ // Label 5319: @231674 |
| 82072 | /* 231674 */ GIM_Try, /*On fail goto*//*Label 5320*/ GIMT_Encode4(231742), // Rule ID 23290 // |
| 82073 | /* 231679 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 82074 | /* 231682 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82075 | /* 231686 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82076 | /* 231690 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82077 | /* 231694 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82078 | /* 231697 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82079 | /* 231701 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82080 | /* 231705 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82081 | /* 231709 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82082 | /* 231713 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82083 | /* 231715 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82084 | /* 231722 */ // (strict_fma:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src3) => (VFMADDPS4Ymr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 82085 | /* 231722 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Ymr), |
| 82086 | /* 231725 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82087 | /* 231727 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82088 | /* 231729 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 82089 | /* 231733 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82090 | /* 231735 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82091 | /* 231740 */ GIR_RootConstrainSelectedInstOperands, |
| 82092 | /* 231741 */ // GIR_Coverage, 23290, |
| 82093 | /* 231741 */ GIR_EraseRootFromParent_Done, |
| 82094 | /* 231742 */ // Label 5320: @231742 |
| 82095 | /* 231742 */ GIM_Try, /*On fail goto*//*Label 5321*/ GIMT_Encode4(231810), // Rule ID 1149 // |
| 82096 | /* 231747 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 82097 | /* 231750 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82098 | /* 231754 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82099 | /* 231758 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 82100 | /* 231762 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82101 | /* 231766 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82102 | /* 231769 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82103 | /* 231773 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82104 | /* 231777 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82105 | /* 231781 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82106 | /* 231783 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82107 | /* 231790 */ // (strict_fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src2, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1) => (VFMADD231PSYm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82108 | /* 231790 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSYm), |
| 82109 | /* 231793 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82110 | /* 231795 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 82111 | /* 231797 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82112 | /* 231799 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82113 | /* 231803 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82114 | /* 231808 */ GIR_RootConstrainSelectedInstOperands, |
| 82115 | /* 231809 */ // GIR_Coverage, 1149, |
| 82116 | /* 231809 */ GIR_EraseRootFromParent_Done, |
| 82117 | /* 231810 */ // Label 5321: @231810 |
| 82118 | /* 231810 */ GIM_Try, /*On fail goto*//*Label 5322*/ GIMT_Encode4(231878), // Rule ID 1395 // |
| 82119 | /* 231815 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 82120 | /* 231818 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82121 | /* 231822 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82122 | /* 231826 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 82123 | /* 231830 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82124 | /* 231834 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82125 | /* 231837 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82126 | /* 231841 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82127 | /* 231845 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82128 | /* 231849 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82129 | /* 231851 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82130 | /* 231858 */ // (strict_fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src3) => (VFMADDPS4Ymr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 82131 | /* 231858 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Ymr), |
| 82132 | /* 231861 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82133 | /* 231863 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 82134 | /* 231865 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 82135 | /* 231869 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82136 | /* 231871 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82137 | /* 231876 */ GIR_RootConstrainSelectedInstOperands, |
| 82138 | /* 231877 */ // GIR_Coverage, 1395, |
| 82139 | /* 231877 */ GIR_EraseRootFromParent_Done, |
| 82140 | /* 231878 */ // Label 5322: @231878 |
| 82141 | /* 231878 */ GIM_Try, /*On fail goto*//*Label 5323*/ GIMT_Encode4(231946), // Rule ID 9098 // |
| 82142 | /* 231883 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 82143 | /* 231886 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82144 | /* 231890 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82145 | /* 231894 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 82146 | /* 231898 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82147 | /* 231902 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82148 | /* 231905 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82149 | /* 231909 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82150 | /* 231913 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82151 | /* 231917 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82152 | /* 231919 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82153 | /* 231926 */ // (strict_fma:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src2, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8f32] }:$src1) => (VFMADD231PSZ256m:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82154 | /* 231926 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZ256m), |
| 82155 | /* 231929 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82156 | /* 231931 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 82157 | /* 231933 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82158 | /* 231935 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82159 | /* 231939 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82160 | /* 231944 */ GIR_RootConstrainSelectedInstOperands, |
| 82161 | /* 231945 */ // GIR_Coverage, 9098, |
| 82162 | /* 231945 */ GIR_EraseRootFromParent_Done, |
| 82163 | /* 231946 */ // Label 5323: @231946 |
| 82164 | /* 231946 */ GIM_Try, /*On fail goto*//*Label 5324*/ GIMT_Encode4(232014), // Rule ID 1147 // |
| 82165 | /* 231951 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 82166 | /* 231954 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82167 | /* 231958 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82168 | /* 231962 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82169 | /* 231966 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 82170 | /* 231970 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82171 | /* 231974 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82172 | /* 231977 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82173 | /* 231981 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82174 | /* 231985 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82175 | /* 231987 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82176 | /* 231994 */ // (strict_fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PSYm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82177 | /* 231994 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSYm), |
| 82178 | /* 231997 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82179 | /* 231999 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82180 | /* 232001 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82181 | /* 232003 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82182 | /* 232007 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82183 | /* 232012 */ GIR_RootConstrainSelectedInstOperands, |
| 82184 | /* 232013 */ // GIR_Coverage, 1147, |
| 82185 | /* 232013 */ GIR_EraseRootFromParent_Done, |
| 82186 | /* 232014 */ // Label 5324: @232014 |
| 82187 | /* 232014 */ GIM_Try, /*On fail goto*//*Label 5325*/ GIMT_Encode4(232082), // Rule ID 1393 // |
| 82188 | /* 232019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 82189 | /* 232022 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82190 | /* 232026 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82191 | /* 232030 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82192 | /* 232034 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 82193 | /* 232038 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82194 | /* 232042 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82195 | /* 232045 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82196 | /* 232049 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82197 | /* 232053 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82198 | /* 232055 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82199 | /* 232062 */ // (strict_fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADDPS4Yrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82200 | /* 232062 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Yrm), |
| 82201 | /* 232065 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82202 | /* 232067 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 82203 | /* 232069 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 82204 | /* 232071 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82205 | /* 232075 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82206 | /* 232080 */ GIR_RootConstrainSelectedInstOperands, |
| 82207 | /* 232081 */ // GIR_Coverage, 1393, |
| 82208 | /* 232081 */ GIR_EraseRootFromParent_Done, |
| 82209 | /* 232082 */ // Label 5325: @232082 |
| 82210 | /* 232082 */ GIM_Try, /*On fail goto*//*Label 5326*/ GIMT_Encode4(232150), // Rule ID 8462 // |
| 82211 | /* 232087 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 82212 | /* 232090 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82213 | /* 232094 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82214 | /* 232098 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82215 | /* 232102 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 82216 | /* 232106 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82217 | /* 232110 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82218 | /* 232113 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82219 | /* 232117 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82220 | /* 232121 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82221 | /* 232123 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82222 | /* 232130 */ // (strict_fma:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src2, VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PSZ256m:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82223 | /* 232130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ256m), |
| 82224 | /* 232133 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82225 | /* 232135 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82226 | /* 232137 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82227 | /* 232139 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82228 | /* 232143 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82229 | /* 232148 */ GIR_RootConstrainSelectedInstOperands, |
| 82230 | /* 232149 */ // GIR_Coverage, 8462, |
| 82231 | /* 232149 */ GIR_EraseRootFromParent_Done, |
| 82232 | /* 232150 */ // Label 5326: @232150 |
| 82233 | /* 232150 */ GIM_Try, /*On fail goto*//*Label 5327*/ GIMT_Encode4(232187), // Rule ID 1145 // |
| 82234 | /* 232155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 82235 | /* 232158 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82236 | /* 232162 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82237 | /* 232166 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82238 | /* 232170 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82239 | /* 232174 */ // (strict_fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src3) => (VFMADD213PSYr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 82240 | /* 232174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSYr), |
| 82241 | /* 232177 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82242 | /* 232179 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82243 | /* 232181 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82244 | /* 232183 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82245 | /* 232185 */ GIR_RootConstrainSelectedInstOperands, |
| 82246 | /* 232186 */ // GIR_Coverage, 1145, |
| 82247 | /* 232186 */ GIR_EraseRootFromParent_Done, |
| 82248 | /* 232187 */ // Label 5327: @232187 |
| 82249 | /* 232187 */ GIM_Try, /*On fail goto*//*Label 5328*/ GIMT_Encode4(232222), // Rule ID 1391 // |
| 82250 | /* 232192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 82251 | /* 232195 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82252 | /* 232199 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82253 | /* 232203 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82254 | /* 232207 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82255 | /* 232211 */ // (strict_fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) => (VFMADDPS4Yrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 82256 | /* 232211 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Yrr), |
| 82257 | /* 232216 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82258 | /* 232220 */ GIR_RootConstrainSelectedInstOperands, |
| 82259 | /* 232221 */ // GIR_Coverage, 1391, |
| 82260 | /* 232221 */ GIR_Done, |
| 82261 | /* 232222 */ // Label 5328: @232222 |
| 82262 | /* 232222 */ GIM_Try, /*On fail goto*//*Label 5329*/ GIMT_Encode4(232259), // Rule ID 8458 // |
| 82263 | /* 232227 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 82264 | /* 232230 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82265 | /* 232234 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82266 | /* 232238 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82267 | /* 232242 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82268 | /* 232246 */ // (strict_fma:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src2, VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src3) => (VFMADD213PSZ256r:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2, VR256X:{ *:[v8f32] }:$src3) |
| 82269 | /* 232246 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ256r), |
| 82270 | /* 232249 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82271 | /* 232251 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82272 | /* 232253 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82273 | /* 232255 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82274 | /* 232257 */ GIR_RootConstrainSelectedInstOperands, |
| 82275 | /* 232258 */ // GIR_Coverage, 8458, |
| 82276 | /* 232258 */ GIR_EraseRootFromParent_Done, |
| 82277 | /* 232259 */ // Label 5329: @232259 |
| 82278 | /* 232259 */ GIM_Reject, |
| 82279 | /* 232260 */ // Label 5317: @232260 |
| 82280 | /* 232260 */ GIM_Reject, |
| 82281 | /* 232261 */ // Label 5237: @232261 |
| 82282 | /* 232261 */ GIM_Try, /*On fail goto*//*Label 5330*/ GIMT_Encode4(232505), |
| 82283 | /* 232266 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 82284 | /* 232269 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 82285 | /* 232272 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 82286 | /* 232275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82287 | /* 232279 */ GIM_Try, /*On fail goto*//*Label 5331*/ GIMT_Encode4(232343), // Rule ID 9658 // |
| 82288 | /* 232284 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82289 | /* 232287 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82290 | /* 232291 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82291 | /* 232295 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82292 | /* 232298 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82293 | /* 232302 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82294 | /* 232306 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82295 | /* 232310 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82296 | /* 232314 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82297 | /* 232316 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82298 | /* 232323 */ // (strict_fma:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VFMADD132PDZm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82299 | /* 232323 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZm), |
| 82300 | /* 232326 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82301 | /* 232328 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82302 | /* 232330 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 82303 | /* 232332 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82304 | /* 232336 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82305 | /* 232341 */ GIR_RootConstrainSelectedInstOperands, |
| 82306 | /* 232342 */ // GIR_Coverage, 9658, |
| 82307 | /* 232342 */ GIR_EraseRootFromParent_Done, |
| 82308 | /* 232343 */ // Label 5331: @232343 |
| 82309 | /* 232343 */ GIM_Try, /*On fail goto*//*Label 5332*/ GIMT_Encode4(232407), // Rule ID 9118 // |
| 82310 | /* 232348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82311 | /* 232351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82312 | /* 232355 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 82313 | /* 232359 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82314 | /* 232363 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82315 | /* 232366 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82316 | /* 232370 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82317 | /* 232374 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82318 | /* 232378 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82319 | /* 232380 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82320 | /* 232387 */ // (strict_fma:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src2, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8f64] }:$src1) => (VFMADD231PDZm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82321 | /* 232387 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZm), |
| 82322 | /* 232390 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82323 | /* 232392 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 82324 | /* 232394 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82325 | /* 232396 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82326 | /* 232400 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82327 | /* 232405 */ GIR_RootConstrainSelectedInstOperands, |
| 82328 | /* 232406 */ // GIR_Coverage, 9118, |
| 82329 | /* 232406 */ GIR_EraseRootFromParent_Done, |
| 82330 | /* 232407 */ // Label 5332: @232407 |
| 82331 | /* 232407 */ GIM_Try, /*On fail goto*//*Label 5333*/ GIMT_Encode4(232471), // Rule ID 8486 // |
| 82332 | /* 232412 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82333 | /* 232415 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82334 | /* 232419 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82335 | /* 232423 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 82336 | /* 232427 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82337 | /* 232431 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82338 | /* 232434 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82339 | /* 232438 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82340 | /* 232442 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82341 | /* 232444 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82342 | /* 232451 */ // (strict_fma:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src2, VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PDZm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82343 | /* 232451 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZm), |
| 82344 | /* 232454 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82345 | /* 232456 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82346 | /* 232458 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82347 | /* 232460 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82348 | /* 232464 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82349 | /* 232469 */ GIR_RootConstrainSelectedInstOperands, |
| 82350 | /* 232470 */ // GIR_Coverage, 8486, |
| 82351 | /* 232470 */ GIR_EraseRootFromParent_Done, |
| 82352 | /* 232471 */ // Label 5333: @232471 |
| 82353 | /* 232471 */ GIM_Try, /*On fail goto*//*Label 5334*/ GIMT_Encode4(232504), // Rule ID 8482 // |
| 82354 | /* 232476 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82355 | /* 232479 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82356 | /* 232483 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82357 | /* 232487 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82358 | /* 232491 */ // (strict_fma:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src2, VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src3) => (VFMADD213PDZr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2, VR512:{ *:[v8f64] }:$src3) |
| 82359 | /* 232491 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZr), |
| 82360 | /* 232494 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82361 | /* 232496 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82362 | /* 232498 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82363 | /* 232500 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82364 | /* 232502 */ GIR_RootConstrainSelectedInstOperands, |
| 82365 | /* 232503 */ // GIR_Coverage, 8482, |
| 82366 | /* 232503 */ GIR_EraseRootFromParent_Done, |
| 82367 | /* 232504 */ // Label 5334: @232504 |
| 82368 | /* 232504 */ GIM_Reject, |
| 82369 | /* 232505 */ // Label 5330: @232505 |
| 82370 | /* 232505 */ GIM_Reject, |
| 82371 | /* 232506 */ // Label 5238: @232506 |
| 82372 | /* 232506 */ GIM_Try, /*On fail goto*//*Label 5335*/ GIMT_Encode4(232750), |
| 82373 | /* 232511 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 82374 | /* 232514 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 82375 | /* 232517 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 82376 | /* 232520 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82377 | /* 232524 */ GIM_Try, /*On fail goto*//*Label 5336*/ GIMT_Encode4(232588), // Rule ID 9606 // |
| 82378 | /* 232529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 82379 | /* 232532 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82380 | /* 232536 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82381 | /* 232540 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82382 | /* 232543 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82383 | /* 232547 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82384 | /* 232551 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82385 | /* 232555 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82386 | /* 232559 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82387 | /* 232561 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82388 | /* 232568 */ // (strict_fma:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VFMADD132PHZ256m:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82389 | /* 232568 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZ256m), |
| 82390 | /* 232571 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82391 | /* 232573 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82392 | /* 232575 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 82393 | /* 232577 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82394 | /* 232581 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82395 | /* 232586 */ GIR_RootConstrainSelectedInstOperands, |
| 82396 | /* 232587 */ // GIR_Coverage, 9606, |
| 82397 | /* 232587 */ GIR_EraseRootFromParent_Done, |
| 82398 | /* 232588 */ // Label 5336: @232588 |
| 82399 | /* 232588 */ GIM_Try, /*On fail goto*//*Label 5337*/ GIMT_Encode4(232652), // Rule ID 9066 // |
| 82400 | /* 232593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 82401 | /* 232596 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82402 | /* 232600 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 82403 | /* 232604 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82404 | /* 232608 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82405 | /* 232611 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82406 | /* 232615 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82407 | /* 232619 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82408 | /* 232623 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82409 | /* 232625 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82410 | /* 232632 */ // (strict_fma:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src2, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src1) => (VFMADD231PHZ256m:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82411 | /* 232632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZ256m), |
| 82412 | /* 232635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82413 | /* 232637 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 82414 | /* 232639 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82415 | /* 232641 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82416 | /* 232645 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82417 | /* 232650 */ GIR_RootConstrainSelectedInstOperands, |
| 82418 | /* 232651 */ // GIR_Coverage, 9066, |
| 82419 | /* 232651 */ GIR_EraseRootFromParent_Done, |
| 82420 | /* 232652 */ // Label 5337: @232652 |
| 82421 | /* 232652 */ GIM_Try, /*On fail goto*//*Label 5338*/ GIMT_Encode4(232716), // Rule ID 8423 // |
| 82422 | /* 232657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 82423 | /* 232660 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82424 | /* 232664 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82425 | /* 232668 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 82426 | /* 232672 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82427 | /* 232676 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82428 | /* 232679 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82429 | /* 232683 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82430 | /* 232687 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82431 | /* 232689 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82432 | /* 232696 */ // (strict_fma:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src2, VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PHZ256m:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82433 | /* 232696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ256m), |
| 82434 | /* 232699 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82435 | /* 232701 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82436 | /* 232703 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82437 | /* 232705 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82438 | /* 232709 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82439 | /* 232714 */ GIR_RootConstrainSelectedInstOperands, |
| 82440 | /* 232715 */ // GIR_Coverage, 8423, |
| 82441 | /* 232715 */ GIR_EraseRootFromParent_Done, |
| 82442 | /* 232716 */ // Label 5338: @232716 |
| 82443 | /* 232716 */ GIM_Try, /*On fail goto*//*Label 5339*/ GIMT_Encode4(232749), // Rule ID 8419 // |
| 82444 | /* 232721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 82445 | /* 232724 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82446 | /* 232728 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82447 | /* 232732 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82448 | /* 232736 */ // (strict_fma:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src2, VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src3) => (VFMADD213PHZ256r:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2, VR256X:{ *:[v16f16] }:$src3) |
| 82449 | /* 232736 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ256r), |
| 82450 | /* 232739 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82451 | /* 232741 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82452 | /* 232743 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82453 | /* 232745 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82454 | /* 232747 */ GIR_RootConstrainSelectedInstOperands, |
| 82455 | /* 232748 */ // GIR_Coverage, 8419, |
| 82456 | /* 232748 */ GIR_EraseRootFromParent_Done, |
| 82457 | /* 232749 */ // Label 5339: @232749 |
| 82458 | /* 232749 */ GIM_Reject, |
| 82459 | /* 232750 */ // Label 5335: @232750 |
| 82460 | /* 232750 */ GIM_Reject, |
| 82461 | /* 232751 */ // Label 5239: @232751 |
| 82462 | /* 232751 */ GIM_Try, /*On fail goto*//*Label 5340*/ GIMT_Encode4(232995), |
| 82463 | /* 232756 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 82464 | /* 232759 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 82465 | /* 232762 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 82466 | /* 232765 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82467 | /* 232769 */ GIM_Try, /*On fail goto*//*Label 5341*/ GIMT_Encode4(232833), // Rule ID 9626 // |
| 82468 | /* 232774 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82469 | /* 232777 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82470 | /* 232781 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82471 | /* 232785 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82472 | /* 232788 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82473 | /* 232792 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82474 | /* 232796 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82475 | /* 232800 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82476 | /* 232804 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82477 | /* 232806 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82478 | /* 232813 */ // (strict_fma:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VFMADD132PSZm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82479 | /* 232813 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZm), |
| 82480 | /* 232816 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82481 | /* 232818 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82482 | /* 232820 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 82483 | /* 232822 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82484 | /* 232826 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82485 | /* 232831 */ GIR_RootConstrainSelectedInstOperands, |
| 82486 | /* 232832 */ // GIR_Coverage, 9626, |
| 82487 | /* 232832 */ GIR_EraseRootFromParent_Done, |
| 82488 | /* 232833 */ // Label 5341: @232833 |
| 82489 | /* 232833 */ GIM_Try, /*On fail goto*//*Label 5342*/ GIMT_Encode4(232897), // Rule ID 9086 // |
| 82490 | /* 232838 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82491 | /* 232841 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82492 | /* 232845 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 82493 | /* 232849 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82494 | /* 232853 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82495 | /* 232856 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82496 | /* 232860 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82497 | /* 232864 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82498 | /* 232868 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82499 | /* 232870 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82500 | /* 232877 */ // (strict_fma:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src2, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16f32] }:$src1) => (VFMADD231PSZm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82501 | /* 232877 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZm), |
| 82502 | /* 232880 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82503 | /* 232882 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 82504 | /* 232884 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82505 | /* 232886 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82506 | /* 232890 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82507 | /* 232895 */ GIR_RootConstrainSelectedInstOperands, |
| 82508 | /* 232896 */ // GIR_Coverage, 9086, |
| 82509 | /* 232896 */ GIR_EraseRootFromParent_Done, |
| 82510 | /* 232897 */ // Label 5342: @232897 |
| 82511 | /* 232897 */ GIM_Try, /*On fail goto*//*Label 5343*/ GIMT_Encode4(232961), // Rule ID 8447 // |
| 82512 | /* 232902 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82513 | /* 232905 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82514 | /* 232909 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82515 | /* 232913 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 82516 | /* 232917 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82517 | /* 232921 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82518 | /* 232924 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82519 | /* 232928 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82520 | /* 232932 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82521 | /* 232934 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82522 | /* 232941 */ // (strict_fma:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src2, VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PSZm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82523 | /* 232941 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZm), |
| 82524 | /* 232944 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82525 | /* 232946 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82526 | /* 232948 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82527 | /* 232950 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82528 | /* 232954 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82529 | /* 232959 */ GIR_RootConstrainSelectedInstOperands, |
| 82530 | /* 232960 */ // GIR_Coverage, 8447, |
| 82531 | /* 232960 */ GIR_EraseRootFromParent_Done, |
| 82532 | /* 232961 */ // Label 5343: @232961 |
| 82533 | /* 232961 */ GIM_Try, /*On fail goto*//*Label 5344*/ GIMT_Encode4(232994), // Rule ID 8443 // |
| 82534 | /* 232966 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82535 | /* 232969 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82536 | /* 232973 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82537 | /* 232977 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82538 | /* 232981 */ // (strict_fma:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src2, VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src3) => (VFMADD213PSZr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2, VR512:{ *:[v16f32] }:$src3) |
| 82539 | /* 232981 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZr), |
| 82540 | /* 232984 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82541 | /* 232986 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82542 | /* 232988 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82543 | /* 232990 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82544 | /* 232992 */ GIR_RootConstrainSelectedInstOperands, |
| 82545 | /* 232993 */ // GIR_Coverage, 8443, |
| 82546 | /* 232993 */ GIR_EraseRootFromParent_Done, |
| 82547 | /* 232994 */ // Label 5344: @232994 |
| 82548 | /* 232994 */ GIM_Reject, |
| 82549 | /* 232995 */ // Label 5340: @232995 |
| 82550 | /* 232995 */ GIM_Reject, |
| 82551 | /* 232996 */ // Label 5240: @232996 |
| 82552 | /* 232996 */ GIM_Try, /*On fail goto*//*Label 5345*/ GIMT_Encode4(233240), |
| 82553 | /* 233001 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 82554 | /* 233004 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 82555 | /* 233007 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 82556 | /* 233010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82557 | /* 233014 */ GIM_Try, /*On fail goto*//*Label 5346*/ GIMT_Encode4(233078), // Rule ID 9594 // |
| 82558 | /* 233019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82559 | /* 233022 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82560 | /* 233026 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82561 | /* 233030 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82562 | /* 233033 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82563 | /* 233037 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82564 | /* 233041 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82565 | /* 233045 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82566 | /* 233049 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82567 | /* 233051 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82568 | /* 233058 */ // (strict_fma:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VFMADD132PHZm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82569 | /* 233058 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZm), |
| 82570 | /* 233061 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82571 | /* 233063 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82572 | /* 233065 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 82573 | /* 233067 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82574 | /* 233071 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82575 | /* 233076 */ GIR_RootConstrainSelectedInstOperands, |
| 82576 | /* 233077 */ // GIR_Coverage, 9594, |
| 82577 | /* 233077 */ GIR_EraseRootFromParent_Done, |
| 82578 | /* 233078 */ // Label 5346: @233078 |
| 82579 | /* 233078 */ GIM_Try, /*On fail goto*//*Label 5347*/ GIMT_Encode4(233142), // Rule ID 9054 // |
| 82580 | /* 233083 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82581 | /* 233086 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82582 | /* 233090 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 82583 | /* 233094 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82584 | /* 233098 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82585 | /* 233101 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82586 | /* 233105 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82587 | /* 233109 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82588 | /* 233113 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82589 | /* 233115 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82590 | /* 233122 */ // (strict_fma:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src2, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src1) => (VFMADD231PHZm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82591 | /* 233122 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZm), |
| 82592 | /* 233125 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82593 | /* 233127 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 82594 | /* 233129 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82595 | /* 233131 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82596 | /* 233135 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82597 | /* 233140 */ GIR_RootConstrainSelectedInstOperands, |
| 82598 | /* 233141 */ // GIR_Coverage, 9054, |
| 82599 | /* 233141 */ GIR_EraseRootFromParent_Done, |
| 82600 | /* 233142 */ // Label 5347: @233142 |
| 82601 | /* 233142 */ GIM_Try, /*On fail goto*//*Label 5348*/ GIMT_Encode4(233206), // Rule ID 8408 // |
| 82602 | /* 233147 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82603 | /* 233150 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82604 | /* 233154 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82605 | /* 233158 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 82606 | /* 233162 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82607 | /* 233166 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82608 | /* 233169 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82609 | /* 233173 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82610 | /* 233177 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82611 | /* 233179 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82612 | /* 233186 */ // (strict_fma:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src2, VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFMADD213PHZm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 82613 | /* 233186 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZm), |
| 82614 | /* 233189 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82615 | /* 233191 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82616 | /* 233193 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82617 | /* 233195 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82618 | /* 233199 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82619 | /* 233204 */ GIR_RootConstrainSelectedInstOperands, |
| 82620 | /* 233205 */ // GIR_Coverage, 8408, |
| 82621 | /* 233205 */ GIR_EraseRootFromParent_Done, |
| 82622 | /* 233206 */ // Label 5348: @233206 |
| 82623 | /* 233206 */ GIM_Try, /*On fail goto*//*Label 5349*/ GIMT_Encode4(233239), // Rule ID 8404 // |
| 82624 | /* 233211 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82625 | /* 233214 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82626 | /* 233218 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82627 | /* 233222 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82628 | /* 233226 */ // (strict_fma:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src2, VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src3) => (VFMADD213PHZr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2, VR512:{ *:[v32f16] }:$src3) |
| 82629 | /* 233226 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZr), |
| 82630 | /* 233229 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82631 | /* 233231 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82632 | /* 233233 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82633 | /* 233235 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82634 | /* 233237 */ GIR_RootConstrainSelectedInstOperands, |
| 82635 | /* 233238 */ // GIR_Coverage, 8404, |
| 82636 | /* 233238 */ GIR_EraseRootFromParent_Done, |
| 82637 | /* 233239 */ // Label 5349: @233239 |
| 82638 | /* 233239 */ GIM_Reject, |
| 82639 | /* 233240 */ // Label 5345: @233240 |
| 82640 | /* 233240 */ GIM_Reject, |
| 82641 | /* 233241 */ // Label 5241: @233241 |
| 82642 | /* 233241 */ GIM_Reject, |
| 82643 | /* 233242 */ // Label 73: @233242 |
| 82644 | /* 233242 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 5363*/ GIMT_Encode4(235410), |
| 82645 | /* 233253 */ /*GILLT_s16*//*Label 5350*/ GIMT_Encode4(233337), |
| 82646 | /* 233257 */ /*GILLT_s32*//*Label 5351*/ GIMT_Encode4(233458), |
| 82647 | /* 233261 */ /*GILLT_s64*//*Label 5352*/ GIMT_Encode4(233814), |
| 82648 | /* 233265 */ /*GILLT_s80*//*Label 5353*/ GIMT_Encode4(234170), GIMT_Encode4(0), GIMT_Encode4(0), |
| 82649 | /* 233277 */ /*GILLT_v2s64*//*Label 5354*/ GIMT_Encode4(234207), GIMT_Encode4(0), |
| 82650 | /* 233285 */ /*GILLT_v4s32*//*Label 5355*/ GIMT_Encode4(234410), |
| 82651 | /* 233289 */ /*GILLT_v4s64*//*Label 5356*/ GIMT_Encode4(234613), GIMT_Encode4(0), |
| 82652 | /* 233297 */ /*GILLT_v8s16*//*Label 5357*/ GIMT_Encode4(234789), |
| 82653 | /* 233301 */ /*GILLT_v8s32*//*Label 5358*/ GIMT_Encode4(234878), |
| 82654 | /* 233305 */ /*GILLT_v8s64*//*Label 5359*/ GIMT_Encode4(235054), GIMT_Encode4(0), GIMT_Encode4(0), |
| 82655 | /* 233317 */ /*GILLT_v16s16*//*Label 5360*/ GIMT_Encode4(235143), |
| 82656 | /* 233321 */ /*GILLT_v16s32*//*Label 5361*/ GIMT_Encode4(235232), GIMT_Encode4(0), GIMT_Encode4(0), |
| 82657 | /* 233333 */ /*GILLT_v32s16*//*Label 5362*/ GIMT_Encode4(235321), |
| 82658 | /* 233337 */ // Label 5350: @233337 |
| 82659 | /* 233337 */ GIM_Try, /*On fail goto*//*Label 5364*/ GIMT_Encode4(233457), |
| 82660 | /* 233342 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 82661 | /* 233345 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 82662 | /* 233349 */ GIM_Try, /*On fail goto*//*Label 5365*/ GIMT_Encode4(233418), // Rule ID 21420 // |
| 82663 | /* 233354 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_OptForSize), |
| 82664 | /* 233357 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82665 | /* 233361 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82666 | /* 233365 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82667 | /* 233368 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82668 | /* 233372 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82669 | /* 233376 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82670 | /* 233378 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82671 | /* 233385 */ // (strict_fsqrt:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSHZm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 82672 | /* 233385 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 82673 | /* 233388 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82674 | /* 233392 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 82675 | /* 233397 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82676 | /* 233399 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSHZm), |
| 82677 | /* 233402 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82678 | /* 233404 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82679 | /* 233407 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82680 | /* 233411 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82681 | /* 233416 */ GIR_RootConstrainSelectedInstOperands, |
| 82682 | /* 233417 */ // GIR_Coverage, 21420, |
| 82683 | /* 233417 */ GIR_EraseRootFromParent_Done, |
| 82684 | /* 233418 */ // Label 5365: @233418 |
| 82685 | /* 233418 */ GIM_Try, /*On fail goto*//*Label 5366*/ GIMT_Encode4(233456), // Rule ID 21418 // |
| 82686 | /* 233423 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82687 | /* 233426 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 82688 | /* 233430 */ // (strict_fsqrt:{ *:[f16] } FR16X:{ *:[f16] }:$src) => (VSQRTSHZr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), FR16X:{ *:[f16] }:$src) |
| 82689 | /* 233430 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 82690 | /* 233433 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82691 | /* 233437 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 82692 | /* 233442 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82693 | /* 233444 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSHZr), |
| 82694 | /* 233447 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82695 | /* 233449 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82696 | /* 233452 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 82697 | /* 233454 */ GIR_RootConstrainSelectedInstOperands, |
| 82698 | /* 233455 */ // GIR_Coverage, 21418, |
| 82699 | /* 233455 */ GIR_EraseRootFromParent_Done, |
| 82700 | /* 233456 */ // Label 5366: @233456 |
| 82701 | /* 233456 */ GIM_Reject, |
| 82702 | /* 233457 */ // Label 5364: @233457 |
| 82703 | /* 233457 */ GIM_Reject, |
| 82704 | /* 233458 */ // Label 5351: @233458 |
| 82705 | /* 233458 */ GIM_Try, /*On fail goto*//*Label 5367*/ GIMT_Encode4(233813), |
| 82706 | /* 233463 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 82707 | /* 233466 */ GIM_Try, /*On fail goto*//*Label 5368*/ GIMT_Encode4(233522), // Rule ID 2448 // |
| 82708 | /* 233471 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE1), |
| 82709 | /* 233474 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82710 | /* 233478 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82711 | /* 233482 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82712 | /* 233486 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82713 | /* 233489 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82714 | /* 233493 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82715 | /* 233497 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82716 | /* 233499 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82717 | /* 233506 */ // (strict_fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SQRTSSm:{ *:[f32] } addr:{ *:[iPTR] }:$src1) |
| 82718 | /* 233506 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SQRTSSm), |
| 82719 | /* 233509 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82720 | /* 233511 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 82721 | /* 233515 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82722 | /* 233520 */ GIR_RootConstrainSelectedInstOperands, |
| 82723 | /* 233521 */ // GIR_Coverage, 2448, |
| 82724 | /* 233521 */ GIR_EraseRootFromParent_Done, |
| 82725 | /* 233522 */ // Label 5368: @233522 |
| 82726 | /* 233522 */ GIM_Try, /*On fail goto*//*Label 5369*/ GIMT_Encode4(233595), // Rule ID 18276 // |
| 82727 | /* 233527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseAVX), |
| 82728 | /* 233530 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82729 | /* 233534 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82730 | /* 233538 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82731 | /* 233542 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82732 | /* 233545 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82733 | /* 233549 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82734 | /* 233553 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82735 | /* 233555 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82736 | /* 233562 */ // (strict_fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSSm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 82737 | /* 233562 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 82738 | /* 233565 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82739 | /* 233569 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 82740 | /* 233574 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82741 | /* 233576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSm), |
| 82742 | /* 233579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82743 | /* 233581 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82744 | /* 233584 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82745 | /* 233588 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82746 | /* 233593 */ GIR_RootConstrainSelectedInstOperands, |
| 82747 | /* 233594 */ // GIR_Coverage, 18276, |
| 82748 | /* 233594 */ GIR_EraseRootFromParent_Done, |
| 82749 | /* 233595 */ // Label 5369: @233595 |
| 82750 | /* 233595 */ GIM_Try, /*On fail goto*//*Label 5370*/ GIMT_Encode4(233668), // Rule ID 21424 // |
| 82751 | /* 233600 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_OptForSize), |
| 82752 | /* 233603 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 82753 | /* 233607 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82754 | /* 233611 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82755 | /* 233615 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82756 | /* 233618 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82757 | /* 233622 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82758 | /* 233626 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82759 | /* 233628 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82760 | /* 233635 */ // (strict_fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSSZm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 82761 | /* 233635 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 82762 | /* 233638 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82763 | /* 233642 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 82764 | /* 233647 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82765 | /* 233649 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSZm), |
| 82766 | /* 233652 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82767 | /* 233654 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82768 | /* 233657 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82769 | /* 233661 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82770 | /* 233666 */ GIR_RootConstrainSelectedInstOperands, |
| 82771 | /* 233667 */ // GIR_Coverage, 21424, |
| 82772 | /* 233667 */ GIR_EraseRootFromParent_Done, |
| 82773 | /* 233668 */ // Label 5370: @233668 |
| 82774 | /* 233668 */ GIM_Try, /*On fail goto*//*Label 5371*/ GIMT_Encode4(233701), // Rule ID 1048 // |
| 82775 | /* 233673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 82776 | /* 233676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 82777 | /* 233680 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 82778 | /* 233684 */ // (strict_fsqrt:{ *:[f32] } RFP32:{ *:[f32] }:$src) => (SQRT_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src) |
| 82779 | /* 233684 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp32), |
| 82780 | /* 233689 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 82781 | /* 233695 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 82782 | /* 233699 */ GIR_RootConstrainSelectedInstOperands, |
| 82783 | /* 233700 */ // GIR_Coverage, 1048, |
| 82784 | /* 233700 */ GIR_Done, |
| 82785 | /* 233701 */ // Label 5371: @233701 |
| 82786 | /* 233701 */ GIM_Try, /*On fail goto*//*Label 5372*/ GIMT_Encode4(233728), // Rule ID 2446 // |
| 82787 | /* 233706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 82788 | /* 233709 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82789 | /* 233713 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82790 | /* 233717 */ // (strict_fsqrt:{ *:[f32] } FR32:{ *:[f32] }:$src1) => (SQRTSSr:{ *:[f32] } FR32:{ *:[f32] }:$src1) |
| 82791 | /* 233717 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTSSr), |
| 82792 | /* 233722 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82793 | /* 233726 */ GIR_RootConstrainSelectedInstOperands, |
| 82794 | /* 233727 */ // GIR_Coverage, 2446, |
| 82795 | /* 233727 */ GIR_Done, |
| 82796 | /* 233728 */ // Label 5372: @233728 |
| 82797 | /* 233728 */ GIM_Try, /*On fail goto*//*Label 5373*/ GIMT_Encode4(233770), // Rule ID 18274 // |
| 82798 | /* 233733 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 82799 | /* 233736 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82800 | /* 233740 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82801 | /* 233744 */ // (strict_fsqrt:{ *:[f32] } FR32:{ *:[f32] }:$src) => (VSQRTSSr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR32:{ *:[f32] }:$src) |
| 82802 | /* 233744 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 82803 | /* 233747 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82804 | /* 233751 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 82805 | /* 233756 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82806 | /* 233758 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSr), |
| 82807 | /* 233761 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82808 | /* 233763 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82809 | /* 233766 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 82810 | /* 233768 */ GIR_RootConstrainSelectedInstOperands, |
| 82811 | /* 233769 */ // GIR_Coverage, 18274, |
| 82812 | /* 233769 */ GIR_EraseRootFromParent_Done, |
| 82813 | /* 233770 */ // Label 5373: @233770 |
| 82814 | /* 233770 */ GIM_Try, /*On fail goto*//*Label 5374*/ GIMT_Encode4(233812), // Rule ID 21422 // |
| 82815 | /* 233775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82816 | /* 233778 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 82817 | /* 233782 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 82818 | /* 233786 */ // (strict_fsqrt:{ *:[f32] } FR32X:{ *:[f32] }:$src) => (VSQRTSSZr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR32X:{ *:[f32] }:$src) |
| 82819 | /* 233786 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 82820 | /* 233789 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82821 | /* 233793 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 82822 | /* 233798 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82823 | /* 233800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSZr), |
| 82824 | /* 233803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82825 | /* 233805 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82826 | /* 233808 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 82827 | /* 233810 */ GIR_RootConstrainSelectedInstOperands, |
| 82828 | /* 233811 */ // GIR_Coverage, 21422, |
| 82829 | /* 233811 */ GIR_EraseRootFromParent_Done, |
| 82830 | /* 233812 */ // Label 5374: @233812 |
| 82831 | /* 233812 */ GIM_Reject, |
| 82832 | /* 233813 */ // Label 5367: @233813 |
| 82833 | /* 233813 */ GIM_Reject, |
| 82834 | /* 233814 */ // Label 5352: @233814 |
| 82835 | /* 233814 */ GIM_Try, /*On fail goto*//*Label 5375*/ GIMT_Encode4(234169), |
| 82836 | /* 233819 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 82837 | /* 233822 */ GIM_Try, /*On fail goto*//*Label 5376*/ GIMT_Encode4(233878), // Rule ID 2464 // |
| 82838 | /* 233827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE2), |
| 82839 | /* 233830 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82840 | /* 233834 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82841 | /* 233838 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82842 | /* 233842 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82843 | /* 233845 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82844 | /* 233849 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82845 | /* 233853 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82846 | /* 233855 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82847 | /* 233862 */ // (strict_fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SQRTSDm:{ *:[f64] } addr:{ *:[iPTR] }:$src1) |
| 82848 | /* 233862 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SQRTSDm), |
| 82849 | /* 233865 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82850 | /* 233867 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 82851 | /* 233871 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82852 | /* 233876 */ GIR_RootConstrainSelectedInstOperands, |
| 82853 | /* 233877 */ // GIR_Coverage, 2464, |
| 82854 | /* 233877 */ GIR_EraseRootFromParent_Done, |
| 82855 | /* 233878 */ // Label 5376: @233878 |
| 82856 | /* 233878 */ GIM_Try, /*On fail goto*//*Label 5377*/ GIMT_Encode4(233951), // Rule ID 18280 // |
| 82857 | /* 233883 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseAVX), |
| 82858 | /* 233886 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82859 | /* 233890 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82860 | /* 233894 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82861 | /* 233898 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82862 | /* 233901 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82863 | /* 233905 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82864 | /* 233909 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82865 | /* 233911 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82866 | /* 233918 */ // (strict_fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSDm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 82867 | /* 233918 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 82868 | /* 233921 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82869 | /* 233925 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 82870 | /* 233930 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82871 | /* 233932 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDm), |
| 82872 | /* 233935 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82873 | /* 233937 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82874 | /* 233940 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82875 | /* 233944 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82876 | /* 233949 */ GIR_RootConstrainSelectedInstOperands, |
| 82877 | /* 233950 */ // GIR_Coverage, 18280, |
| 82878 | /* 233950 */ GIR_EraseRootFromParent_Done, |
| 82879 | /* 233951 */ // Label 5377: @233951 |
| 82880 | /* 233951 */ GIM_Try, /*On fail goto*//*Label 5378*/ GIMT_Encode4(234024), // Rule ID 21428 // |
| 82881 | /* 233956 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_OptForSize), |
| 82882 | /* 233959 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 82883 | /* 233963 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82884 | /* 233967 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82885 | /* 233971 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82886 | /* 233974 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82887 | /* 233978 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82888 | /* 233982 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82889 | /* 233984 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82890 | /* 233991 */ // (strict_fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSDZm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 82891 | /* 233991 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 82892 | /* 233994 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82893 | /* 233998 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 82894 | /* 234003 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82895 | /* 234005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDZm), |
| 82896 | /* 234008 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82897 | /* 234010 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82898 | /* 234013 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82899 | /* 234017 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82900 | /* 234022 */ GIR_RootConstrainSelectedInstOperands, |
| 82901 | /* 234023 */ // GIR_Coverage, 21428, |
| 82902 | /* 234023 */ GIR_EraseRootFromParent_Done, |
| 82903 | /* 234024 */ // Label 5378: @234024 |
| 82904 | /* 234024 */ GIM_Try, /*On fail goto*//*Label 5379*/ GIMT_Encode4(234057), // Rule ID 1050 // |
| 82905 | /* 234029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 82906 | /* 234032 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 82907 | /* 234036 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 82908 | /* 234040 */ // (strict_fsqrt:{ *:[f64] } RFP64:{ *:[f64] }:$src) => (SQRT_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src) |
| 82909 | /* 234040 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp64), |
| 82910 | /* 234045 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 82911 | /* 234051 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 82912 | /* 234055 */ GIR_RootConstrainSelectedInstOperands, |
| 82913 | /* 234056 */ // GIR_Coverage, 1050, |
| 82914 | /* 234056 */ GIR_Done, |
| 82915 | /* 234057 */ // Label 5379: @234057 |
| 82916 | /* 234057 */ GIM_Try, /*On fail goto*//*Label 5380*/ GIMT_Encode4(234084), // Rule ID 2462 // |
| 82917 | /* 234062 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 82918 | /* 234065 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82919 | /* 234069 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82920 | /* 234073 */ // (strict_fsqrt:{ *:[f64] } FR64:{ *:[f64] }:$src1) => (SQRTSDr:{ *:[f64] } FR64:{ *:[f64] }:$src1) |
| 82921 | /* 234073 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTSDr), |
| 82922 | /* 234078 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82923 | /* 234082 */ GIR_RootConstrainSelectedInstOperands, |
| 82924 | /* 234083 */ // GIR_Coverage, 2462, |
| 82925 | /* 234083 */ GIR_Done, |
| 82926 | /* 234084 */ // Label 5380: @234084 |
| 82927 | /* 234084 */ GIM_Try, /*On fail goto*//*Label 5381*/ GIMT_Encode4(234126), // Rule ID 18278 // |
| 82928 | /* 234089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 82929 | /* 234092 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82930 | /* 234096 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82931 | /* 234100 */ // (strict_fsqrt:{ *:[f64] } FR64:{ *:[f64] }:$src) => (VSQRTSDr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR64:{ *:[f64] }:$src) |
| 82932 | /* 234100 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 82933 | /* 234103 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82934 | /* 234107 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 82935 | /* 234112 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82936 | /* 234114 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDr), |
| 82937 | /* 234117 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82938 | /* 234119 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82939 | /* 234122 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 82940 | /* 234124 */ GIR_RootConstrainSelectedInstOperands, |
| 82941 | /* 234125 */ // GIR_Coverage, 18278, |
| 82942 | /* 234125 */ GIR_EraseRootFromParent_Done, |
| 82943 | /* 234126 */ // Label 5381: @234126 |
| 82944 | /* 234126 */ GIM_Try, /*On fail goto*//*Label 5382*/ GIMT_Encode4(234168), // Rule ID 21426 // |
| 82945 | /* 234131 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82946 | /* 234134 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 82947 | /* 234138 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 82948 | /* 234142 */ // (strict_fsqrt:{ *:[f64] } FR64X:{ *:[f64] }:$src) => (VSQRTSDZr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR64X:{ *:[f64] }:$src) |
| 82949 | /* 234142 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 82950 | /* 234145 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82951 | /* 234149 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(RegState::Define), |
| 82952 | /* 234154 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82953 | /* 234156 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDZr), |
| 82954 | /* 234159 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82955 | /* 234161 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82956 | /* 234164 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 82957 | /* 234166 */ GIR_RootConstrainSelectedInstOperands, |
| 82958 | /* 234167 */ // GIR_Coverage, 21426, |
| 82959 | /* 234167 */ GIR_EraseRootFromParent_Done, |
| 82960 | /* 234168 */ // Label 5382: @234168 |
| 82961 | /* 234168 */ GIM_Reject, |
| 82962 | /* 234169 */ // Label 5375: @234169 |
| 82963 | /* 234169 */ GIM_Reject, |
| 82964 | /* 234170 */ // Label 5353: @234170 |
| 82965 | /* 234170 */ GIM_Try, /*On fail goto*//*Label 5383*/ GIMT_Encode4(234206), // Rule ID 1052 // |
| 82966 | /* 234175 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 82967 | /* 234178 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 82968 | /* 234181 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 82969 | /* 234185 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 82970 | /* 234189 */ // (strict_fsqrt:{ *:[f80] } RFP80:{ *:[f80] }:$src) => (SQRT_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src) |
| 82971 | /* 234189 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp80), |
| 82972 | /* 234194 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(RegState::Dead), |
| 82973 | /* 234200 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 82974 | /* 234204 */ GIR_RootConstrainSelectedInstOperands, |
| 82975 | /* 234205 */ // GIR_Coverage, 1052, |
| 82976 | /* 234205 */ GIR_Done, |
| 82977 | /* 234206 */ // Label 5383: @234206 |
| 82978 | /* 234206 */ GIM_Reject, |
| 82979 | /* 234207 */ // Label 5354: @234207 |
| 82980 | /* 234207 */ GIM_Try, /*On fail goto*//*Label 5384*/ GIMT_Encode4(234409), |
| 82981 | /* 234212 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 82982 | /* 234215 */ GIM_Try, /*On fail goto*//*Label 5385*/ GIMT_Encode4(234271), // Rule ID 2468 // |
| 82983 | /* 234220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 82984 | /* 234223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82985 | /* 234227 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82986 | /* 234231 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82987 | /* 234235 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82988 | /* 234238 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82989 | /* 234242 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82990 | /* 234246 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82991 | /* 234248 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82992 | /* 234255 */ // (strict_fsqrt:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 82993 | /* 234255 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDm), |
| 82994 | /* 234258 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82995 | /* 234260 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82996 | /* 234264 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82997 | /* 234269 */ GIR_RootConstrainSelectedInstOperands, |
| 82998 | /* 234270 */ // GIR_Coverage, 2468, |
| 82999 | /* 234270 */ GIR_EraseRootFromParent_Done, |
| 83000 | /* 234271 */ // Label 5385: @234271 |
| 83001 | /* 234271 */ GIM_Try, /*On fail goto*//*Label 5386*/ GIMT_Encode4(234327), // Rule ID 12086 // |
| 83002 | /* 234276 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 83003 | /* 234279 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 83004 | /* 234283 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83005 | /* 234287 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83006 | /* 234291 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83007 | /* 234294 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83008 | /* 234298 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83009 | /* 234302 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83010 | /* 234304 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83011 | /* 234311 */ // (strict_fsqrt:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZ128m:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 83012 | /* 234311 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ128m), |
| 83013 | /* 234314 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83014 | /* 234316 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83015 | /* 234320 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83016 | /* 234325 */ GIR_RootConstrainSelectedInstOperands, |
| 83017 | /* 234326 */ // GIR_Coverage, 12086, |
| 83018 | /* 234326 */ GIR_EraseRootFromParent_Done, |
| 83019 | /* 234327 */ // Label 5386: @234327 |
| 83020 | /* 234327 */ GIM_Try, /*On fail goto*//*Label 5387*/ GIMT_Encode4(234354), // Rule ID 2466 // |
| 83021 | /* 234332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 83022 | /* 234335 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 83023 | /* 234339 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 83024 | /* 234343 */ // (strict_fsqrt:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) => (VSQRTPDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 83025 | /* 234343 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDr), |
| 83026 | /* 234348 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83027 | /* 234352 */ GIR_RootConstrainSelectedInstOperands, |
| 83028 | /* 234353 */ // GIR_Coverage, 2466, |
| 83029 | /* 234353 */ GIR_Done, |
| 83030 | /* 234354 */ // Label 5387: @234354 |
| 83031 | /* 234354 */ GIM_Try, /*On fail goto*//*Label 5388*/ GIMT_Encode4(234381), // Rule ID 2474 // |
| 83032 | /* 234359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 83033 | /* 234362 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 83034 | /* 234366 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 83035 | /* 234370 */ // (strict_fsqrt:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) => (SQRTPDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 83036 | /* 234370 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTPDr), |
| 83037 | /* 234375 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83038 | /* 234379 */ GIR_RootConstrainSelectedInstOperands, |
| 83039 | /* 234380 */ // GIR_Coverage, 2474, |
| 83040 | /* 234380 */ GIR_Done, |
| 83041 | /* 234381 */ // Label 5388: @234381 |
| 83042 | /* 234381 */ GIM_Try, /*On fail goto*//*Label 5389*/ GIMT_Encode4(234408), // Rule ID 12082 // |
| 83043 | /* 234386 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 83044 | /* 234389 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 83045 | /* 234393 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 83046 | /* 234397 */ // (strict_fsqrt:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src) => (VSQRTPDZ128r:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src) |
| 83047 | /* 234397 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ128r), |
| 83048 | /* 234402 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83049 | /* 234406 */ GIR_RootConstrainSelectedInstOperands, |
| 83050 | /* 234407 */ // GIR_Coverage, 12082, |
| 83051 | /* 234407 */ GIR_Done, |
| 83052 | /* 234408 */ // Label 5389: @234408 |
| 83053 | /* 234408 */ GIM_Reject, |
| 83054 | /* 234409 */ // Label 5384: @234409 |
| 83055 | /* 234409 */ GIM_Reject, |
| 83056 | /* 234410 */ // Label 5355: @234410 |
| 83057 | /* 234410 */ GIM_Try, /*On fail goto*//*Label 5390*/ GIMT_Encode4(234612), |
| 83058 | /* 234415 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 83059 | /* 234418 */ GIM_Try, /*On fail goto*//*Label 5391*/ GIMT_Encode4(234474), // Rule ID 2452 // |
| 83060 | /* 234423 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 83061 | /* 234426 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 83062 | /* 234430 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83063 | /* 234434 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83064 | /* 234438 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83065 | /* 234441 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83066 | /* 234445 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83067 | /* 234449 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83068 | /* 234451 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83069 | /* 234458 */ // (strict_fsqrt:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 83070 | /* 234458 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSm), |
| 83071 | /* 234461 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83072 | /* 234463 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83073 | /* 234467 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83074 | /* 234472 */ GIR_RootConstrainSelectedInstOperands, |
| 83075 | /* 234473 */ // GIR_Coverage, 2452, |
| 83076 | /* 234473 */ GIR_EraseRootFromParent_Done, |
| 83077 | /* 234474 */ // Label 5391: @234474 |
| 83078 | /* 234474 */ GIM_Try, /*On fail goto*//*Label 5392*/ GIMT_Encode4(234530), // Rule ID 12062 // |
| 83079 | /* 234479 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 83080 | /* 234482 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 83081 | /* 234486 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83082 | /* 234490 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83083 | /* 234494 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83084 | /* 234497 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83085 | /* 234501 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83086 | /* 234505 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83087 | /* 234507 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83088 | /* 234514 */ // (strict_fsqrt:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZ128m:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 83089 | /* 234514 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ128m), |
| 83090 | /* 234517 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83091 | /* 234519 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83092 | /* 234523 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83093 | /* 234528 */ GIR_RootConstrainSelectedInstOperands, |
| 83094 | /* 234529 */ // GIR_Coverage, 12062, |
| 83095 | /* 234529 */ GIR_EraseRootFromParent_Done, |
| 83096 | /* 234530 */ // Label 5392: @234530 |
| 83097 | /* 234530 */ GIM_Try, /*On fail goto*//*Label 5393*/ GIMT_Encode4(234557), // Rule ID 2450 // |
| 83098 | /* 234535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 83099 | /* 234538 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 83100 | /* 234542 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 83101 | /* 234546 */ // (strict_fsqrt:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) => (VSQRTPSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 83102 | /* 234546 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSr), |
| 83103 | /* 234551 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83104 | /* 234555 */ GIR_RootConstrainSelectedInstOperands, |
| 83105 | /* 234556 */ // GIR_Coverage, 2450, |
| 83106 | /* 234556 */ GIR_Done, |
| 83107 | /* 234557 */ // Label 5393: @234557 |
| 83108 | /* 234557 */ GIM_Try, /*On fail goto*//*Label 5394*/ GIMT_Encode4(234584), // Rule ID 2458 // |
| 83109 | /* 234562 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 83110 | /* 234565 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 83111 | /* 234569 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 83112 | /* 234573 */ // (strict_fsqrt:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) => (SQRTPSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 83113 | /* 234573 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTPSr), |
| 83114 | /* 234578 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83115 | /* 234582 */ GIR_RootConstrainSelectedInstOperands, |
| 83116 | /* 234583 */ // GIR_Coverage, 2458, |
| 83117 | /* 234583 */ GIR_Done, |
| 83118 | /* 234584 */ // Label 5394: @234584 |
| 83119 | /* 234584 */ GIM_Try, /*On fail goto*//*Label 5395*/ GIMT_Encode4(234611), // Rule ID 12058 // |
| 83120 | /* 234589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 83121 | /* 234592 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 83122 | /* 234596 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 83123 | /* 234600 */ // (strict_fsqrt:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src) => (VSQRTPSZ128r:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src) |
| 83124 | /* 234600 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ128r), |
| 83125 | /* 234605 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83126 | /* 234609 */ GIR_RootConstrainSelectedInstOperands, |
| 83127 | /* 234610 */ // GIR_Coverage, 12058, |
| 83128 | /* 234610 */ GIR_Done, |
| 83129 | /* 234611 */ // Label 5395: @234611 |
| 83130 | /* 234611 */ GIM_Reject, |
| 83131 | /* 234612 */ // Label 5390: @234612 |
| 83132 | /* 234612 */ GIM_Reject, |
| 83133 | /* 234613 */ // Label 5356: @234613 |
| 83134 | /* 234613 */ GIM_Try, /*On fail goto*//*Label 5396*/ GIMT_Encode4(234788), |
| 83135 | /* 234618 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 83136 | /* 234621 */ GIM_Try, /*On fail goto*//*Label 5397*/ GIMT_Encode4(234677), // Rule ID 2472 // |
| 83137 | /* 234626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 83138 | /* 234629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 83139 | /* 234633 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83140 | /* 234637 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83141 | /* 234641 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83142 | /* 234644 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83143 | /* 234648 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83144 | /* 234652 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83145 | /* 234654 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83146 | /* 234661 */ // (strict_fsqrt:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDYm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 83147 | /* 234661 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDYm), |
| 83148 | /* 234664 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83149 | /* 234666 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83150 | /* 234670 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83151 | /* 234675 */ GIR_RootConstrainSelectedInstOperands, |
| 83152 | /* 234676 */ // GIR_Coverage, 2472, |
| 83153 | /* 234676 */ GIR_EraseRootFromParent_Done, |
| 83154 | /* 234677 */ // Label 5397: @234677 |
| 83155 | /* 234677 */ GIM_Try, /*On fail goto*//*Label 5398*/ GIMT_Encode4(234733), // Rule ID 12098 // |
| 83156 | /* 234682 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 83157 | /* 234685 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 83158 | /* 234689 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83159 | /* 234693 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83160 | /* 234697 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83161 | /* 234700 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83162 | /* 234704 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83163 | /* 234708 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83164 | /* 234710 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83165 | /* 234717 */ // (strict_fsqrt:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZ256m:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 83166 | /* 234717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ256m), |
| 83167 | /* 234720 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83168 | /* 234722 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83169 | /* 234726 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83170 | /* 234731 */ GIR_RootConstrainSelectedInstOperands, |
| 83171 | /* 234732 */ // GIR_Coverage, 12098, |
| 83172 | /* 234732 */ GIR_EraseRootFromParent_Done, |
| 83173 | /* 234733 */ // Label 5398: @234733 |
| 83174 | /* 234733 */ GIM_Try, /*On fail goto*//*Label 5399*/ GIMT_Encode4(234760), // Rule ID 2470 // |
| 83175 | /* 234738 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 83176 | /* 234741 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 83177 | /* 234745 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 83178 | /* 234749 */ // (strict_fsqrt:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src) => (VSQRTPDYr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src) |
| 83179 | /* 234749 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDYr), |
| 83180 | /* 234754 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83181 | /* 234758 */ GIR_RootConstrainSelectedInstOperands, |
| 83182 | /* 234759 */ // GIR_Coverage, 2470, |
| 83183 | /* 234759 */ GIR_Done, |
| 83184 | /* 234760 */ // Label 5399: @234760 |
| 83185 | /* 234760 */ GIM_Try, /*On fail goto*//*Label 5400*/ GIMT_Encode4(234787), // Rule ID 12094 // |
| 83186 | /* 234765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 83187 | /* 234768 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 83188 | /* 234772 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 83189 | /* 234776 */ // (strict_fsqrt:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src) => (VSQRTPDZ256r:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src) |
| 83190 | /* 234776 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ256r), |
| 83191 | /* 234781 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83192 | /* 234785 */ GIR_RootConstrainSelectedInstOperands, |
| 83193 | /* 234786 */ // GIR_Coverage, 12094, |
| 83194 | /* 234786 */ GIR_Done, |
| 83195 | /* 234787 */ // Label 5400: @234787 |
| 83196 | /* 234787 */ GIM_Reject, |
| 83197 | /* 234788 */ // Label 5396: @234788 |
| 83198 | /* 234788 */ GIM_Reject, |
| 83199 | /* 234789 */ // Label 5357: @234789 |
| 83200 | /* 234789 */ GIM_Try, /*On fail goto*//*Label 5401*/ GIMT_Encode4(234877), |
| 83201 | /* 234794 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 83202 | /* 234797 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 83203 | /* 234801 */ GIM_Try, /*On fail goto*//*Label 5402*/ GIMT_Encode4(234853), // Rule ID 12014 // |
| 83204 | /* 234806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 83205 | /* 234809 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83206 | /* 234813 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83207 | /* 234817 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83208 | /* 234820 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83209 | /* 234824 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83210 | /* 234828 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83211 | /* 234830 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83212 | /* 234837 */ // (strict_fsqrt:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZ128m:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 83213 | /* 234837 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ128m), |
| 83214 | /* 234840 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83215 | /* 234842 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83216 | /* 234846 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83217 | /* 234851 */ GIR_RootConstrainSelectedInstOperands, |
| 83218 | /* 234852 */ // GIR_Coverage, 12014, |
| 83219 | /* 234852 */ GIR_EraseRootFromParent_Done, |
| 83220 | /* 234853 */ // Label 5402: @234853 |
| 83221 | /* 234853 */ GIM_Try, /*On fail goto*//*Label 5403*/ GIMT_Encode4(234876), // Rule ID 12010 // |
| 83222 | /* 234858 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 83223 | /* 234861 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 83224 | /* 234865 */ // (strict_fsqrt:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src) => (VSQRTPHZ128r:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src) |
| 83225 | /* 234865 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ128r), |
| 83226 | /* 234870 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83227 | /* 234874 */ GIR_RootConstrainSelectedInstOperands, |
| 83228 | /* 234875 */ // GIR_Coverage, 12010, |
| 83229 | /* 234875 */ GIR_Done, |
| 83230 | /* 234876 */ // Label 5403: @234876 |
| 83231 | /* 234876 */ GIM_Reject, |
| 83232 | /* 234877 */ // Label 5401: @234877 |
| 83233 | /* 234877 */ GIM_Reject, |
| 83234 | /* 234878 */ // Label 5358: @234878 |
| 83235 | /* 234878 */ GIM_Try, /*On fail goto*//*Label 5404*/ GIMT_Encode4(235053), |
| 83236 | /* 234883 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 83237 | /* 234886 */ GIM_Try, /*On fail goto*//*Label 5405*/ GIMT_Encode4(234942), // Rule ID 2456 // |
| 83238 | /* 234891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 83239 | /* 234894 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 83240 | /* 234898 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83241 | /* 234902 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83242 | /* 234906 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83243 | /* 234909 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83244 | /* 234913 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83245 | /* 234917 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83246 | /* 234919 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83247 | /* 234926 */ // (strict_fsqrt:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSYm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 83248 | /* 234926 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSYm), |
| 83249 | /* 234929 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83250 | /* 234931 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83251 | /* 234935 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83252 | /* 234940 */ GIR_RootConstrainSelectedInstOperands, |
| 83253 | /* 234941 */ // GIR_Coverage, 2456, |
| 83254 | /* 234941 */ GIR_EraseRootFromParent_Done, |
| 83255 | /* 234942 */ // Label 5405: @234942 |
| 83256 | /* 234942 */ GIM_Try, /*On fail goto*//*Label 5406*/ GIMT_Encode4(234998), // Rule ID 12074 // |
| 83257 | /* 234947 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 83258 | /* 234950 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 83259 | /* 234954 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83260 | /* 234958 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83261 | /* 234962 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83262 | /* 234965 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83263 | /* 234969 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83264 | /* 234973 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83265 | /* 234975 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83266 | /* 234982 */ // (strict_fsqrt:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZ256m:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 83267 | /* 234982 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ256m), |
| 83268 | /* 234985 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83269 | /* 234987 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83270 | /* 234991 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83271 | /* 234996 */ GIR_RootConstrainSelectedInstOperands, |
| 83272 | /* 234997 */ // GIR_Coverage, 12074, |
| 83273 | /* 234997 */ GIR_EraseRootFromParent_Done, |
| 83274 | /* 234998 */ // Label 5406: @234998 |
| 83275 | /* 234998 */ GIM_Try, /*On fail goto*//*Label 5407*/ GIMT_Encode4(235025), // Rule ID 2454 // |
| 83276 | /* 235003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 83277 | /* 235006 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 83278 | /* 235010 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 83279 | /* 235014 */ // (strict_fsqrt:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src) => (VSQRTPSYr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src) |
| 83280 | /* 235014 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSYr), |
| 83281 | /* 235019 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83282 | /* 235023 */ GIR_RootConstrainSelectedInstOperands, |
| 83283 | /* 235024 */ // GIR_Coverage, 2454, |
| 83284 | /* 235024 */ GIR_Done, |
| 83285 | /* 235025 */ // Label 5407: @235025 |
| 83286 | /* 235025 */ GIM_Try, /*On fail goto*//*Label 5408*/ GIMT_Encode4(235052), // Rule ID 12070 // |
| 83287 | /* 235030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 83288 | /* 235033 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 83289 | /* 235037 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 83290 | /* 235041 */ // (strict_fsqrt:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src) => (VSQRTPSZ256r:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src) |
| 83291 | /* 235041 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ256r), |
| 83292 | /* 235046 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83293 | /* 235050 */ GIR_RootConstrainSelectedInstOperands, |
| 83294 | /* 235051 */ // GIR_Coverage, 12070, |
| 83295 | /* 235051 */ GIR_Done, |
| 83296 | /* 235052 */ // Label 5408: @235052 |
| 83297 | /* 235052 */ GIM_Reject, |
| 83298 | /* 235053 */ // Label 5404: @235053 |
| 83299 | /* 235053 */ GIM_Reject, |
| 83300 | /* 235054 */ // Label 5359: @235054 |
| 83301 | /* 235054 */ GIM_Try, /*On fail goto*//*Label 5409*/ GIMT_Encode4(235142), |
| 83302 | /* 235059 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 83303 | /* 235062 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 83304 | /* 235066 */ GIM_Try, /*On fail goto*//*Label 5410*/ GIMT_Encode4(235118), // Rule ID 12050 // |
| 83305 | /* 235071 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 83306 | /* 235074 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83307 | /* 235078 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83308 | /* 235082 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83309 | /* 235085 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83310 | /* 235089 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83311 | /* 235093 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83312 | /* 235095 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83313 | /* 235102 */ // (strict_fsqrt:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 83314 | /* 235102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZm), |
| 83315 | /* 235105 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83316 | /* 235107 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83317 | /* 235111 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83318 | /* 235116 */ GIR_RootConstrainSelectedInstOperands, |
| 83319 | /* 235117 */ // GIR_Coverage, 12050, |
| 83320 | /* 235117 */ GIR_EraseRootFromParent_Done, |
| 83321 | /* 235118 */ // Label 5410: @235118 |
| 83322 | /* 235118 */ GIM_Try, /*On fail goto*//*Label 5411*/ GIMT_Encode4(235141), // Rule ID 12046 // |
| 83323 | /* 235123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 83324 | /* 235126 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 83325 | /* 235130 */ // (strict_fsqrt:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src) => (VSQRTPDZr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src) |
| 83326 | /* 235130 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZr), |
| 83327 | /* 235135 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83328 | /* 235139 */ GIR_RootConstrainSelectedInstOperands, |
| 83329 | /* 235140 */ // GIR_Coverage, 12046, |
| 83330 | /* 235140 */ GIR_Done, |
| 83331 | /* 235141 */ // Label 5411: @235141 |
| 83332 | /* 235141 */ GIM_Reject, |
| 83333 | /* 235142 */ // Label 5409: @235142 |
| 83334 | /* 235142 */ GIM_Reject, |
| 83335 | /* 235143 */ // Label 5360: @235143 |
| 83336 | /* 235143 */ GIM_Try, /*On fail goto*//*Label 5412*/ GIMT_Encode4(235231), |
| 83337 | /* 235148 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 83338 | /* 235151 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 83339 | /* 235155 */ GIM_Try, /*On fail goto*//*Label 5413*/ GIMT_Encode4(235207), // Rule ID 12026 // |
| 83340 | /* 235160 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 83341 | /* 235163 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83342 | /* 235167 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83343 | /* 235171 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83344 | /* 235174 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83345 | /* 235178 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83346 | /* 235182 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83347 | /* 235184 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83348 | /* 235191 */ // (strict_fsqrt:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZ256m:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 83349 | /* 235191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ256m), |
| 83350 | /* 235194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83351 | /* 235196 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83352 | /* 235200 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83353 | /* 235205 */ GIR_RootConstrainSelectedInstOperands, |
| 83354 | /* 235206 */ // GIR_Coverage, 12026, |
| 83355 | /* 235206 */ GIR_EraseRootFromParent_Done, |
| 83356 | /* 235207 */ // Label 5413: @235207 |
| 83357 | /* 235207 */ GIM_Try, /*On fail goto*//*Label 5414*/ GIMT_Encode4(235230), // Rule ID 12022 // |
| 83358 | /* 235212 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 83359 | /* 235215 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 83360 | /* 235219 */ // (strict_fsqrt:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src) => (VSQRTPHZ256r:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src) |
| 83361 | /* 235219 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ256r), |
| 83362 | /* 235224 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83363 | /* 235228 */ GIR_RootConstrainSelectedInstOperands, |
| 83364 | /* 235229 */ // GIR_Coverage, 12022, |
| 83365 | /* 235229 */ GIR_Done, |
| 83366 | /* 235230 */ // Label 5414: @235230 |
| 83367 | /* 235230 */ GIM_Reject, |
| 83368 | /* 235231 */ // Label 5412: @235231 |
| 83369 | /* 235231 */ GIM_Reject, |
| 83370 | /* 235232 */ // Label 5361: @235232 |
| 83371 | /* 235232 */ GIM_Try, /*On fail goto*//*Label 5415*/ GIMT_Encode4(235320), |
| 83372 | /* 235237 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 83373 | /* 235240 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 83374 | /* 235244 */ GIM_Try, /*On fail goto*//*Label 5416*/ GIMT_Encode4(235296), // Rule ID 12038 // |
| 83375 | /* 235249 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 83376 | /* 235252 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83377 | /* 235256 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83378 | /* 235260 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83379 | /* 235263 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83380 | /* 235267 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83381 | /* 235271 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83382 | /* 235273 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83383 | /* 235280 */ // (strict_fsqrt:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 83384 | /* 235280 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZm), |
| 83385 | /* 235283 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83386 | /* 235285 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83387 | /* 235289 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83388 | /* 235294 */ GIR_RootConstrainSelectedInstOperands, |
| 83389 | /* 235295 */ // GIR_Coverage, 12038, |
| 83390 | /* 235295 */ GIR_EraseRootFromParent_Done, |
| 83391 | /* 235296 */ // Label 5416: @235296 |
| 83392 | /* 235296 */ GIM_Try, /*On fail goto*//*Label 5417*/ GIMT_Encode4(235319), // Rule ID 12034 // |
| 83393 | /* 235301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 83394 | /* 235304 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 83395 | /* 235308 */ // (strict_fsqrt:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src) => (VSQRTPSZr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src) |
| 83396 | /* 235308 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZr), |
| 83397 | /* 235313 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83398 | /* 235317 */ GIR_RootConstrainSelectedInstOperands, |
| 83399 | /* 235318 */ // GIR_Coverage, 12034, |
| 83400 | /* 235318 */ GIR_Done, |
| 83401 | /* 235319 */ // Label 5417: @235319 |
| 83402 | /* 235319 */ GIM_Reject, |
| 83403 | /* 235320 */ // Label 5415: @235320 |
| 83404 | /* 235320 */ GIM_Reject, |
| 83405 | /* 235321 */ // Label 5362: @235321 |
| 83406 | /* 235321 */ GIM_Try, /*On fail goto*//*Label 5418*/ GIMT_Encode4(235409), |
| 83407 | /* 235326 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 83408 | /* 235329 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 83409 | /* 235333 */ GIM_Try, /*On fail goto*//*Label 5419*/ GIMT_Encode4(235385), // Rule ID 12002 // |
| 83410 | /* 235338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 83411 | /* 235341 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 83412 | /* 235345 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 83413 | /* 235349 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 83414 | /* 235352 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 83415 | /* 235356 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 83416 | /* 235360 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 83417 | /* 235362 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83418 | /* 235369 */ // (strict_fsqrt:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 83419 | /* 235369 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZm), |
| 83420 | /* 235372 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83421 | /* 235374 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83422 | /* 235378 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 83423 | /* 235383 */ GIR_RootConstrainSelectedInstOperands, |
| 83424 | /* 235384 */ // GIR_Coverage, 12002, |
| 83425 | /* 235384 */ GIR_EraseRootFromParent_Done, |
| 83426 | /* 235385 */ // Label 5419: @235385 |
| 83427 | /* 235385 */ GIM_Try, /*On fail goto*//*Label 5420*/ GIMT_Encode4(235408), // Rule ID 11998 // |
| 83428 | /* 235390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 83429 | /* 235393 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 83430 | /* 235397 */ // (strict_fsqrt:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src) => (VSQRTPHZr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src) |
| 83431 | /* 235397 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZr), |
| 83432 | /* 235402 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 83433 | /* 235406 */ GIR_RootConstrainSelectedInstOperands, |
| 83434 | /* 235407 */ // GIR_Coverage, 11998, |
| 83435 | /* 235407 */ GIR_Done, |
| 83436 | /* 235408 */ // Label 5420: @235408 |
| 83437 | /* 235408 */ GIM_Reject, |
| 83438 | /* 235409 */ // Label 5418: @235409 |
| 83439 | /* 235409 */ GIM_Reject, |
| 83440 | /* 235410 */ // Label 5363: @235410 |
| 83441 | /* 235410 */ GIM_Reject, |
| 83442 | /* 235411 */ // Label 74: @235411 |
| 83443 | /* 235411 */ GIM_Try, /*On fail goto*//*Label 5421*/ GIMT_Encode4(235423), // Rule ID 17074 // |
| 83444 | /* 235416 */ // (trap) => (TRAP) |
| 83445 | /* 235416 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::TRAP), |
| 83446 | /* 235421 */ GIR_RootConstrainSelectedInstOperands, |
| 83447 | /* 235422 */ // GIR_Coverage, 17074, |
| 83448 | /* 235422 */ GIR_Done, |
| 83449 | /* 235423 */ // Label 5421: @235423 |
| 83450 | /* 235423 */ GIM_Reject, |
| 83451 | /* 235424 */ // Label 75: @235424 |
| 83452 | /* 235424 */ GIM_Try, /*On fail goto*//*Label 5422*/ GIMT_Encode4(235439), // Rule ID 22377 // |
| 83453 | /* 235429 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotPS), |
| 83454 | /* 235432 */ // (debugtrap) => (INT3) |
| 83455 | /* 235432 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::INT3), |
| 83456 | /* 235437 */ GIR_RootConstrainSelectedInstOperands, |
| 83457 | /* 235438 */ // GIR_Coverage, 22377, |
| 83458 | /* 235438 */ GIR_Done, |
| 83459 | /* 235439 */ // Label 5422: @235439 |
| 83460 | /* 235439 */ GIM_Try, /*On fail goto*//*Label 5423*/ GIMT_Encode4(235459), // Rule ID 22378 // |
| 83461 | /* 235444 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsPS), |
| 83462 | /* 235447 */ // (debugtrap) => (INT 65:{ *:[i8] }) |
| 83463 | /* 235447 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INT), |
| 83464 | /* 235450 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/65, |
| 83465 | /* 235453 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83466 | /* 235457 */ GIR_RootConstrainSelectedInstOperands, |
| 83467 | /* 235458 */ // GIR_Coverage, 22378, |
| 83468 | /* 235458 */ GIR_EraseRootFromParent_Done, |
| 83469 | /* 235459 */ // Label 5423: @235459 |
| 83470 | /* 235459 */ GIM_Reject, |
| 83471 | /* 235460 */ // Label 76: @235460 |
| 83472 | /* 235460 */ GIM_Try, /*On fail goto*//*Label 5424*/ GIMT_Encode4(235475), // Rule ID 17076 // |
| 83473 | /* 235465 */ // MIs[0] kind |
| 83474 | /* 235465 */ GIM_CheckIsImm, /*MI*/0, /*Op*/0, |
| 83475 | /* 235468 */ // (ubsantrap (timm:{ *:[i32] }):$kind) => (UBSAN_UD1 (timm:{ *:[i32] }):$kind) |
| 83476 | /* 235468 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::UBSAN_UD1), |
| 83477 | /* 235473 */ GIR_RootConstrainSelectedInstOperands, |
| 83478 | /* 235474 */ // GIR_Coverage, 17076, |
| 83479 | /* 235474 */ GIR_Done, |
| 83480 | /* 235475 */ // Label 5424: @235475 |
| 83481 | /* 235475 */ GIM_Reject, |
| 83482 | /* 235476 */ // Label 77: @235476 |
| 83483 | /* 235476 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(6), /*)*//*default:*//*Label 5428*/ GIMT_Encode4(235934), |
| 83484 | /* 235487 */ /*GILLT_s32*//*Label 5425*/ GIMT_Encode4(235499), |
| 83485 | /* 235491 */ /*GILLT_s64*//*Label 5426*/ GIMT_Encode4(235644), |
| 83486 | /* 235495 */ /*GILLT_s80*//*Label 5427*/ GIMT_Encode4(235789), |
| 83487 | /* 235499 */ // Label 5425: @235499 |
| 83488 | /* 235499 */ GIM_Try, /*On fail goto*//*Label 5429*/ GIMT_Encode4(235547), // Rule ID 1086 // |
| 83489 | /* 235504 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 83490 | /* 235507 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83491 | /* 235514 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83492 | /* 235518 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83493 | /* 235522 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83494 | /* 235529 */ // (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild16>> => (ILD_Fp16m32:{ *:[f32] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83495 | /* 235529 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp16m32), |
| 83496 | /* 235532 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83497 | /* 235534 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83498 | /* 235538 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83499 | /* 235541 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83500 | /* 235545 */ GIR_RootConstrainSelectedInstOperands, |
| 83501 | /* 235546 */ // GIR_Coverage, 1086, |
| 83502 | /* 235546 */ GIR_EraseRootFromParent_Done, |
| 83503 | /* 235547 */ // Label 5429: @235547 |
| 83504 | /* 235547 */ GIM_Try, /*On fail goto*//*Label 5430*/ GIMT_Encode4(235595), // Rule ID 1087 // |
| 83505 | /* 235552 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 83506 | /* 235555 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83507 | /* 235562 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83508 | /* 235566 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83509 | /* 235570 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83510 | /* 235577 */ // (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild32>> => (ILD_Fp32m32:{ *:[f32] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83511 | /* 235577 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp32m32), |
| 83512 | /* 235580 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83513 | /* 235582 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83514 | /* 235586 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83515 | /* 235589 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83516 | /* 235593 */ GIR_RootConstrainSelectedInstOperands, |
| 83517 | /* 235594 */ // GIR_Coverage, 1087, |
| 83518 | /* 235594 */ GIR_EraseRootFromParent_Done, |
| 83519 | /* 235595 */ // Label 5430: @235595 |
| 83520 | /* 235595 */ GIM_Try, /*On fail goto*//*Label 5431*/ GIMT_Encode4(235643), // Rule ID 1088 // |
| 83521 | /* 235600 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 83522 | /* 235603 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83523 | /* 235610 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83524 | /* 235614 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83525 | /* 235618 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83526 | /* 235625 */ // (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild64>> => (ILD_Fp64m32:{ *:[f32] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83527 | /* 235625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp64m32), |
| 83528 | /* 235628 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83529 | /* 235630 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83530 | /* 235634 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83531 | /* 235637 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83532 | /* 235641 */ GIR_RootConstrainSelectedInstOperands, |
| 83533 | /* 235642 */ // GIR_Coverage, 1088, |
| 83534 | /* 235642 */ GIR_EraseRootFromParent_Done, |
| 83535 | /* 235643 */ // Label 5431: @235643 |
| 83536 | /* 235643 */ GIM_Reject, |
| 83537 | /* 235644 */ // Label 5426: @235644 |
| 83538 | /* 235644 */ GIM_Try, /*On fail goto*//*Label 5432*/ GIMT_Encode4(235692), // Rule ID 1089 // |
| 83539 | /* 235649 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 83540 | /* 235652 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83541 | /* 235659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83542 | /* 235663 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83543 | /* 235667 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83544 | /* 235674 */ // (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild16>> => (ILD_Fp16m64:{ *:[f64] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83545 | /* 235674 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp16m64), |
| 83546 | /* 235677 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83547 | /* 235679 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83548 | /* 235683 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83549 | /* 235686 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83550 | /* 235690 */ GIR_RootConstrainSelectedInstOperands, |
| 83551 | /* 235691 */ // GIR_Coverage, 1089, |
| 83552 | /* 235691 */ GIR_EraseRootFromParent_Done, |
| 83553 | /* 235692 */ // Label 5432: @235692 |
| 83554 | /* 235692 */ GIM_Try, /*On fail goto*//*Label 5433*/ GIMT_Encode4(235740), // Rule ID 1090 // |
| 83555 | /* 235697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 83556 | /* 235700 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83557 | /* 235707 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83558 | /* 235711 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83559 | /* 235715 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83560 | /* 235722 */ // (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild32>> => (ILD_Fp32m64:{ *:[f64] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83561 | /* 235722 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp32m64), |
| 83562 | /* 235725 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83563 | /* 235727 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83564 | /* 235731 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83565 | /* 235734 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83566 | /* 235738 */ GIR_RootConstrainSelectedInstOperands, |
| 83567 | /* 235739 */ // GIR_Coverage, 1090, |
| 83568 | /* 235739 */ GIR_EraseRootFromParent_Done, |
| 83569 | /* 235740 */ // Label 5433: @235740 |
| 83570 | /* 235740 */ GIM_Try, /*On fail goto*//*Label 5434*/ GIMT_Encode4(235788), // Rule ID 1091 // |
| 83571 | /* 235745 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 83572 | /* 235748 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83573 | /* 235755 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83574 | /* 235759 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83575 | /* 235763 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83576 | /* 235770 */ // (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild64>> => (ILD_Fp64m64:{ *:[f64] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83577 | /* 235770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp64m64), |
| 83578 | /* 235773 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83579 | /* 235775 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83580 | /* 235779 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83581 | /* 235782 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83582 | /* 235786 */ GIR_RootConstrainSelectedInstOperands, |
| 83583 | /* 235787 */ // GIR_Coverage, 1091, |
| 83584 | /* 235787 */ GIR_EraseRootFromParent_Done, |
| 83585 | /* 235788 */ // Label 5434: @235788 |
| 83586 | /* 235788 */ GIM_Reject, |
| 83587 | /* 235789 */ // Label 5427: @235789 |
| 83588 | /* 235789 */ GIM_Try, /*On fail goto*//*Label 5435*/ GIMT_Encode4(235837), // Rule ID 1092 // |
| 83589 | /* 235794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 83590 | /* 235797 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83591 | /* 235804 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83592 | /* 235808 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83593 | /* 235812 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83594 | /* 235819 */ // (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild16>> => (ILD_Fp16m80:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83595 | /* 235819 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp16m80), |
| 83596 | /* 235822 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83597 | /* 235824 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83598 | /* 235828 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83599 | /* 235831 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83600 | /* 235835 */ GIR_RootConstrainSelectedInstOperands, |
| 83601 | /* 235836 */ // GIR_Coverage, 1092, |
| 83602 | /* 235836 */ GIR_EraseRootFromParent_Done, |
| 83603 | /* 235837 */ // Label 5435: @235837 |
| 83604 | /* 235837 */ GIM_Try, /*On fail goto*//*Label 5436*/ GIMT_Encode4(235885), // Rule ID 1093 // |
| 83605 | /* 235842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 83606 | /* 235845 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83607 | /* 235852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83608 | /* 235856 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83609 | /* 235860 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83610 | /* 235867 */ // (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild32>> => (ILD_Fp32m80:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83611 | /* 235867 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp32m80), |
| 83612 | /* 235870 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83613 | /* 235872 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83614 | /* 235876 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83615 | /* 235879 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83616 | /* 235883 */ GIR_RootConstrainSelectedInstOperands, |
| 83617 | /* 235884 */ // GIR_Coverage, 1093, |
| 83618 | /* 235884 */ GIR_EraseRootFromParent_Done, |
| 83619 | /* 235885 */ // Label 5436: @235885 |
| 83620 | /* 235885 */ GIM_Try, /*On fail goto*//*Label 5437*/ GIMT_Encode4(235933), // Rule ID 1094 // |
| 83621 | /* 235890 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 83622 | /* 235893 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83623 | /* 235900 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83624 | /* 235904 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83625 | /* 235908 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83626 | /* 235915 */ // (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild64>> => (ILD_Fp64m80:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83627 | /* 235915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp64m80), |
| 83628 | /* 235918 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83629 | /* 235920 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83630 | /* 235924 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83631 | /* 235927 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83632 | /* 235931 */ GIR_RootConstrainSelectedInstOperands, |
| 83633 | /* 235932 */ // GIR_Coverage, 1094, |
| 83634 | /* 235932 */ GIR_EraseRootFromParent_Done, |
| 83635 | /* 235933 */ // Label 5437: @235933 |
| 83636 | /* 235933 */ GIM_Reject, |
| 83637 | /* 235934 */ // Label 5428: @235934 |
| 83638 | /* 235934 */ GIM_Reject, |
| 83639 | /* 235935 */ // Label 78: @235935 |
| 83640 | /* 235935 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(6), /*)*//*default:*//*Label 5441*/ GIMT_Encode4(236798), |
| 83641 | /* 235946 */ /*GILLT_s32*//*Label 5438*/ GIMT_Encode4(235958), |
| 83642 | /* 235950 */ /*GILLT_s64*//*Label 5439*/ GIMT_Encode4(236238), |
| 83643 | /* 235954 */ /*GILLT_s80*//*Label 5440*/ GIMT_Encode4(236518), |
| 83644 | /* 235958 */ // Label 5438: @235958 |
| 83645 | /* 235958 */ GIM_Try, /*On fail goto*//*Label 5442*/ GIMT_Encode4(236003), // Rule ID 873 // |
| 83646 | /* 235963 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83647 | /* 235970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83648 | /* 235974 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83649 | /* 235978 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83650 | /* 235985 */ // (X86fp_to_mem RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_X86fp_to_i16mem>> => (FP32_TO_INT16_IN_MEM:{ *:[i32] } addr:{ *:[iPTR] }:$dst, RFP32:{ *:[f32] }:$src) |
| 83651 | /* 235985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP32_TO_INT16_IN_MEM), |
| 83652 | /* 235988 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83653 | /* 235992 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83654 | /* 235994 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83655 | /* 235997 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83656 | /* 236001 */ GIR_RootConstrainSelectedInstOperands, |
| 83657 | /* 236002 */ // GIR_Coverage, 873, |
| 83658 | /* 236002 */ GIR_EraseRootFromParent_Done, |
| 83659 | /* 236003 */ // Label 5442: @236003 |
| 83660 | /* 236003 */ GIM_Try, /*On fail goto*//*Label 5443*/ GIMT_Encode4(236048), // Rule ID 874 // |
| 83661 | /* 236008 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83662 | /* 236015 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83663 | /* 236019 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83664 | /* 236023 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83665 | /* 236030 */ // (X86fp_to_mem RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_X86fp_to_i32mem>> => (FP32_TO_INT32_IN_MEM:{ *:[i32] } addr:{ *:[iPTR] }:$dst, RFP32:{ *:[f32] }:$src) |
| 83666 | /* 236030 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP32_TO_INT32_IN_MEM), |
| 83667 | /* 236033 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83668 | /* 236037 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83669 | /* 236039 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83670 | /* 236042 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83671 | /* 236046 */ GIR_RootConstrainSelectedInstOperands, |
| 83672 | /* 236047 */ // GIR_Coverage, 874, |
| 83673 | /* 236047 */ GIR_EraseRootFromParent_Done, |
| 83674 | /* 236048 */ // Label 5443: @236048 |
| 83675 | /* 236048 */ GIM_Try, /*On fail goto*//*Label 5444*/ GIMT_Encode4(236093), // Rule ID 875 // |
| 83676 | /* 236053 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83677 | /* 236060 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83678 | /* 236064 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83679 | /* 236068 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83680 | /* 236075 */ // (X86fp_to_mem RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_X86fp_to_i64mem>> => (FP32_TO_INT64_IN_MEM:{ *:[i32] } addr:{ *:[iPTR] }:$dst, RFP32:{ *:[f32] }:$src) |
| 83681 | /* 236075 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP32_TO_INT64_IN_MEM), |
| 83682 | /* 236078 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83683 | /* 236082 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83684 | /* 236084 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83685 | /* 236087 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83686 | /* 236091 */ GIR_RootConstrainSelectedInstOperands, |
| 83687 | /* 236092 */ // GIR_Coverage, 875, |
| 83688 | /* 236092 */ GIR_EraseRootFromParent_Done, |
| 83689 | /* 236093 */ // Label 5444: @236093 |
| 83690 | /* 236093 */ GIM_Try, /*On fail goto*//*Label 5445*/ GIMT_Encode4(236141), // Rule ID 1107 // |
| 83691 | /* 236098 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83692 | /* 236101 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83693 | /* 236108 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83694 | /* 236112 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83695 | /* 236116 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83696 | /* 236123 */ // (X86fp_to_mem RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i16mem>> => (ISTT_Fp16m32:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP32:{ *:[f32] }:$src) |
| 83697 | /* 236123 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp16m32), |
| 83698 | /* 236126 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83699 | /* 236130 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83700 | /* 236132 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83701 | /* 236135 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83702 | /* 236139 */ GIR_RootConstrainSelectedInstOperands, |
| 83703 | /* 236140 */ // GIR_Coverage, 1107, |
| 83704 | /* 236140 */ GIR_EraseRootFromParent_Done, |
| 83705 | /* 236141 */ // Label 5445: @236141 |
| 83706 | /* 236141 */ GIM_Try, /*On fail goto*//*Label 5446*/ GIMT_Encode4(236189), // Rule ID 1108 // |
| 83707 | /* 236146 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83708 | /* 236149 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83709 | /* 236156 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83710 | /* 236160 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83711 | /* 236164 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83712 | /* 236171 */ // (X86fp_to_mem RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i32mem>> => (ISTT_Fp32m32:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP32:{ *:[f32] }:$src) |
| 83713 | /* 236171 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp32m32), |
| 83714 | /* 236174 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83715 | /* 236178 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83716 | /* 236180 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83717 | /* 236183 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83718 | /* 236187 */ GIR_RootConstrainSelectedInstOperands, |
| 83719 | /* 236188 */ // GIR_Coverage, 1108, |
| 83720 | /* 236188 */ GIR_EraseRootFromParent_Done, |
| 83721 | /* 236189 */ // Label 5446: @236189 |
| 83722 | /* 236189 */ GIM_Try, /*On fail goto*//*Label 5447*/ GIMT_Encode4(236237), // Rule ID 1109 // |
| 83723 | /* 236194 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83724 | /* 236197 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83725 | /* 236204 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83726 | /* 236208 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83727 | /* 236212 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83728 | /* 236219 */ // (X86fp_to_mem RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i64mem>> => (ISTT_Fp64m32:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP32:{ *:[f32] }:$src) |
| 83729 | /* 236219 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp64m32), |
| 83730 | /* 236222 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83731 | /* 236226 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83732 | /* 236228 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83733 | /* 236231 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83734 | /* 236235 */ GIR_RootConstrainSelectedInstOperands, |
| 83735 | /* 236236 */ // GIR_Coverage, 1109, |
| 83736 | /* 236236 */ GIR_EraseRootFromParent_Done, |
| 83737 | /* 236237 */ // Label 5447: @236237 |
| 83738 | /* 236237 */ GIM_Reject, |
| 83739 | /* 236238 */ // Label 5439: @236238 |
| 83740 | /* 236238 */ GIM_Try, /*On fail goto*//*Label 5448*/ GIMT_Encode4(236283), // Rule ID 876 // |
| 83741 | /* 236243 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83742 | /* 236250 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83743 | /* 236254 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83744 | /* 236258 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83745 | /* 236265 */ // (X86fp_to_mem RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_X86fp_to_i16mem>> => (FP64_TO_INT16_IN_MEM:{ *:[i32] } addr:{ *:[iPTR] }:$dst, RFP64:{ *:[f64] }:$src) |
| 83746 | /* 236265 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP64_TO_INT16_IN_MEM), |
| 83747 | /* 236268 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83748 | /* 236272 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83749 | /* 236274 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83750 | /* 236277 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83751 | /* 236281 */ GIR_RootConstrainSelectedInstOperands, |
| 83752 | /* 236282 */ // GIR_Coverage, 876, |
| 83753 | /* 236282 */ GIR_EraseRootFromParent_Done, |
| 83754 | /* 236283 */ // Label 5448: @236283 |
| 83755 | /* 236283 */ GIM_Try, /*On fail goto*//*Label 5449*/ GIMT_Encode4(236328), // Rule ID 877 // |
| 83756 | /* 236288 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83757 | /* 236295 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83758 | /* 236299 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83759 | /* 236303 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83760 | /* 236310 */ // (X86fp_to_mem RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_X86fp_to_i32mem>> => (FP64_TO_INT32_IN_MEM:{ *:[i32] } addr:{ *:[iPTR] }:$dst, RFP64:{ *:[f64] }:$src) |
| 83761 | /* 236310 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP64_TO_INT32_IN_MEM), |
| 83762 | /* 236313 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83763 | /* 236317 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83764 | /* 236319 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83765 | /* 236322 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83766 | /* 236326 */ GIR_RootConstrainSelectedInstOperands, |
| 83767 | /* 236327 */ // GIR_Coverage, 877, |
| 83768 | /* 236327 */ GIR_EraseRootFromParent_Done, |
| 83769 | /* 236328 */ // Label 5449: @236328 |
| 83770 | /* 236328 */ GIM_Try, /*On fail goto*//*Label 5450*/ GIMT_Encode4(236373), // Rule ID 878 // |
| 83771 | /* 236333 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83772 | /* 236340 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83773 | /* 236344 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83774 | /* 236348 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83775 | /* 236355 */ // (X86fp_to_mem RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_X86fp_to_i64mem>> => (FP64_TO_INT64_IN_MEM:{ *:[i32] } addr:{ *:[iPTR] }:$dst, RFP64:{ *:[f64] }:$src) |
| 83776 | /* 236355 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP64_TO_INT64_IN_MEM), |
| 83777 | /* 236358 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83778 | /* 236362 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83779 | /* 236364 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83780 | /* 236367 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83781 | /* 236371 */ GIR_RootConstrainSelectedInstOperands, |
| 83782 | /* 236372 */ // GIR_Coverage, 878, |
| 83783 | /* 236372 */ GIR_EraseRootFromParent_Done, |
| 83784 | /* 236373 */ // Label 5450: @236373 |
| 83785 | /* 236373 */ GIM_Try, /*On fail goto*//*Label 5451*/ GIMT_Encode4(236421), // Rule ID 1110 // |
| 83786 | /* 236378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83787 | /* 236381 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83788 | /* 236388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83789 | /* 236392 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83790 | /* 236396 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83791 | /* 236403 */ // (X86fp_to_mem RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i16mem>> => (ISTT_Fp16m64:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP64:{ *:[f64] }:$src) |
| 83792 | /* 236403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp16m64), |
| 83793 | /* 236406 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83794 | /* 236410 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83795 | /* 236412 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83796 | /* 236415 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83797 | /* 236419 */ GIR_RootConstrainSelectedInstOperands, |
| 83798 | /* 236420 */ // GIR_Coverage, 1110, |
| 83799 | /* 236420 */ GIR_EraseRootFromParent_Done, |
| 83800 | /* 236421 */ // Label 5451: @236421 |
| 83801 | /* 236421 */ GIM_Try, /*On fail goto*//*Label 5452*/ GIMT_Encode4(236469), // Rule ID 1111 // |
| 83802 | /* 236426 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83803 | /* 236429 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83804 | /* 236436 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83805 | /* 236440 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83806 | /* 236444 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83807 | /* 236451 */ // (X86fp_to_mem RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i32mem>> => (ISTT_Fp32m64:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP64:{ *:[f64] }:$src) |
| 83808 | /* 236451 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp32m64), |
| 83809 | /* 236454 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83810 | /* 236458 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83811 | /* 236460 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83812 | /* 236463 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83813 | /* 236467 */ GIR_RootConstrainSelectedInstOperands, |
| 83814 | /* 236468 */ // GIR_Coverage, 1111, |
| 83815 | /* 236468 */ GIR_EraseRootFromParent_Done, |
| 83816 | /* 236469 */ // Label 5452: @236469 |
| 83817 | /* 236469 */ GIM_Try, /*On fail goto*//*Label 5453*/ GIMT_Encode4(236517), // Rule ID 1112 // |
| 83818 | /* 236474 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83819 | /* 236477 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83820 | /* 236484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83821 | /* 236488 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83822 | /* 236492 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83823 | /* 236499 */ // (X86fp_to_mem RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i64mem>> => (ISTT_Fp64m64:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP64:{ *:[f64] }:$src) |
| 83824 | /* 236499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp64m64), |
| 83825 | /* 236502 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83826 | /* 236506 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83827 | /* 236508 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83828 | /* 236511 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83829 | /* 236515 */ GIR_RootConstrainSelectedInstOperands, |
| 83830 | /* 236516 */ // GIR_Coverage, 1112, |
| 83831 | /* 236516 */ GIR_EraseRootFromParent_Done, |
| 83832 | /* 236517 */ // Label 5453: @236517 |
| 83833 | /* 236517 */ GIM_Reject, |
| 83834 | /* 236518 */ // Label 5440: @236518 |
| 83835 | /* 236518 */ GIM_Try, /*On fail goto*//*Label 5454*/ GIMT_Encode4(236563), // Rule ID 879 // |
| 83836 | /* 236523 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83837 | /* 236530 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83838 | /* 236534 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83839 | /* 236538 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83840 | /* 236545 */ // (X86fp_to_mem RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_X86fp_to_i16mem>> => (FP80_TO_INT16_IN_MEM:{ *:[i32] } addr:{ *:[iPTR] }:$dst, RFP80:{ *:[f80] }:$src) |
| 83841 | /* 236545 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP80_TO_INT16_IN_MEM), |
| 83842 | /* 236548 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83843 | /* 236552 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83844 | /* 236554 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83845 | /* 236557 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83846 | /* 236561 */ GIR_RootConstrainSelectedInstOperands, |
| 83847 | /* 236562 */ // GIR_Coverage, 879, |
| 83848 | /* 236562 */ GIR_EraseRootFromParent_Done, |
| 83849 | /* 236563 */ // Label 5454: @236563 |
| 83850 | /* 236563 */ GIM_Try, /*On fail goto*//*Label 5455*/ GIMT_Encode4(236608), // Rule ID 880 // |
| 83851 | /* 236568 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83852 | /* 236575 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83853 | /* 236579 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83854 | /* 236583 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83855 | /* 236590 */ // (X86fp_to_mem RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_X86fp_to_i32mem>> => (FP80_TO_INT32_IN_MEM:{ *:[i32] } addr:{ *:[iPTR] }:$dst, RFP80:{ *:[f80] }:$src) |
| 83856 | /* 236590 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP80_TO_INT32_IN_MEM), |
| 83857 | /* 236593 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83858 | /* 236597 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83859 | /* 236599 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83860 | /* 236602 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83861 | /* 236606 */ GIR_RootConstrainSelectedInstOperands, |
| 83862 | /* 236607 */ // GIR_Coverage, 880, |
| 83863 | /* 236607 */ GIR_EraseRootFromParent_Done, |
| 83864 | /* 236608 */ // Label 5455: @236608 |
| 83865 | /* 236608 */ GIM_Try, /*On fail goto*//*Label 5456*/ GIMT_Encode4(236653), // Rule ID 881 // |
| 83866 | /* 236613 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83867 | /* 236620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83868 | /* 236624 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83869 | /* 236628 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83870 | /* 236635 */ // (X86fp_to_mem RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_X86fp_to_i64mem>> => (FP80_TO_INT64_IN_MEM:{ *:[i32] } addr:{ *:[iPTR] }:$dst, RFP80:{ *:[f80] }:$src) |
| 83871 | /* 236635 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP80_TO_INT64_IN_MEM), |
| 83872 | /* 236638 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83873 | /* 236642 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83874 | /* 236644 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83875 | /* 236647 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83876 | /* 236651 */ GIR_RootConstrainSelectedInstOperands, |
| 83877 | /* 236652 */ // GIR_Coverage, 881, |
| 83878 | /* 236652 */ GIR_EraseRootFromParent_Done, |
| 83879 | /* 236653 */ // Label 5456: @236653 |
| 83880 | /* 236653 */ GIM_Try, /*On fail goto*//*Label 5457*/ GIMT_Encode4(236701), // Rule ID 1113 // |
| 83881 | /* 236658 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83882 | /* 236661 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83883 | /* 236668 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83884 | /* 236672 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83885 | /* 236676 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83886 | /* 236683 */ // (X86fp_to_mem RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i16mem>> => (ISTT_Fp16m80:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP80:{ *:[f80] }:$src) |
| 83887 | /* 236683 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp16m80), |
| 83888 | /* 236686 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83889 | /* 236690 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83890 | /* 236692 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83891 | /* 236695 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83892 | /* 236699 */ GIR_RootConstrainSelectedInstOperands, |
| 83893 | /* 236700 */ // GIR_Coverage, 1113, |
| 83894 | /* 236700 */ GIR_EraseRootFromParent_Done, |
| 83895 | /* 236701 */ // Label 5457: @236701 |
| 83896 | /* 236701 */ GIM_Try, /*On fail goto*//*Label 5458*/ GIMT_Encode4(236749), // Rule ID 1114 // |
| 83897 | /* 236706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83898 | /* 236709 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83899 | /* 236716 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83900 | /* 236720 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83901 | /* 236724 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83902 | /* 236731 */ // (X86fp_to_mem RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i32mem>> => (ISTT_Fp32m80:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP80:{ *:[f80] }:$src) |
| 83903 | /* 236731 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp32m80), |
| 83904 | /* 236734 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83905 | /* 236738 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83906 | /* 236740 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83907 | /* 236743 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83908 | /* 236747 */ GIR_RootConstrainSelectedInstOperands, |
| 83909 | /* 236748 */ // GIR_Coverage, 1114, |
| 83910 | /* 236748 */ GIR_EraseRootFromParent_Done, |
| 83911 | /* 236749 */ // Label 5458: @236749 |
| 83912 | /* 236749 */ GIM_Try, /*On fail goto*//*Label 5459*/ GIMT_Encode4(236797), // Rule ID 1115 // |
| 83913 | /* 236754 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83914 | /* 236757 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83915 | /* 236764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83916 | /* 236768 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83917 | /* 236772 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83918 | /* 236779 */ // (X86fp_to_mem RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i64mem>> => (ISTT_Fp64m80:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP80:{ *:[f80] }:$src) |
| 83919 | /* 236779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp64m80), |
| 83920 | /* 236782 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83921 | /* 236786 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83922 | /* 236788 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83923 | /* 236791 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83924 | /* 236795 */ GIR_RootConstrainSelectedInstOperands, |
| 83925 | /* 236796 */ // GIR_Coverage, 1115, |
| 83926 | /* 236796 */ GIR_EraseRootFromParent_Done, |
| 83927 | /* 236797 */ // Label 5459: @236797 |
| 83928 | /* 236797 */ GIM_Reject, |
| 83929 | /* 236798 */ // Label 5441: @236798 |
| 83930 | /* 236798 */ GIM_Reject, |
| 83931 | /* 236799 */ // Label 79: @236799 |
| 83932 | /* 236799 */ GIM_Reject, |
| 83933 | /* 236800 */ }; // Size: 236800 bytes |
| 83934 | return MatchTable0; |
| 83935 | } |
| 83936 | #undef GIMT_Encode2 |
| 83937 | #undef GIMT_Encode4 |
| 83938 | #undef GIMT_Encode8 |
| 83939 | |
| 83940 | #endif // ifdef GET_GLOBALISEL_IMPL |
| 83941 | |
| 83942 | #ifdef GET_GLOBALISEL_PREDICATES_DECL |
| 83943 | PredicateBitset AvailableModuleFeatures; |
| 83944 | mutable PredicateBitset AvailableFunctionFeatures; |
| 83945 | PredicateBitset getAvailableFeatures() const { |
| 83946 | return AvailableModuleFeatures | AvailableFunctionFeatures; |
| 83947 | } |
| 83948 | PredicateBitset |
| 83949 | computeAvailableModuleFeatures(const X86Subtarget *Subtarget) const; |
| 83950 | PredicateBitset |
| 83951 | computeAvailableFunctionFeatures(const X86Subtarget *Subtarget, |
| 83952 | const MachineFunction *MF) const; |
| 83953 | void setupGeneratedPerFunctionState(MachineFunction &MF) override; |
| 83954 | #endif // ifdef GET_GLOBALISEL_PREDICATES_DECL |
| 83955 | #ifdef GET_GLOBALISEL_PREDICATES_INIT |
| 83956 | AvailableModuleFeatures(computeAvailableModuleFeatures(&STI)), |
| 83957 | AvailableFunctionFeatures() |
| 83958 | #endif // ifdef GET_GLOBALISEL_PREDICATES_INIT |
| 83959 | |